Advertisement

Efficient atomic snapshots using lattice agreement

Extended abstract
  • Hagit Attiya
  • Maurice Herlihy
  • Ophir Rachman
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 647)

Abstract

The snapshot object is an important tool for the construction of wait-free asynchronous algorithms. We relate the snapshot object to the lattice agreement decision problem. It is shown that any algorithm for solving lattice agreement can be used to implement the snapshot object. Several new lattice agreement algorithms are presented. The most efficient is a lattice agreement algorithm (and hence, an implementation of snapshot objects) using O(log2n) operations on 2-processor Tesl&Set registers, plus a linear number of operations on atomic single-writer multi-reader registers.

Keywords

Shared Memory Recursive Algorithm Original Input Dynamic Allocation Sorting Network 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Y. Afek, H. Attiya, D. Dolev, E. Gafni, M. Merritt and N. Shavit, “Atomic Snapshots of Shared Memory,” proceedings of the 9th Annual ACM Symposium on Principles of Distributed Computing, 1990, pp. 1–14.Google Scholar
  2. 2.
    E. Aharonson and H. Attiya, “Counting Network with Arbitrary Fan-Out,” proceedings of the 3rd Annual ACM-SIAM Symp. on Discrete Algorithms, Orlando, Florida, January 1992, pp. 104–113.Google Scholar
  3. 3.
    M. Ajtai, J. Komlos and E. Szemeredi, “An O(n log n) sorting network,” proceedings of the 15th ACM Symposium on the Theory of Computing, 1–9, 1983.Google Scholar
  4. 4.
    J. H. Anderson, “Composite Registers,” proceedings of the 9th Annual ACM Symposium on Principles of Distributed Computing, 1990, pp. 15–29.Google Scholar
  5. 5.
    J. Aspnes, “Time-and Space-Efficient Randomized Consensus,” proceedings of the 9th Annual ACM Symposium on Principles of Distributed Computing, 1990, pp. 325–331.Google Scholar
  6. 6.
    J. Aspnes and M. P. Herlihy, “Wait-Free Data Structures in the Asynchronous PRAM Model,” proceedings of the 2nd Annual Symposium on Parallel Algorithms and Architectures, 1990, pp. 340–349.Google Scholar
  7. 7.
    J. Aspnes, M. P. Herlihy and N. Shavit, “Counting Networks and Multi-Processor Coordination,” proceedings of the 23rd annual Symposium on Theory of Computing, 1991, pp. 348–358.Google Scholar
  8. 8.
    H. Attiya, D. Dolev and N. Shavit, “Bounded polynomial randomized consensus,” proceedings of the 8th Annual ACM Symposium on Principles of Distributed Computing, 1989, pp. 281–293.Google Scholar
  9. 9.
    H. Attiya, N. A. Lynch and N. Shavit, “Are wait-free algorithms fast?” proceedings of the 31st IEEE Symposium on on Foundations of Computer Science 1990, pp. 55–64.Google Scholar
  10. 10.
    T. Chandra and C. Dwork, personal communication.Google Scholar
  11. 11.
    S. Chaudhuri, “Towards a Complexity Hierarchy of Wait-Free Concurrent Objects,” proceeding of the 3rd IEEE Symposium on Parallel and Distributed Processing, 1991, pp. 730–737.Google Scholar
  12. 12.
    B. Chor and L. Moscovici, “Solvability in Asynchronous Environments,” proceedings of the 30th IEEE Symposium on on Foundations of Computer Science 1989, pp. 422–427.Google Scholar
  13. 13.
    B. Chor and L. Nelson, proceedings of the 10th ACM Symp. on Principles of Distributed Computing, 1991, pp. 37–49.Google Scholar
  14. 14.
    C. Dwork, personal communication.Google Scholar
  15. 15.
    C. Dwork, M. P. Herlihy, S. A. Plotkin, and O. Waarts, “Time-Lapse Snapshots,” proceedings of Israel Symposium on the Theory of Computing and Systems, 1992, to appear.Google Scholar
  16. 16.
    R. Gawlick, N. Lynch and N. Shavit, “Concurrent Timestamping Made Simple,” proceedings of Israel Symposium on the Theory of Computing and Systems, 1992, to appear.Google Scholar
  17. 17.
    Herlihy, M. P. “Wait-free synchronization,” ACM Transactions on Programming Languages and Systems, Vol. 13, No. 1 (Jan. 1991), pp. 124–149.Google Scholar
  18. 18.
    M. P. Herlihy, “Randomized Wait-Free Objects,” proceedings of the 10th ACM Symp. on Principles of Distributed Computing, 1991, pp. 11–21.Google Scholar
  19. 19.
    M. Herlihy and M. Tuttle, “Wait-Free Computation in Message-Passing Systems,” proceedings of the 9th ACM Symp. on Principles of Distributed Computing, 1990, pp. 347–362.Google Scholar
  20. 20.
    M. P. Herlihy and J. M. Wing, “Linearizability: A correctness condition for concurrent objects,” ACM Transactions on Programming Languages and Systems, Vol. 12, No. 3 (July 1990), pp. 463–492.Google Scholar
  21. 21.
    L. M. Kirousis, P. Spirakis and Ph. Tsigas, “Reading Many Variables in One Atomic Operation: Solutions with Linear or Sublinear Complexity,” proceedings of the 5th International Workshop on Distributed Algorithms, Delphi, Greece, October 1991 (S. Toueg, P. Spirakis and L. Kirousis, eds.), pp. 229–241, Lecture Notes in Computer Science #579, Springer-Verlag.Google Scholar
  22. 22.
    M. Klugerman and G. Plaxton, “Small-Depth Counting Networks,” Proceedings of the 24th ACM Symp. on Theory of Computing, 1992, pp. 417–428.Google Scholar
  23. 23.
    J. Tromp and P. M. B. Vitanyi, “Randomized Wait-Free Test-and-Set,” manuscript, November 1990.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1992

Authors and Affiliations

  1. 1.Department of Computer ScienceTechnionHaifaIsrael
  2. 2.DEC Cambridge Research LaboratoryUK

Personalised recommendations