On the Locality of Consistency Conditions

  • Roman Vitenberg
  • Roy Friedman
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2848)


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.


Consistency Condition Object Type Sequential Consistency FIFO Queue Distribute Share Memory 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    SPARC Architecture Manual. Version 8 (January 1991)Google Scholar
  2. 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. 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. 4.
    Ahamad, M., Neiger, G., Kohli, P., Burns, J., Hutto, P.: Causal Memory: Definitions, Implementation, and Programming. Distributed Computing 9(1) (1993)Google Scholar
  5. 5.
    Attiya, H., Friedman, R.: Limitations of Fast Consistency Conditions for Distributed Shared Memories. Information Processing Letters 57(5), 243–248 (1995)CrossRefGoogle Scholar
  6. 6.
    Attiya, H., Friedman, R.: A Correctness Condition for High-Performance Multiprocessors. SIAM Journal of Computing 27(2) (April 1998)Google Scholar
  7. 7.
    Attiya, H., Welch, J.: Sequential Consistency versus Linearizability. ACM Transactions on Computer Systems 12(2), 91–122 (1994)CrossRefGoogle Scholar
  8. 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
  9. 9.
    Charron-Bost, B., Cori, R.: A Note on Linearizability and the Global Time Axiom. Parallel Processing Letters 13(1), 19–24 (2003)CrossRefMathSciNetGoogle Scholar
  10. 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. 11.
    Friedman, R.: Consistency Conditions for Distributed Shared Memories. PhD thesis, Department of Computer Science, The Technion (1994)Google Scholar
  12. 12.
    Garg, V.K., Raynal, M.: Normality: A Consistency Condition for Concurrent Objects. Parallel Processing Letters 9(1), 123–134 (1999)CrossRefGoogle Scholar
  13. 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
  14. 14.
    Herlihy, M., Wing, J.: Linearizability: A Correctness Condition for Concurrent Objects. ACM Trans. on Programming Languages and Systems 12(3), 463–492 (1990)CrossRefGoogle Scholar
  15. 15.
    Kawash, J.: Limitations and Capabilities of Weak Memory Consistency Systems. PhD thesis, Computer Science Dept., University of Calgary (2000)Google Scholar
  16. 16.
    Lamport, L.: How to Make a Multiprocessor Computer that Correctly Executes Multiprocess Programs. IEEE Trans. on Computers C-28(9), 690–691 (1979)CrossRefGoogle Scholar
  17. 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. 18.
    Luchangco, V.: Memory Consistency Models for High Performance Distributed Computing. PhD thesis, MIT Department of Electrical Engineering and Computer Science (2001)Google Scholar
  19. 19.
    Papadimitriou, C.: The Theory of Concurrency Control. Computer Science Press, Rockville (1986)zbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2003

Authors and Affiliations

  • Roman Vitenberg
    • 1
  • Roy Friedman
    • 2
  1. 1.Computer Science DepartmentUCSBSanta BarbaraUSA
  2. 2.Computer Science DepartmentTechnionHaifaIsrael

Personalised recommendations