Affiliation:
1. Technion - Israel Institute of Technology
2. Institute of Science and Technology Austria
Abstract
Concurrent sets with range query operations are highly desirable in applications such as in-memory databases. However, few set implementations offer range queries. Known techniques for augmenting data structures with range queries (or operations that can be used to build range queries) have numerous problems that limit their usefulness. For example, they impose high overhead or rely heavily on garbage collection. In this work, we show how to augment data structures with highly efficient range queries, without relying on garbage collection. We identify a property of epoch-based memory reclamation algorithms that makes them ideal for implementing range queries, and produce three algorithms, which use locks, transactional memory and lock-free techniques, respectively. Our algorithms are applicable to more data structures than previous work, and are shown to be highly efficient on a large scale Intel system.
Funder
Israel Science Foundation
Global Affairs Canada
Natural Sciences and Engineering Research Council of Canada
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Reference27 articles.
1. Atomic snapshots of shared memory
2. A. Agarwal Z. Liu E. Rosenthal and V. Saraph. Linearizable iterators for concurrent data structures. CoRR abs/1705.08885 2017. URL http://arxiv.org/abs/1705.08885. A. Agarwal Z. Liu E. Rosenthal and V. Saraph. Linearizable iterators for concurrent data structures. CoRR abs/1705.08885 2017. URL http://arxiv.org/abs/1705.08885.
3. Concurrent updates with RCU
4. Partial snapshot objects
Cited by
16 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Opportunities and Limitations of Hardware Timestamps in Concurrent Data Structures;2023 IEEE International Parallel and Distributed Processing Symposium (IPDPS);2023-05
2. Intermediate Value Linearizability: A Quantitative Correctness Criterion;Journal of the ACM;2023-04-18
3. Wait-Free Updates and Range Search Using Uruv;Lecture Notes in Computer Science;2023
4. DHash: Dynamic Hash Tables With Non-Blocking Regular Operations;IEEE Transactions on Parallel and Distributed Systems;2022-12-01
5. A GPU Multiversion B-Tree;Proceedings of the International Conference on Parallel Architectures and Compilation Techniques;2022-10-08