Lower and upper bounds for single-scanner snapshot implementations
Distributed Computing(2016)
摘要
We present a collection of upper and lower bounds on the complexity of asynchronous, wait-free, linearizable, single-scanner snapshot implementations from read–write registers. We argue that at least m registers are needed to implement a single-scanner snapshot with m components and we prove that, in space-optimal implementations, SCANS execute (m^2) steps. We present an algorithm that runs in O(m^2) steps and uses m+1 registers. We also present three implementations (namely, T-Opt, RT and RT-Opt) that beat the (m^2) lower bound by using more registers. Specifically, T-Opt has step complexity O (1) for UPDATE and O ( m ) for SCAN. This step complexity is optimal, but the number of registers that T-Opt uses is unbounded. We then present interesting recycling techniques to bound the number and the size of registers used, resulting in RT and RT-Opt. Specifically, RT-Opt, which has optimal step complexity, uses O ( mn ) bounded-size registers, where n is the total number of processes. Our implementations are the first with step complexities that are (linear or quadratic) functions only of m (and not of n ). Moreover, T-Opt and RT-Opt are the first implementations with optimal step complexity.
更多查看译文
关键词
Snapshots,Single-scanner,Multi-writer,Atomic objects,Wait-freedom,Linearizability,Asynchronous,Distributed algorithms,Shared memory,Step optimal algorithms
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络