Synchronization without contention

作者: John M. Mellor-Crummey , Michael L. Scott

DOI: 10.1145/106972.106999

关键词: Distributed shared memorySynchronizationParallel computingDistributed memoryCache coherenceDistributed computingComputer scienceSynchronization (computer science)Uniform memory accessMutual exclusionConsistency modelScalabilityShared memory

摘要: Conventional wisdom holds that contention due to busy-wait synchronization is a major obstacle scalability and acceptable performance in large shared-memory multiprocessors. We argue the contrary, present fast, simple algorithms for contention-free mutual exclusion, reader-writer control, barrier synchronization. These algorithms, based on widely available fetch-and-@ instructions, exploit local access shared memory avoid contention. compare our previous approaches both qualitative quantitative terms, presenting their Sequent Symmetry BBN Butterfly Our results highlight importance of memory, provide case against construction so-called "dance hall" machines, suggest special-purpose hardware support unlikely be cost effective machines with sequentially consistent memory.

参考文章(25)
Thomas E. Anderson, The Performance Implications of Spin-Waiting Alternatives for Shared-Memory Multiprocessors. international conference on parallel processing. pp. 170- 174 ,(1989)
Gottlieb, Grishman, Kruskal, McAuliffe, Rudolph, Snir, The NYU Ultracomputer—Designing an MIMD Shared Memory Parallel Computer IEEE Transactions on Computers. ,vol. 32, pp. 175- 189 ,(1983) , 10.1109/TC.1983.1676201
Clyde P Kruskal, Larry Rudolph, Marc Snir, Efficient synchronization on multiprocessors with shared memory ,(2011)
Pen-Chung Yew, Nian-Feng Tzeng, Lawrie, Distributing Hot-Spot Addressing in Large-Scale Multiprocessors IEEE Transactions on Computers. ,vol. 36, pp. 388- 395 ,(1987) , 10.1109/TC.1987.1676921
R.D. Rettberg, W.R. Crowther, P.P. Carvey, R.S. Tomlinson, The Monarch parallel processor hardware design IEEE Computer. ,vol. 23, pp. 18- 28 ,(1990) , 10.1109/2.55467
Eugene D. Brooks, The shared memory hypercube parallel computing. ,vol. 6, pp. 235- 245 ,(1988) , 10.1016/0167-8191(88)90088-9
David P. Reed, Rajendra K. Kanodia, Synchronization with eventcounts and sequencers Communications of The ACM. ,vol. 22, pp. 115- 123 ,(1979) , 10.1145/359060.359076
M. Herlihy, A methodology for implementing highly concurrent data structures acm sigplan symposium on principles and practice of parallel programming. ,vol. 25, pp. 197- 206 ,(1990) , 10.1145/99163.99185
Boris D. Lubachevsky, Synchronization barrier and related tools for shared memory parallel programming International Journal of Parallel Programming. ,vol. 19, pp. 225- 250 ,(1990) , 10.1007/BF01407956
P. J. Courtois, F. Heymans, D. L. Parnas, Concurrent control with “readers” and “writers” Communications of the ACM. ,vol. 14, pp. 667- 668 ,(1971) , 10.1145/362759.362813