Skip to main content

Time-lapse snapshots

  • Conference paper
  • First Online:
Theory of Computing and Systems (ISTCS 1992)

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

Included in the following conference series:

Abstract

A snapshot scan algorithm takes an “instantaneous” picture of a region of shared memory that may be updated by concurrent processes. Many complex shared memory algorithms can be greatly simplified by structuring them around the snapshot scan abstraction. Unfortunately, the substantial decrease in conceptual complexity is quite often counterbalanced by an increase in computational complexity.

In this paper, we introduce the notion of a weak snapshot scan, a slightly weaker primitive that has a more efficient implementation. We propose the following methodology for using this abstraction: first, design and verify an algorithm using the more powerful snapshot scan, and second, replace the more powerful but less efficient snapshot with the weaker but more efficient snapshot, and show that the weaker abstraction nevertheless suffices to ensure the correctness of the enclosing algorithm.

We give two examples of algorithms whose performance can be enhanced while retaining a simple modular structure: bounded concurrent timestamping, and bounded randomized consensus. The resulting timestamping protocol is the fastest known bounded concurrent timestamping protocol. The resulting randomized consensus protocol matches the computational complexity of the best known protocol that uses only bounded values.

Research supported by NSF Research Initiation Award CCR-900-8226, by U.S. Army Research Office Grant DAAL-03-91-G-0102, by ONR Contract N00014-88-K-0166, and by a grant from Mitsubishi Electric Laboratories.

Research supported by NSF grant CCR-8814921, U.S. Army Research Office Grant DAAL-03-91-G-0102, ONR contract N00014-88-K-0166, and IBM fellowship.

