Practically and Theoretically Efficient Garbage Collection for Multiversioning
Yuanhao Wei, Guy E. Blelloch, Panagiota Fatourou, Eric Ruppert

TL;DR
This paper introduces new efficient garbage collection techniques for multiversion data structures, combining experimental evaluation with theoretical bounds to improve space efficiency and performance in concurrent systems.
Contribution
The paper develops two novel multiversion garbage collection methods using new concurrent version list data structures, achieving competitive performance with better space bounds.
Findings
Our fastest technique rivals existing methods in speed.
The new methods use significantly less space on certain workloads.
They provide strong theoretical space bounds, ensuring consistent performance.
Abstract
Multiversioning is widely used in databases, transactional memory, and concurrent data structures. It can be used to support read-only transactions that appear atomic in the presence of concurrent update operations. Any system that maintains multiple versions of each object needs a way of efficiently reclaiming them. We experimentally compare various existing reclamation techniques by applying them to a multiversion tree and a multiversion hash table. Using insights from these experiments, we develop two new multiversion garbage collection (MVGC) techniques. These techniques use two novel concurrent version list data structures. Our experimental evaluation shows that our fastest technique is competitive with the fastest existing MVGC techniques, while using significantly less space on some workloads. Our new techniques provide strong theoretical bounds, especially on space usage.…
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 · Data Quality and Management · Cloud Computing and Resource Management
