Crystalline: Fast and Memory Efficient Wait-Free Reclamation
Ruslan Nikolaev, Binoy Ravindran

TL;DR
Crystalline is a novel wait-free memory reclamation scheme that combines high performance, memory efficiency, and wait-freedom, outperforming existing methods especially in multi-threaded environments.
Contribution
We introduce Crystalline, a wait-free reclamation approach that guarantees progress, balanced workload, and high efficiency using widely available hardware instructions.
Findings
Crystalline achieves superior throughput compared to EBR as thread count increases.
It guarantees wait-freedom even with dynamic thread recycling.
Exhibits outstanding scalability and memory efficiency in experiments.
Abstract
Historically, memory management based on lock-free reference counting was very inefficient, especially for read-dominated workloads. Thus, approaches such as epoch-based reclamation (EBR), hazard pointers (HP), or a combination thereof have received significant attention. EBR exhibits excellent performance but is blocking due to potentially unbounded memory usage. In contrast, HP are non-blocking and achieve good memory efficiency but are much slower. Moreover, HP are only lock-free in the general case. Recently, several new memory reclamation approaches such as WFE and Hyaline have been proposed. WFE achieves wait-freedom, but is less memory efficient and suffers from suboptimal performance in oversubscribed scenarios; Hyaline achieves higher performance and memory efficiency, but lacks wait-freedom. We present a new wait-free memory reclamation scheme, Crystalline, that…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed systems and fault tolerance · Parallel Computing and Optimization Techniques · Real-Time Systems Scheduling
