Synchronization, coherence, and event ordering in multiprocessors
@article{Dubois1988SynchronizationCA, title={Synchronization, coherence, and event ordering in multiprocessors}, author={Michel Dubois and Christoph Scheurich and Faye A. Briggs}, journal={Computer}, year={1988}, volume={21}, pages={9-21} }
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
264 Citations
Implementing Locks in Distributed-Memory Multiprocessors
- Computer ScienceARCS
- 1992
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
- Computer ScienceIEEE Trans. Software Eng.
- 1990
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
- Computer ScienceProceedings 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
- 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
- Computer ScienceIEEE Micro
- 1994
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.
Architecture, design, and performance of Application System/400 (AS/400) multiprocessors
- Computer ScienceIBM J. Res. Dev.
- 1992
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
- Computer Science
- 2001
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…
Distributed shared memory: a survey of issues and algorithms
- Computer ScienceComputer
- 1991
An overview of distributed shared memory issues covers memory coherence, design choices, and implementation methods, and algorithms that support process synchronization and memory management are discussed.
LimitLESS directories: A scalable cache coherence scheme
- Computer ScienceASPLOS IV
- 1991
The LimitLESS scheme uses a combination of hardware and software techniques to realize the performance of a full-map directory with the memory overhead of a limited directory, supported by Alewife, a large-scale multiprocessor.
A hardware cache coherency scheme for multiprocessors
- Computer ScienceProceedings of 36th Midwest Symposium on Circuits and Systems
- 1993
A hardware cache coherency scheme for shared memory multiprocessors that allows one to split Cache Coherency operations between the participating processors and its design details are discussed.
References
SHOWING 1-10 OF 19 REFERENCES
Cache coherence protocols: evaluation using a multiprocessor simulation model
- Computer ScienceTOCS
- 1986
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
- Computer ScienceIEEE Transactions on Computers
- 1978
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
- Computer ScienceIEEE Transactions on Computers
- 1980
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
- Computer ScienceISCA '87
- 1987
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.
How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs
- Computer ScienceIEEE Transactions on Computers
- 1979
Many large sequential computers execute operations in a different order than is specified by the program, and a correct execution by each processor does not guarantee the correct execution of the entire program.
Experience Using Multiprocessor Systems—A Status Report
- Computer ScienceCSUR
- 1980
The subject of program control structures is turned to to determine what characterizes parallel programming.
Essential Issues in Multiprocessor Systems
- Computer ScienceComputer
- 1985
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
- Computer ScienceCSUR
- 1983
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
- Computer ScienceISCA '83
- 1983
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
- Computer ScienceCSUR
- 1982
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,…