A more Pragmatic Implementation of the Lock-free, Ordered, Linked List

10/29/2020
by   Jesper Larsson Träff, et al.
0

The lock-free, ordered, linked list is an important, standard example of a concurrent data structure. An obvious, practical drawback of textbook implementations is that failed compare-and-swap (CAS) operations lead to retraversal of the entire list (retries), which is particularly harmful for such a linear-time data structure. We alleviate this drawback by first observing that failed CAS operations under some conditions do not require a full retry, and second by maintaining approximate backwards pointers that are used to find a closer starting position in the list for operation retry. Experiments with both a worst-case deterministic benchmark, and a standard, randomized, mixed-operation throughput benchmark on three shared-memory systems (Intel Xeon, AMD EPYC, SPARC-T5) show practical improvements ranging from significant, to dramatic, several orders of magnitude.

READ FULL TEXT

page 7

page 9

research
07/27/2023

Wait-Free Updates and Range Search using Uruv

CRUD operations, along with range queries make a highly useful abstract ...
research
03/24/2019

Lock-Free Transactional Adjacency List

Adjacency lists are frequently used in graphing or map based application...
research
12/31/2020

Bundled References: An Abstraction for Highly-Concurrent Linearizable Range Queries

We present bundled references, a new building block to provide lineariza...
research
09/15/2022

Concurrent Size

The size of a data structure (i.e., the number of elements in it) is a w...
research
06/03/2018

Garbage Collection in Concurrent Sets

Garbage Collection in concurrent data structures, especially lock-free o...
research
05/10/2023

Coding for IBLTs with Listing Guarantees

The Invertible Bloom Lookup Table (IBLT) is a probabilistic data structu...
research
08/16/2022

New Parallel Order Maintenance Data Structure

The Order-Maintenance (OM) data structure maintains a total order list o...

Please sign up or login with your details

Forgot password? Click here to reset