Generalized Wake-Up: Amortized Shared Memory Lower Bounds for Linearizable Data Structures
Abstract
In this work, we define the generalized wake-up problem, , for a shared memory asynchronous system with processes. Informally, the problem, which is parametrized by an increasing sequence , asks that at least processes identify that at least other processes have "woken up" and taken at least one step for each . We prove that any solution to that uses read/write/compare-and-swap variables requires at least steps to solve. The generalized wake-up lower bound serves as a technique for proving lower bounds on the amortized complexities of operations on many linearizable concurrent data types through reductions. We illustrate this with several examples: (1) We show an amortized lower bound on the complexity of implementing counters and {\em fetch-and-increment} objects which match the complexities of the algorithms given by Jayanti and Ellen & Woelfel; the lower bound even extends to a significantly relaxed version of the object. (2) We show an amortized lower bound on the complexity of the pop, dequeue, and deleteMin operations of a concurrent stack, queue, and priority queue respectively that hold even if the data type definitions are significantly relaxed; (3) In another paper, we have shown an amortized lower bound on the complexity of operations on a union-find object of size (when operations are performed).
Cite
@article{arxiv.2207.07561,
title = {Generalized Wake-Up: Amortized Shared Memory Lower Bounds for Linearizable Data Structures},
author = {Siddhartha Visveswara Jayanti},
journal= {arXiv preprint arXiv:2207.07561},
year = {2022}
}
Comments
8 pages, in Telugu