Abstract
An atomic snapshot memory enables a set of processes, called scanners, to obtain a consistent picture of the shared memory while other processes, called updaters, keep updating memory locations concurrently. Implementations of atomic snapshot memory are key tools in designing distributed protocols in shared memory systems. Such an implementation consists of two protocols: An update protocol and a scan protocol, executed by updaters and scanners, respectively.
It is clear that the time complexity of the scan protocol is at least linear, and there exists an implementation which matches the lower bound. In this paper we show that the time complexity of an optimal update protocol is Θ(min{u, s}), where u is the number of updaters and s is the number of scanners.
Preview
Unable to display preview. Download preview PDF.
References
J. Anderson, Composite Registers, Distributed Computing, Vol. 3, No. 3, 1993, pp. 141–154.
J. Aspnes, Time-and Space-Efficient Randomized Consensus, Proceedings of the 9th Annual ACM Symposium on Principles of Distributed Computing, 1990, pp. 15–29.
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–13.
J. Aspnes and M. 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.
H. Attiya, M. Herlihy and O. Rachman, Efficient Atomic Snapshots Using Lattice Agreement, Proceedings of the 6th International Workshop on Distributed Algorithms and Graphs, 1992, pp. 35–53, Lecture Notes in Computer Science #647, Springer-Verlag, 1992.
H. Attiya, N.A. Lynch and N. Shavit, Are Wait-Free Algorithms Fast? Proceedings of the 31st IEEE Symposium on Foundations of Computer Science, 1990, pp. 55–64.
H. Attiya and O. Rachman, Atomic Snapshots in O(n log n) Operations, Proceedings of the 12th Annual ACM Symposium on Principles of Distributed Computing, 1993, pp. 29–40.
T.D. Chandra and C. Dwork, personal communications.
C. Dwork, M. Herlihy, S. Plotkin and O. Waarts, Time-Lapse Snapshots, Proceedings of the 1st Israeli Symposium on Theory of Computing and Systems, 1992, pp. 154–170, Lecture Notes in Computer Science #601, Springer-Verlag, 1992.
C. Dwork, M. Herlihy and O. Waarts, Bounded Round Numbers, Proceedings of the 12th Annual ACM Symposium on Principles of Distributed Computing, 1993, pp. 53–64.
D. Dolev and N. Shavit, Bounded Concurrent Time-Stamp Systems are Constructible!, Proceedings of the 21st Annual ACM Symposium on Theory of Computing, 1989, pp. 454–465.
M. P. Herlihy. Impossibility and universality results for wait-free synchronization, Proceedings of the 7th Annual ACM Symposium on Principles of Distributed Computing, 1988, pp. 276–290.
J.H. Hoepman and J. Tromp, Binary Snapshots, Proceedings of the 7th International Workshop on Distributed Algorithms and Graphs, 1993, pp. 18–25, Lecture Notes in Computer Science #725, Springer-Verlag, 1993.
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, 1990, pp. 463–492.
M. Inoue, W. Chen, T. Masuzawa and N. Tokura, Linear-Time Snapshot Using Multi-writer Multi-reader Registers, to appear in Proceedings of the 8th International Workshop on Distributed Algorithms and Graphs, 1994.
A. Israeli, M. Li, and P. Vitanyi, Simple Multireader registers using Time-Stamp schemes, Report no. CS-R8758, Center for Mathematics and Computer Science, Amsterdam, Holland, 1987.
A. Israeli and A. Shaham, Optimal Multi-Writer Multi-Reader Atomic Registers, Proceedings of the 11th Annual ACM Symposium on Principles of Distributed Computing, 1992, pp. 71–82.
A. Israeli and A. Shirazi, Efficient Snapshot Protocol Using 2-Lattice Agreement, preprint.
A. Israeli, A. Shaham and A. Shirazi, Linear-Time Snapshot Protocols for Unbalanced Systems, Proceedings of the 7th International Workshop on Distributed Algorithms and Graphs, 1993, pp. 18–25, Lecture Notes in Computer Science #725, Springer-Verlag, 1993.
L.M. Kirousis, P. Spirakis and P. Tsigas, Reading Many variables in One Atomic Operation: Solutions with Linear or Sublinear Complexity, Proceedings of the 5th International Workshop on Distributed Algorithms and Graphs, 1991, pp. 229–241, Lecture Notes in Computer Science #579, Springer-Verlag, 1992.
L. Lamport, On Interprocess Communication. Part I: Basic Formalism, Distributed Computing, Vol. 1, No. 2, 1986, pp. 77–85.
L. Lamport, On Interprocess Communication. Part II: Algorithms, Distributed Computing, Vol. 1, No. 2, 1986, pp. 86–101.
N. Lynch and M. Tuttle, Hierarchical Correctness Proofs for Distributed Algorithms, In Proceedings of the 6th Annual ACM Symposium on Principles of Distributed Computing, 1988, pp 137–151.
P. Vitanyi, and B. Awerbuch, Atomic Shared Register Access by Asynchronous Hardware, Proceedings of the 27th IEEE Symposium on Foundations of Computer Science, 1986, pp. 233–243.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Israeli, A., Shirazi, A. (1994). The time complexity of updating snapshot memories. In: van Leeuwen, J. (eds) Algorithms — ESA '94. ESA 1994. Lecture Notes in Computer Science, vol 855. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0049407
Download citation
DOI: https://doi.org/10.1007/BFb0049407
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-58434-6
Online ISBN: 978-3-540-48794-4
eBook Packages: Springer Book Archive