Skip to main content
Log in

Atomic snapshots using lattice agreement

  • Published:
Distributed Computing Aims and scope Submit manuscript

Summary

Thesnapshot object is an important tool for constructing wait-free asynchronous algorithms. We relate the snapshot object to thelattice agreement decision problem. It is shown that any algorithm for solving lattice agreement can be transformed into an implementation of a snapshot object. The overhead cost of this transformation is only a linear number of read and write operations on atomic single-writer multi-reader registers. The transformation uses an unbounded amount of shared memory. We present a deterministic algorithm for lattice agreement that usedO (log2 n) operations on 2-processorTest & Set registers, plusO (n) operations on atomic single-writer multi-reader registers. The shared objects are used by the algorithm in adynamic mode, that is, the identity of the processors that access each of the shared objects is determined dynamically during the execution of the algorithm. By a randomized implementation of 2-processorsTest & Set registers from atomic registers, this algorithm implies a randomized algorthm for lattice agreement that uses an expected number ofO (n) operations on (dynamic) atomic single-writer multi-reader registers. Combined with our transformation this yields implementations of atomic snapshots with the same complexity.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Abrahamson K: On achieving consensus using a shared momory. Proceedings of the 7th ACM Symposium on Principles of Distributed Computing, August 1988, pp 291–302

  2. Afek Y, Attiya H, Dolev D, Gafni E, Merritt M, Shavit N: Atomic snapshots of shared memory. J ACM 40(4) 873–890 (1993)

    Google Scholar 

  3. Aharonson E, Attiya H: Counting network with arbitrary fanout. Proceedings of the 3rd Annual ACM-SIAM Symposium on Discrete Algorithms. Orlando, Florida, January 1992, pp 104–113. Also: Technical Report no 679, Department of Computer Science, The Technion, Haifa, June 1991

    Google Scholar 

  4. Ajtai M, Komlos J, Szemeredi E: AnO (n) logn) sorting network. Proceedings of the 15th ACM Symposium on the Theory of Computing, 1–9, 1983

  5. Anderson JH: Composite registers. Distrib Comput 6(3): 141–154 (1993)

    Google Scholar 

  6. Aspnes J: Time- and space-efficient randomized consensus. J Algorithms 14(3): 414–431 (1993)

    Google Scholar 

  7. Aspnes J, Herlihy MP: Fast randomized consensus using shared memory. J Algorithms 11(3) 441–461 (1990)

    Google Scholar 

  8. Aspnes J, Herlihy MP: Wait-free data structures in the asynchronous PRAM model. Proceedings of the 2nd Annual Symposium on Parallel Algorithms and Architectures, 1990, pp 340–349

  9. Aspnes J, Herlihy MP, Shavit N: Counting networks and multiprocessor coordination. To appear in J ACM. Also: Proceedings of the 23rd Annual Symposium on Theory of Computing, 1991, pp 348–358

  10. Aspnes J, Waarts O: Randomized consensus inO (n log2 n) operations per processor. Proceedings of the 33rd IEEE Symposium on Foundations of Computer Science, 1992, pp 137–146

  11. Attiya H, Dolev D, Shavit N: Bounded polynomial randomized consensus. Proceedings of the 8th Annual ACM Symposium on Principles of Distributed Computing, 1989, pp 281–293

  12. Attiya H, Herlihy M, Rachman O: Efficient atomic snapshots using lattice agreement. In: Segall A, Zaks S (eds) Proceedings of the 6th International Workshop on Distributed Algorithms, Haifa, Israel, November 1992. Lect Notes Comput Sci vol 647. Springer Berlin Heidelberg New York, pp 35–53. Revised version: Technical Report no 759, Department of Computer Science, The Technion, Haifa, December 1992

    Google Scholar 

  13. Attiya H, Lynch NA, Shavit N: Are wait-free algorithms fast? To appear in J ACM. Also: Proceedings of the 31st IEEE Symposium on Foundations of Computer Science 1990, pp 55–64

  14. Attiya H, Rachman O: Atomic snapshots inO (n logn) operations. Proceedings of the 12th Annual ACM Symposium on Principles of Distributed Computing, 1993, pp 29–40. Also: Technical Report no 791, Department of Computer Science, The Technion, Haifa, December 1993

    Google Scholar 

  15. Chandra T, Dwork C: Using consensus to solve atomic snapshots. (manuscript, August 1992)

  16. Chaudhuri S: Towards a complexity hierarchy of wait-free concurrent objects. Proceedings of the 3rd IEEE Symposium on Parallel and Distributed Processing, 1991, pp 730–737

  17. Chor B, Israeli A, Li M: On processor coordination using asynchronous hardware. To appear in SIAM J Comput. Also: Proceedings of the 6th ACM Symposium on Principles of Distributed Computing, August 1987, pp 86–97

  18. Chor B, Moscovici L: Solvability in asynchronous environments. Proceedings of the 30th IEEE Symposium on Foundations of Computer Science 1989, pp 422–427

  19. Chor B, Nelson L: Resiliency of interactive distributed tasks. Proceedings of the 10th ACM Symposium on Principles of Distributed Computing, 1991, pp 37–49

  20. Dolev D, Dwork C, Stockmeyer L: On the minimal synchrony needed for distributed consensus. J ACM 34(1): 77–97 (1987)

    Google Scholar 

  21. Dolev D, Shavit N: Bounded concurrent time-stamp systems are constructible. To appear in SIAM J Comput, also: Proceedings of the 21st ACM Symposium on Theory of Computing, 1989, pp 454–465

  22. Dwork C, Waarts O: Simple and efficient Concurrent timestamping or bounded concurrent timestamping are comprehensible. Proceedings of the 24th ACM Symposium on Theory of Computing, 1992, pp 655–666

  23. Dwork C: Personal communication, August 1991

  24. Dwork C, Herlihy MP, Plotkin SA, Waarts O: Time-lapse snapshots. Proceedings of Israel Symposium on the Theory of Computing and Systems, 1992. Lect Notes Comput Sci, vol 601. Springer, Berlin Heidelberg New York, pp 151–170

    Google Scholar 

  25. Dwork C, Herlihy MP, Waarts O: Bounded round numbers. Proceedings of the 12th Annual ACM Symposium on Principles of Distributed Computing, 1993, pp 53–64

  26. Gawlick R, Lynch N, Shavit N: Concurrent timestamping made simple. In Dolev D, Galil Z, Rodeh M (eds) Proceedings of Israel Symposium on the Theory of Computing and Systems, 1992. Lect Notes Comput Sci, vol 601. Springer, Berlin Heidelberg New York, pp 171–183

    Google Scholar 

  27. Herlihy M: Wait-free synchronization. ACM Trans Program Lang Syst 13(1): 124–149 (1991)

    Google Scholar 

  28. Herlihy M: Randomized wait-free objects. Proceedings of the 10th ACM Symposium on Principles of Distributed Computing, 1991, pp 11–21

  29. Herlihy M, Tuttle M: Wait-free computation in message-passing systems. Proceedings of the 9th ACM Symposium on Principles of Distributed Computing 1990, pp 347–362

  30. Herlihy M, Wing JM: Linearizability: a correctness condition for concurrent objects. ACM Trans Program Lang Syst 12(3): 463–492 (1990)

    Google Scholar 

  31. Inoue M, Chen W: Liner-time snapshot using multi-writer multi-reader registers. To appear in the 8th International Workshop on Distributed Algorithms

  32. Israeli A, Li M: Bounded time stamps. Distrib Comput 6(4): 205–209 (1993)

    Google Scholar 

  33. Israeli A, Shaham A, Shirazi A: Linear-time snapshot protocols for unbalanced systems. Centre for Mathematics and Computer Science of the Mathematical Centre Foundation, Amsterdam, The Netherlands, Report CS-R9236, 1992

    Google Scholar 

  34. Kirousis LM, Spirakis P, Tsigas P: Reading many variables in one atomic operation: solutions with linear or sublinear complexity. In: Toueg S, Spirakis P, Kirousis L (eds) Proceedings of the 5th International Workshop on Distributed Algorithms, Delphi, Greece, October 1991. Lect Notes Comput Sci, vol 579, Springer, Berlin Heidelberg New York, pp 229–241

    Google Scholar 

  35. Klugerman M, Plaxton G: Small-depth counting networks. In: Proceedings of the 24th ACM Symposium on Theory of Computing, 1992, pp 417–428

  36. Tromp J, Vitanyi PMB: Randomized wait-free test-and-set. (Manuscript, November 1990)

