On the Locality of Consistency Conditions
Locality is a property of consistency conditions indicating that any collection of implementations of a consistency condition C for disjoint subsets of objects is an implementation of C for the entire set of objects. This paper investigates the sources of locality by considering the general model of consistency conditions and capturing their properties. We establish several ways of constructing local conditions as well as new general techniques for analyzing locality of consistency conditions that do not depend on a particular type of shared object. These techniques allow us to formally prove non-locality of a) all conditions stronger than sequential consistency but weaker than or incomparable to linearizability, b) all conditions stronger than or incomparable to coherence but weaker than sequential consistency, and c) a range of conditions that require sequences of operations to execute atomically. These results cover most commonly used consistency conditions as well as many other conditions useful in the context of specific systems.
KeywordsConsistency Condition Object Type Sequential Consistency FIFO Queue Distribute Share Memory
Unable to display preview. Download preview PDF.
- 1.SPARC Architecture Manual. Version 8 (January 1991)Google Scholar
- 2.Ahamad, M., Bazzi, R., John, R., Kohli, P., Neiger, G.: The Power of Processor Consistency. In: 5th ACM Symposium On Parallel Algorithms and Architectures, June 1993, pp. 251–260 (1993)Google Scholar
- 3.Ahamad, M., Hutto, P., John, R.: Implementing and Programming Causal Distributed Shared Memory. Technical Report TR GIT-CC-90-49, Georgia Institute of Technology (December 1990)Google Scholar
- 4.Ahamad, M., Neiger, G., Kohli, P., Burns, J., Hutto, P.: Causal Memory: Definitions, Implementation, and Programming. Distributed Computing 9(1) (1993)Google Scholar
- 6.Attiya, H., Friedman, R.: A Correctness Condition for High-Performance Multiprocessors. SIAM Journal of Computing 27(2) (April 1998)Google Scholar
- 8.Bershad, B.N., Zekauskas, M.J., Sawdon, W.A.: The Midway Distributed Shared Memory System. In: Proc. of the 38th IEEE Intl. Computer Conf (COM- PCON), February 1993, pp. 528–537 (1993)Google Scholar
- 10.Fernández, A., Jiménez, E., Cholvi, V.: On the Interconnection of Causal Memory Systems. In: Proc. of the 19th ACM Symposium on Principles of Distributed Computing (April 2000)Google Scholar
- 11.Friedman, R.: Consistency Conditions for Distributed Shared Memories. PhD thesis, Department of Computer Science, The Technion (1994)Google Scholar
- 13.Gharachorloo, K., Lenoski, D., Laudon, J., Gibbons, P., Gupta, A., Hennessy, J.: Memory Consistency and Event Ordering in Scalable Shared-Memory Multiprocessors. In: Proc. of the 17th International Symposium on Computer Architecture, May 1990, pp. 15–26 (1990)Google Scholar
- 15.Kawash, J.: Limitations and Capabilities of Weak Memory Consistency Systems. PhD thesis, Computer Science Dept., University of Calgary (2000)Google Scholar
- 17.Lipton, R., Sandberg, J.: PRAM: A Scalable Shared Memory. Technical Report CS-TR-180-88, Computer Science Department, Princeton University (September 1988)Google Scholar
- 18.Luchangco, V.: Memory Consistency Models for High Performance Distributed Computing. PhD thesis, MIT Department of Electrical Engineering and Computer Science (2001)Google Scholar