Transactional Composition of Nonblocking Data Structures

01/03/2023
by   Wentao Cai, et al.
0

This paper introduces nonblocking transaction composition (NBTC), a new methodology for atomic composition of nonblocking operations on concurrent data structures. Unlike previous software transactional memory (STM) approaches, NBTC leverages the linearizability of existing nonblocking structures, reducing the number of memory accesses that must be executed together, atomically, to only one per operation in most cases (these are typically the linearizing instructions of the constituent operations). Our obstruction-free implementation of NBTC, which we call Medley, makes it easy to transform most nonblocking data structures into transactional counterparts while preserving their liveness and high concurrency. In our experiments, Medley outperforms Lock-Free Transactional Transform (LFTT), the fastest prior competing methodology, by 40–170 Medley's transactional composition, relative to separate operations performed in succession, is roughly 2.2×. For persistent data structures, we observe that failure atomicity for transactions can be achieved "almost for free" with epoch-based periodic persistence. Toward that end, we integrate Medley with nbMontage, a general system for periodically persistent data structures. The resulting txMontage provides ACID transactions and achieves throughput up to two orders of magnitude higher than that of the OneFile persistent STM system.

READ FULL TEXT

page 1

page 2

page 3

page 4

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
09/29/2020

Montage: A General System for Buffered Durably Linearizable Data Structures

The recent emergence of fast, dense, nonvolatile main memory suggests th...
research
06/29/2020

Transactions on Red-black and AVL trees in NVRAM

Byte-addressable non-volatile memory (NVRAM) supports persistent storage...
research
07/07/2021

Persistent Software Combining

We study the performance power of software combining in designing persis...
research
01/11/2023

Adaptive Data Path Selection for Durable Transaction in GPU Persistent Memory

The new non-volatile memory technology relies on data recoverability to ...
research
01/02/2020

Using Nesting to Push the Limits of Transactional Data Structure Libraries

Transactional data structure libraries (TDSL) combine the ease-of-progra...
research
02/26/2023

Asynchronous Persistence with ASAP

Supporting atomic durability of updates for persistent memories is typic...

Please sign up or login with your details

Forgot password? Click here to reset