SHARED-MEMORY CONSISTENCY MODELS - A TUTORIAL

Citation
Sv. Adve et K. Gharachorloo, SHARED-MEMORY CONSISTENCY MODELS - A TUTORIAL, Computer, 29(12), 1996, pp. 66
Citations number
12
Categorie Soggetti
Computer Sciences","Computer Science Hardware & Architecture","Computer Science Software Graphycs Programming
Journal title
ISSN journal
00189162
Volume
29
Issue
12
Year of publication
1996
Database
ISI
SICI code
0018-9162(1996)29:12<66:SCM-AT>2.0.ZU;2-5
Abstract
The shared memory programming model has several advantages over the me ssage-passing model. To write correct and efficient shared memory prog rams, programmers need a precise notion of shared memory semantics. Th e memory consistency model of a shared memory multiprocessor formally specifies how the memory system will appear to the programmer. The mem ory consistency model is an interface between the programmer and the s ystem, so it influences not only how parallel programs are written but virtually every aspect of parallel hardware and software design. A me mory consistency model specification is required at every interface be tween the programmer and the system. At each level, the memory consist ency model affects both programmability and performance. Furthermore, due to a lack of consensus on a single model, portability can be affec ted when moving software across systems supporting different models. U nfortunately, the vast Literature that describes consistency models us es nonuniform, complex terminology to describe the large variety of mo dels. This makes it difficult to understand the often subtle but impor tant differences among models and leads to several misconceptions. Thi s article describes memory consistency models in a way that most compu ter professionals can understand. The focus is consistency models prop osed for hardware-based shared memory systems. Most of these models em phasize the system optimizations they support, and the authors retain this system-centric emphasis in this article.