Efficient Randomized LL/SC that Preserves History Independence
Dante Bencivenga, Homa Habashi, Philipp Woelfel
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
Related papers
Replication-Aware Placement of Functions and Data in the Edge-Cloud Continuum
Dario d'Abate, Matteo Cenzato, Matteo Briscini et al.
Ermes: a Stateful Serverless Platform for the Edge-to-Cloud Continuum
Matteo Cenzato, Dario d'Abate, Arianna Dragoni et al.
Fluid Notarization: Verifiable Evolution of Concurrently Edited Structured Documents
Amos Brocco, Giuliano Gremlich, Roberto Guidi
Ask the Tool, Don't Guess: Agent Tool Calls Hold Their Progress, and the Serving System Should Read It
Yipeng Liu, Yingqiang Zhang, Feifei Li et al.
A Distributed Computing Framework for Satellite Swarms
Ezra Fielding, Clement Demazure, Guthemberg Silvestre et al.
Vigil: Accountable Liveness against Selective Silence
Jiawei Cheng, Huiping Sun, Rui Zhou et al.