This article was processed using the LATEX macro package with LLNCS style

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. K. Abrahamson, On Achieving Consensus Using a Shared Memory, Proc. 7 ACM Symposium on Principles of Distributed Computing, pp.291–302, 1988.

    Google Scholar 

  2. Y. Afek, H. Attiya, D. Dolev, E. Gafni, M. Merritt, and N. Shavit, Atomic Snapshots of Shared Memory, Proc. 9 ACM Symposium on Principles of Distributed Computing, pp. 1–13, 1990.

    Google Scholar 

  3. J. Anderson, Composite Registers, Proc. 9 ACM Symposium on Principles of Distributed Computing, pp. 15–30, August 1990.

    Google Scholar 

  4. J. Anderson, and B. Groselj, Beyond Atomic Registers: Bounded Wait-free Implementations of Non-trivial Objects, Proc. 5th International Workshop on Distributed Algorithms, Delphi, Greece, October 1991.

    Google Scholar 

  5. J. Aspnes, Time-and Space-Efficient Randomized Consensus, to appear in the Journal of Algorithms. An earlier version appears in Proc. 9 ACM Symposium on Principles of Distributed Computing, pp. 325–331, 1990.

    Google Scholar 

  6. J. Aspnes and M.P. Herlihy Wait-Free Data Structures in the Asynchronous PRAM Model, Proc. 2nd Annual Symposium on Parallel Algorithms and Architectures, July 1990, pages 340–349, Crete, Greece.

    Google Scholar 

  7. J. Aspnes and M.P. Herlihy, Fast Randomized Consensus using Shared Memory, Journal of Algorithms, 11(3):441–461, 1990.

    Google Scholar 

  8. H. Attiya, D. Dolev, and N. Shavit, Bounded Polynomial Randomized Consensus, Proc. 8 ACM Symposium on Principles of Distributed Computing, pp. 281–294, 1989.

    Google Scholar 

  9. H. Attiya, N. Lynch, and N. Shavit, Are Wait-Free Algorithms Fast?, Proc. 9 IEEE Symposium on Foundations of Computer Science, pp. 363–375, 1990. Expanded version: Technical Memo MIT/LCS/TM-423, Laboratory for Computer Science, MIT, February 1990.

    Google Scholar 

  10. G. Bracha and O. Rachman, Approximated Counters and Randomized Consensus, Technical Report Technion 662, 1990.

    Google Scholar 

  11. G. Bracha and O. Rachman, Randomized Consensus in Expected O(n2 log n), Proc. 5th International Workshop on Distributed Algorithms, Greece, 1991.

    Google Scholar 

  12. J.E. Burns and G.L. Peterson, Constructing Multi-reader Atomic Values from Non-atomic Values, Proceedings of the Sixth ACM Symposium on Principles of Distributed Computing, pages 222–231, 1987.

    Google Scholar 

  13. K. M. Chandy and L. Lamport, Distributed Snapshots: Determining Global States of Distributed Systems, Acm Trans. on Computer Systems 3:1,1985, pp. 63–75.

    Google Scholar 

  14. B. Chor, A. Israeli, and M. Li, On processor coordination using asynchronous hardware, Proc. 6th ACM Symposium on Principles of Distributed Computing, pages 86–97, 1987.

    Google Scholar 

  15. E. W. Dijkstra, Solution of a problem in concurrent programming control, Communications of the ACM 8:165, 1965.

    Google Scholar 

  16. D. Dolev, C. Dwork, and L Stockmeyer. On the minimal synchronism needed for distributed consensus, Journal of the ACM 34:1, pp. 77–97, January, 1987.

    Google Scholar 

  17. D. Dolev and N. Shavit, Bounded Concurrent Time-Stamp Systems are Constructible!, Proc. 21 ACM Symposium on Theory of Computing, pp. 454–465, 1989.

    Google Scholar 

  18. C. Dwork and O. Waarts, Simple and Efficient Bounded Concurrent Timestamping or Bounded Concurrent Timestamp Systems are Comprehensible!, IBM Research Report RJ 8425, October 1991. Also, to appear in Proc. 24 ACM Symposium on Theory of Computing, 1992.

    Google Scholar 

  19. M.P. Herlihy. Wait-free Synchronization, ACM Transactions on Programming Languages and Systems, 13(1): 124–149, January 1991.

    Google Scholar 

  20. M.P. Herlihy and J.M. Wing, Linearizability: A Correctness Condition for Concurrent Objects, ACM Transactions on Programming Languages and Systems, 12(3):463–492, July 1990.

    Google Scholar 

  21. A. Israeli and M. Li, Bounded Time Stamps, Proc. 28 IEEE Symposium on Foundations of Computer Science, 1987.

    Google Scholar 

  22. A. Israeli and M. Pinhasov, A Concurrent Time-Stamp Scheme which is Linear in Time and Space, manuscript, 1991.

    Google Scholar 

  23. L. M. Kirousis, P. Spirakis and P. Tsigas, Reading Many Variables in One Atomic Operation Solutions With Linear or Sublinear Complexity, Proc. 5th International Workshop on Distributed Algorithms, 1991.

    Google Scholar 

  24. L. Lamport, Concurrent reading and writing. Communications of the ACM, 20(11):806–811, November 1977.

    Google Scholar 

  25. L. Lamport, The Mutual Exclusion Problem, Part I: A Theory of Interprocess Communication, J. ACM 33(2), pp. 313–326, 1986.

    Google Scholar 

  26. G. Peterson, Concurrent Reading While Writing, ACM Transactions on Programming Languages and Systems 5(1), pp. 46–55, 1983.

    Google Scholar 

  27. M. Saks, N. Shavit, and H. Woll, Optimal Time Randomized Consensus — Making Resilient Algorithms Fast in Practice, Symposium on Discrete Algorithms, pp. 351–362, 1990.

    Google Scholar 

  28. J. Tromp, How to Construct an Atomic Variable, Proc. 3rd International Workshop on Distributed Algorithms, LNCS 392, 1989.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

D. Dolev Z. Galil M. Rodeh

Rights and permissions

Reprints and permissions

Copyright information

© 1992 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Dwork, C., Herlihy, M., Plotkin, S.A., Waarts, O. (1992). Time-lapse snapshots. In: Dolev, D., Galil, Z., Rodeh, M. (eds) Theory of Computing and Systems. ISTCS 1992. Lecture Notes in Computer Science, vol 601. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0035175

Download citation

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

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-47214-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics