Skip to content

Efficient Randomized LL/SC that Preserves History Independence

Dante Bencivenga, Homa Habashi, Philipp Woelfel

cs.DCarXiv:2608.12946

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 Ω(n2τ+ m) base objects (CAS objects and registers) [Blelloch and Wei, DISC 2020]. Previously, no comparable randomized algorithm was known. By employing randomization and FADD objects in addition to CAS objects, 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 objects 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 recent QHI dynamic hashing algorithm, 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 efficient 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).

Create a lesson