🤖 AI Summary
This work proposes the first randomized algorithm that, using only hardware-supported bounded primitives such as compare-and-swap (CAS) and registers, implements m linearizable load-link/store-conditional (LL/SC) objects with constant expected step complexity under a weakly adaptive adversary. The construction achieves a space complexity of O(nτ + m) and satisfies quiescent history independence (QHI), offering both space efficiency and practicality. When m = O(1), the scheme matches the known theoretical lower bound; when m = Ω(n), it enables the deployment of the QHI dynamic hashing algorithm from STOC 2025 on existing hardware without increasing asymptotic step or space complexity, thereby bridging a critical gap in efficient software implementations.
📝 Abstract
We study the fundamental problem of implementing $m$ linearizable LL/SC objects with constant expected step complexity in a system of $n$ processes, using bounded base objects commonly available in hardware. Assuming that each process may have at most $τ$ outstanding LL operations, the best known deterministic algorithm requires $Ω(n^2τ+ m)$ base objects (CAS and registers) [Blelloch and Wei, DISC 2020]. Previously, no comparable randomized algorithm was known.
By employing randomization and FADD in addition to CAS and registers, we obtain a space bound of $O(nτ+m)$ against the weak adaptive adversary. For $m=O(1)$ this matches a lower bound for algorithms using CAS and registers [Aghazadeh and Woelfel, PODC 2015].
In addition, our object can be employed by quiescently history-independent (QHI) algorithms: Whenever no operation on the object is pending and no process has an outstanding LL operation, its internal memory state is uniquely determined by the values of the $m$ LL/SC objects. An important application is a QHI dynamic hashing algorithm presented at STOC 2025, which uses $Θ(m)$ hardware LL/SC objects to maintain a hash table of size $m$ [Attiya, Bender, Farach-Colton, Oshman, and Schiller, STOC 2025]. But LL/SC is not available in hardware, and prior to our work no wait-free or efficiently lock-free software implementation of LL/SC with similar properties was known. Our work demonstrates that one can actually implement the hashing algorithm on available hardware, without an asymptotic increase in step and space complexity, under the reasonable assumption that $m=Ω(n)$.