# Atomic snapshots using lattice agreement

- 118 Downloads
- 12 Citations

## Summary

The*snapshot* object is an important tool for constructing 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 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 used*O* (log^{2}*n*) operations on 2-processor*Test & Set* registers, plus*O (n)* operations on atomic single-writer multi-reader registers. The shared objects are used by the algorithm in a*dynamic* 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-processors*Test & Set* registers from atomic registers, this algorithm implies a randomized algorthm for lattice agreement that uses an expected number of*O (n)* operations on (dynamic) atomic single-writer multi-reader registers. Combined with our transformation this yields implementations of atomic snapshots with the same complexity.

### Key words

Atomic snapshot Lattice agreement## Preview

Unable to display preview. Download preview PDF.

### 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–302Google Scholar
- 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 1991Google Scholar
- 4.Ajtai M, Komlos J, Szemeredi E: An
*O (n)*log*n*) sorting network. Proceedings of the 15th ACM Symposium on the Theory of Computing, 1–9, 1983Google Scholar - 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–349Google Scholar
- 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–358Google Scholar
- 10.Aspnes J, Waarts O: Randomized consensus in
*O (n*log^{2}*n*) operations per processor. Proceedings of the 33rd IEEE Symposium on Foundations of Computer Science, 1992, pp 137–146Google Scholar - 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–293Google Scholar
- 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 1992Google 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–64Google Scholar
- 14.Attiya H, Rachman O: Atomic snapshots in
*O (n*log*n*) 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 1993Google Scholar - 15.Chandra T, Dwork C: Using consensus to solve atomic snapshots. (manuscript, August 1992)Google Scholar
- 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–737Google Scholar
- 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–97Google Scholar
- 18.Chor B, Moscovici L: Solvability in asynchronous environments. Proceedings of the 30th IEEE Symposium on Foundations of Computer Science 1989, pp 422–427Google Scholar
- 19.Chor B, Nelson L: Resiliency of interactive distributed tasks. Proceedings of the 10th ACM Symposium on Principles of Distributed Computing, 1991, pp 37–49Google Scholar
- 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–465Google Scholar
- 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–666Google Scholar
- 23.Dwork C: Personal communication, August 1991Google Scholar
- 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–170Google 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–64Google Scholar
- 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–183Google 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–21Google Scholar
- 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–362Google Scholar
- 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 AlgorithmsGoogle Scholar
- 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, 1992Google 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–241Google Scholar
- 35.Klugerman M, Plaxton G: Small-depth counting networks. In: Proceedings of the 24th ACM Symposium on Theory of Computing, 1992, pp 417–428Google Scholar
- 36.Tromp J, Vitanyi PMB: Randomized wait-free test-and-set. (Manuscript, November 1990)Google Scholar