Skip to main content

The impact of hardware models on shared memory consistency conditions

  • Conference paper
  • First Online:
CONCUR '96: Concurrency Theory (CONCUR 1996)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1119))

Included in the following conference series:

  • 139 Accesses

Abstract

Shared memory systems provide a contract to the programmer in the form of a consistency condition. The conditions of atomic memory and sequential consistency provide the illusion of a single memory module, as in the uniprocessor case. Weaker conditions improve performance by sacrificing the simple programming model. Consistency conditions are formulated without reference to details of the hardware on which programs execute. We define the notion of a hardware model, a set of limitations on the communication network (e.g., message delay assumptions) and processing nodes (e.g., amount of available memory). We examine the effects of several models on a representative set of consistency conditions. In each model, we show how the conditions are related, and show that some are not appropriate for that model. Our study is carried out through relatively complete implementations, state machines which exactly capture the possible behaviors of all implementations in a given model. In addition to elucidating properties of the consistency conditions, these state machines can be used in proofs of correctness, when a particular hardware model is assumed.

This research was supported in part by NSF grants CCR-9223094 and CCR-9505807.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Agrawal, D., Choy, M., Leong, H. V., and Singh, A. K. Mixed consistency: A model for parallel programming. In PODC '94 (Los Angeles, CA, USA, 14–17 Aug. 1994), pp. 101–10.

    Google Scholar 

  2. Ahamad, M., Bazzi, R., John, R., Kohli, P., and Neiger, G. The power of processor consistency. In SPAA '93 (Velen, Germany, June 1993), pp. 251–60.

    Google Scholar 

  3. Ahamad, M., Neiger, G., Burns, J. E., Kohli, P., and Hutto, P. W. Causal memory: Definitions, implementation and programming. Dist. Comput. 9,1 (Aug. 1995), 37–49.

    Google Scholar 

  4. Attiya, H., and Friedman, R. A correctness condition for high-performance multiprocessors. In STOC '92 (Victoria, British Columbia, Canada, 4–6 May 1992), pp. 679–90.

    Google Scholar 

  5. Attiya, H., and Friedman, R. Limitations of fast consistency conditions for distributed shared memories. Inf. Process. Lett. 57, 5 (Mar. 1996), 243–8.

    Google Scholar 

  6. Attiya, H., and Welch, J. L. Sequential consistency versus linearizability. ACM Trans. Comput. Syst. 12, 2 (May 1994), 91–122.

    Google Scholar 

  7. Eskicioglu, M. R. A comprehensive bibliography of distributed shared memory. Op. Sys. Review 30, 1 (Jan. 1996), 71–96.

    Google Scholar 

  8. Friedman, R. Implementing hybrid consistency with high-level synchronization operations. Dist. Comput. 9, 3 (Dec. 1995), 119–29.

    Google Scholar 

  9. Gharachorloo, K., Adve, S. V., Gupta, A., Hennessy, J. L., and Hill, M. D. Specifying system requirements for memory consistency models. Tech. Rep. CSL-TR-93-594, Computer System Laboratory, Stanford University, 1993. Also University of Wisconsin-Madison Computer Sciences Technical Report #1199.

    Google Scholar 

  10. Gharachorloo, K., Lenoski, D., Laudon, J., Gibbons, P., Gupta, A., and Hennessy, J. Memory consistency and event ordering in scalable shared-memory multiprocessors. In ISCA '90 (Seattle, WA, USA, 28–31 May 1990), pp. 15–26. See revision in Stanford University tech. report CSL-TR-93-568.

    Google Scholar 

  11. Gibbons, P. B., and Merritt, M. Specifying nonblocking shared memories. In SPAA '92 (San Diego, CA, USA, 29 June–1 July 1992), pp. 306–15.

    Google Scholar 

  12. Goodman, J. R. Cache consistency and sequential consistency. Tech. Rep. 1006, Computer Sciences Department, University of Wisconsin-Madison, Feb. 1991.

    Google Scholar 

  13. Gupta, V. Chu Spaces: A Model of Concurrency. PhD thesis, Stanford University, Aug. 1994.

    Google Scholar 

  14. Gupta, V., and Pratt, V. Gates accept concurrent behavior. In FOCS '93 (Palo Alto, CA, USA, 3–5 Nov. 1993), pp. 62–71.

    Google Scholar 

  15. Herlihy, M. P., and Wing, J. M. Linearizability: A correctness condition for concurrent objects. ACM Trans. Program. Lang. Syst. 12, 3 (July 1990), 463–92.

    Google Scholar 

  16. James, J., and Singh, A. K. The impact of hardware models on shared memory consistency conditions. Tech. Rep. TRCS96-12, Computer Science Department, University of California at Santa Barbara, 1996.

    Google Scholar 

  17. Lamport, L. How to make a multiprocessor computer that correctly executes multiprocess programs. IEEE Trans. Comput. 28, 9 (Sept. 1979), 690–1.

    Google Scholar 

  18. Lamport, L. On interprocess communication, parts I and II. Dist. Comput. 1, 2 (Apr. 1986), 77–101.

    Google Scholar 

  19. Lipton, R. J., and Sandberg, J. S. PRAM: A scalable shared memory. Tech. Rep. CS-TR-180-88, Department of Computer Science, Princeton University, Sept. 1988.

    Google Scholar 

  20. Lynch, N. A., and Tuttle, M. R. Hierarchical correctness proofs for distributed algorithms. In PODC '87 (Vancouver, British Columbia, Canada, 10–12 Aug. 1987), pp. 137–51.

    Google Scholar 

  21. Lynch, N. A., and Vaandrager, F. Forward and backward simulations. Inf. Comput. 121, 2 (Sept. 1995), 214–233.

    Google Scholar 

  22. Mosberger, D. Memory consistency models. Op. Sys. Review 27, 1 (Jan. 1993), 18–26.

    Google Scholar 

  23. Pratt, V. The second calculus of binary relations. In MFCS '93 (Gdansk, Poland, 30 Aug.–3 Sept. 1993), A. M. Borzyszkowski and S. Sokolowski, Eds., Springer-Verlag, pp. 142–155.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Ugo Montanari Vladimiro Sassone

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

James, J., Singh, A. (1996). The impact of hardware models on shared memory consistency conditions. In: Montanari, U., Sassone, V. (eds) CONCUR '96: Concurrency Theory. CONCUR 1996. Lecture Notes in Computer Science, vol 1119. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-61604-7_86

Download citation

  • DOI: https://doi.org/10.1007/3-540-61604-7_86

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-61604-7

  • Online ISBN: 978-3-540-70625-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics