Constant-Time Lazy Snapshots Supporting General Queries on Concurrent Data Structures

07/05/2020
by   Naama Ben-David, et al.
0

We present a general transformation that takes any concurrent data structure written using CAS and adds wait-free linearizable query operations to it. These query operations may access arbitrary parts of the data structure, and do not interfere with the progress or running time of other operations. For example, our transformation can be used to add efficient and linearizable range queries, predecessor queries, and top-k queries to existing concurrent set data structures. We achieve this by presenting an efficient technique for taking lazy snapshots of CAS-based data structures.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
09/03/2017

Faster Concurrent Range Queries with Contention Adapting Search Trees Using Immutable Data

The need for scalable concurrent ordered set data structures with linear...
research
04/06/2020

NVTraverse: In NVRAM Data Structures, the Destination is More Important than the Journey

The recent availability of fast, dense, byte-addressable non-volatile me...
research
12/14/2017

Techniques for Constructing Efficient Lock-free Data Structures

Building a library of concurrent data structures is an essential way to ...
research
10/31/2022

EEMARQ: Efficient Lock-Free Range Queries with Memory Reclamation

Multi-Version Concurrency Control (MVCC) is a common mechanism for achie...
research
08/17/2022

Performance Anomalies in Concurrent Data Structure Microbenchmarks

Recent decades have witnessed a surge in the development of concurrent d...
research
09/15/2022

Concurrent Size

The size of a data structure (i.e., the number of elements in it) is a w...
research
10/04/2019

RDMA vs. RPC for Implementing Distributed Data Structures

Distributed data structures are key to implementing scalable application...

Please sign up or login with your details

Forgot password? Click here to reset