Download references

Author information

Authors and Affiliations

Authors

Additional information

Cambridge Research Laboratory, Digital Equipment Corporation

Hagit Attiya received the B.Sc. degreeiin Mathematics and Computer Science from the Hebrew University of Jerusalem, in 1981, the M.Sc. and Ph.D. degrees in Computer Science from the Hebrew University of Jerusalem, in 1983 and 1987, respectively. She is presently a senior lecturer at the departtment of Computer Science at the Technion, Israel Institute of Technology. Prior to this, she has been a post-doctoral research associate at the Laboratory for Computer Science at M.I.T. Her general research interests are distributed computation and theoretical computer science. More specific interests include fault-tolerance, timing-based and asynchronous algorithms.

Maurice Herlihy received the A.B. degree in Mathematics from Harvard University, and the M.S. and the Ph.D. degrees in Computer Science from M.I.T. From 1984 to 1989 he was a faculty member in the Computer Science Department at Carnegie Mellon University in Pittsburgh, PA. In 1989 he joined the research staff at the Digital Equipment Corporation's Cambridge Research Laboratory in Cambridge MA. Since 1994, he has been on the faculty at the Computer Science Department at Brown University. Dr. Herlihy's research interests encompass practical and theoretical aspects of distributed and concurrent computation.

Ophir achman received a B.A. in computer science from the Technion, Haifa, Israel in 1989 and M.Sc. in computer science from the Technion, Haifa, Israel, in 1992. He is now studying for a D.Sc. in computer science at the Technion. His currentarea of research is distributed computing, and in particular, asynchronous shared memory systems.

This work appeared in preliminary form in proceedings ofthe 6th International Workshop on Distributed Algorithms [12]. This research was partially supported by grant No. 92-0233 from the United States-Israel Binational Science Foundation (BSF), Jerusalem, Technion V.P.R. funds — B. and G. Greenberg Research Fund (Ottawa), and the fund for the promotion of research in the Technion

Part of the work of this author was performed while visiting DEC Cambridge Research Laboratory

Rights and permissions

Reprints and permissions

About this article

Cite this article

Attiya, H., Herlihy, M. & Rachman, O. Atomic snapshots using lattice agreement. Distrib Comput 8, 121–132 (1995). https://doi.org/10.1007/BF02242714

Download citation

  • Received:

  • Accepted:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF02242714

Key words

Navigation