Multiverse: Transactional Memory with Dynamic Multiversioning
Abstract
Software transactional memory (STM) allows programmers to easily implement concurrent data structures. STMs simplify atomicity. Recent STMs can achieve good performance for some workloads but they have some limitations. In particular, STMs typically cannot support long-running reads which access a large number of addresses that are frequently updated. Multiversioning is a common approach used to support this type of workload. However, multiversioning is often expensive and can reduce the performance of transactions where versioning is not necessary.
Fields of Study & Subjects
Distributed systems and fault tolerance
Advanced Database Systems and Queries
Parallel Computing and Optimization Techniques
Publication details
- Journal / source
- ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming
- Pages
- 40–52
- Publication date
- 28 January 2026