Abstract
This article presents a novel implementation of a snapshot object for n processes, with O(log2blogn) step complexity for update operations and O(log b) step complexity for scan operations, where b is the number of updates. The algorithm uses only reads and writes. For polynomially many updates, this is an exponential improvement on previous snapshot algorithms, which have linear step complexity. It overcomes the existing Ω(n) lower bound on step complexity by having the step complexity depend on the number of updates. The key to this implementation is the construction of a new object consisting of a pair of max registers that supports a scan operation.
Original language | English |
---|---|
Pages (from-to) | 3 |
Number of pages | 1 |
Journal | Journal of the ACM |
Volume | 62 |
Issue number | 1 |
DOIs | |
State | Published - 1 Feb 2015 |
Keywords
- Algorithms
- Concurrent objects
- Theory
- atomic snapshot
- generalized counters
- restricted-use objects
All Science Journal Classification (ASJC) codes
- Software
- Control and Systems Engineering
- Information Systems
- Hardware and Architecture
- Artificial Intelligence