8th International Symposium on Parallel Architectures,Algorithms and Networks (ISPAN'05) Impact of Instruction Re-Ordering on the Correctness of Shared-Memory Programs Las Vegas, Nevada, USA December 07-December 09 ISBN: 0-7695-2509-1
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/ISPAN.2005.51
Sequential consistency is an intuitive consistency model that simplifies reasoning about concurrent multiprocessor programs. Most implementations of high-performance multiprocessors, however, utilize mechanisms that allow instructions to execute out of order, resulting in consistency models that are weaker than sequential consistency and further complicating the job of programmers. This paper investigates all possible combinations of re-ordering of read and write instructions and their effects on the correctness of programs that are designed for sequential consistency. It shows that with certain combinations of re-orderings, any program that accesses shared memory through only reads and writes and that is correct assuming sequential consistency, can be transformed to a new program that does not use any explicit synchronization, and that remains correct in spite of the instruction re-ordering. With other combinations of re-ordering, such transformations do not exist, and even solutions to the mutual exclusion problem are impossible without resorting to explicit synchronization.
Index Terms:
Instruction re-ordering, Sequential consistency, Critical Sections, Memory consistency models, Mutual exclusion, High-performance multiprocessors.
Citation:
Lisa Higham, Jalal Kawash, "Impact of Instruction Re-Ordering on the Correctness of Shared-Memory Programs," ispan, pp.25-32, 8th International Symposium on Parallel Architectures,Algorithms and Networks (ISPAN'05), 2005 Usage of this product signifies your acceptance of the Terms of Use. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||