Synchronization, coherence, and event ordering in multiprocessors

  title={Synchronization, coherence, and event ordering in multiprocessors},
  author={Michel Dubois and Christoph Scheurich and Faye A. Briggs},
The problems addressed apply to both throughput-oriented and speedup-oriented multiprocessor systems, either at the user level or the operating-system level. basic definitions are provided. Communication and synchronization are briefly explained, and hardware-level and software-level synchronization mechanisms are discussed. The cache coherence problem is examined, and solutions are described. Strong and weak ordering of events is considered. The user interface is discussed.<<ETX>> 

Figures and Tables from this paper

Real-time synchronization protocols for shared memory multiprocessors

  • R. Rajkumar
  • Computer Science
    Proceedings.,10th International Conference on Distributed Computing Systems
  • 1990
A priority-based synchronization protocol that explicitly uses shared-memory primitives is defined and analyzed, and the underlying priority consideration for a shared memory synchronization protocol are studied and priority assignments to be used by the protocol are derived.

Implementing Locks in Distributed-Memory Multiprocessors

Synchronization between cooperating processes in a uniprocessor system has been investigated for many years, and exclusive access in critical sections of a program must be guaranteed, which requires support in the three major system levels.

Memory Access Dependencies in Shared-Memory Multiprocessors

The problem of implementing a given logical concurrency model in such a multiprocessor is addressed, and simple rules are introduced to verify that a multip rocessor architecture adheres to the models.

Design and lmplementation of a Multi-Cache System on a Loosely Coupled Multiprocessor

  • B. Rochat
  • Computer Science
    Proceedings of the Fifth Distributed Memory Computing Conference, 1990.
  • 1990
This paper explores the design and implementation of a generalized virtual memory and emphasizes data sharing management in loosely coupled multiprocessor memory hierarchy.

Synchronization with multiprocessor caches

  • Joonwon LeeU. Ramachandran
  • Computer Science
    [1990] Proceedings. The 17th Annual International Symposium on Computer Architecture
  • 1990
A new lock-based cache scheme which incorporates synchronization into the cache coherency mechanism is presented and it is shown that that authors' lock- based protocol outperforms existing cache protocols.

Hardware approaches to cache coherence in shared-memory multiprocessors. 2

The coherence problem in multilevel cache hierarchies and large-scale, shared-memory multiprocessors and the principles of the two major groups of hardware protocols are discussed and relevant representatives are summarized.

The multiprocessor system with a fairly weighted global bus arbitration circuit

It is shown that the addition of loosely coupled system features like private input-output devices and large local memories on a tightly coupled system exhibit characteristics such as high reliability and availability, ease of expansion, easeof programming, economy, and significantly higher performance over a comparable class of uniprocessor systems.

Notification and Multicast Networks for Synchronization and Coherence

Architecture, design, and performance of Application System/400 (AS/400) multiprocessors

The paper describes how this multitasking system, originally designed as a uniprocessor system, was modified to form a multiprocessors system, using relatively atomic Instructions, required a minimum of change while providing significant performance gains.

Cache Architectures in Tightly Coupled Multiprocessors

M ultiprocessing is apopularway to increase system computing power beyond the limit of current uniprocessor technology. In a multiprocessor, multiple instruction streams execute in parallel and



Cache coherence protocols: evaluation using a multiprocessor simulation model

The magnitude of the potential performance difference between the various approaches indicates that the choice of coherence solution is very important in the design of an efficient shared-bus multiprocessor, since it may limit the number of processors in the system.

A New Solution to Coherence Problems in Multicache Systems

A memory hierarchy has coherence problems as soon as one of its levels is split in several independent units which are not equally accessible from faster levels or processors. The classical solution

High-Speed Multiprocessors and Compilation Techniques

The purpose of this paper is to present some ideas on multiprocessor design and on automatic translation of sequential programs into parallel programs for multiprocessors. With respect to machine

Correct memory operation of cache-based multiprocessors

It is shown that cache coherence protocols can implement indivisible synchronization primitives reliably and can also enforce sequential consistency and it is shown how such protocols can implementation atomic READ&MODIFY operations for synchronization purposes.

Experience Using Multiprocessor Systems—A Status Report

The subject of program control structures is turned to to determine what characterizes parallel programming.

Essential Issues in Multiprocessor Systems

A suitable classification scheme for comparing these architectures with the aim of determining the predominant importance of new parallel algorithms for enhancement of computer performance is proposed.

Concepts and Notations for Concurrent Programming

This paper identifies the major concepts and describes some of the more important language notations for writing concurrent programs and three general classes of concurrent programming languages are identified and compared.

Using cache memory to reduce processor-memory traffic

It is demonstrated that a cache exploiting primarily temporal locality (look-behind) can indeed reduce traffic to memory greatly, and introduce an elegant solution to the cache coherency problem.

Cache Memories

design issues. Specific aspects of cache memories tha t are investigated include: the cache fetch algorithm (demand versus prefetch), the placement and replacement algorithms, line size,

The NYU Ultracomputer&#8212;Designing an MIMD Shared Memory Parallel Computer

We present the design for the NYU Ultracomputer, a shared-memory MIMD parallel machine composed of thousands of autonomous processing elements. This machine uses an enhanced message switching network