Lazy Release Consistency for Software Distributed Shared Memory
Top Cited Papers
- 25 August 2005
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
Abstract
Relaxed memory consistency models, such as release consistency, were introduced in order to reduce the impact of re mote memory access latency in both software and hardware distributed shared memory (DSM). However, in a software DSM, it is also important to reduce the number of messages and the amount of data exchanged for remote memory access. Lazy release consistency is a new algorithm for implementing release consistency that lazily pulls modifications across the interconnect only when necessary. Trace- driven simulation using the SPLASH benchmarks indicates that lazy release consistency reduces both the number of messages and the amount of data transferred between processors. These reductions are especially significant for pro- grams that exhibit false sharing and make extensive use of locks.Keywords
This publication has 9 references indexed in Scilit:
- Implementing and programming causal distributed shared memoryPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Weak ordering-a new definitionPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Memory consistency and event ordering in scalable shared-memory multiprocessorsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- The directory-based cache coherence protocol for the DASH multiprocessorPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Implementation and performance of MuninPublished by Association for Computing Machinery (ACM) ,1991
- Memory access dependencies in shared-memory multiprocessorsIEEE Transactions on Software Engineering, 1990
- Memory coherence in shared virtual memory systemsACM Transactions on Computer Systems, 1989
- Analysis of cache invalidation patterns in multiprocessorsPublished by Association for Computing Machinery (ACM) ,1989
- How to Make a Multiprocessor Computer That Correctly Executes Multiprocess ProgramsIEEE Transactions on Computers, 1979