English
Related papers

Related papers: Non-blocking Patricia Tries with Replace Operation…

200 papers

This report describes an implementation of a non-blocking concurrent shared-memory hash trie based on single-word compare-and-swap instructions. Insert, lookup and remove operations modifying different parts of the hash trie can be run…

Data Structures and Algorithms · Computer Science 2017-09-19 Aleksandar Prokopec , Phil Bagwell , Martin Odersky

This paper presents the first implementation of a search tree data structure in an asynchronous shared-memory system that provides a wait-free algorithm for executing range queries on the tree, in addition to non-blocking algorithms for…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-05-15 Panagiota Fatourou , Eric Ruppert

We present a new non-blocking doubly-linked list implementation for an asynchronous shared-memory system. It is the first such implementation for which an upper bound on amortized time complexity has been proved. In our implementation,…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-08-11 Niloufar Shafiei

It is becoming increasingly difficult to improve the performance of a a single process (thread) on a computer due to physical limitations. Modern systems use multi-core processors in which multiple processes (threads) may run concurrently.…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-11-05 Jordan Malek

A binary trie is a sequential data structure for a dynamic set on the universe $\{0,\dots,u-1\}$ supporting Search with $O(1)$ worst-case step complexity, and Insert, Delete, and Predecessor operations with $O(\log u)$ worst-case step…

Data Structures and Algorithms · Computer Science 2025-09-04 Jeremy Ko

We start by summarizing the recently proposed implementation of the first non-blocking concurrent interpolation search tree (C-IST) data structure. We then analyze the individual operations of the C-IST, and show that they are correct and…

Data Structures and Algorithms · Computer Science 2020-01-03 Aleksandar Prokopec , Trevor Brown , Dan Alistarh

Building concurrent spatial trees is more complicated than binary search trees since a space hierarchy should be preserved during modifications. We present a non-blocking quadtree-quadboost-that supports concurrent insert, remove, move, and…

Data Structures and Algorithms · Computer Science 2016-07-13 Keren Zhou , Guangming Tan , Wei Zhou

We define a new set of primitive operations that greatly simplify the implementation of non-blocking data structures in asynchronous shared-memory systems. The new operations operate on a set of Data-records, each of which contains multiple…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-12-20 Trevor Brown , Faith Ellen , Eric Ruppert

We present an efficient and practical lock-free implementation of a concurrent deque that is disjoint-parallel accessible and uses atomic primitives which are available in modern computer systems. Previously known lock-free algorithms of…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 Håkan Sundell , Philippas Tsigas

While a lot of research in distributed computing has covered solutions for self-stabilizing computing and topologies, there is far less work on self-stabilization for distributed data structures. Considering crashing peers in peer-to-peer…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-10-10 Till Knollmann , Christian Scheideler

Graph algorithms applied in many applications, including social networks, communication networks, VLSI design, graphics, and several others, require dynamic modifications -- addition and removal of vertices and/or edges -- in the graph.…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-01-16 Bapi Chatterjee , Sathya Peri , Muktikanta Sa , Nandini Singhal

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…

Data Structures and Algorithms · Computer Science 2020-11-02 Jesper Larsson Träff , Manuel Pöter

In this paper, we present several improvements in the parallelization of the in-place merge algorithm, which merges two contiguous sorted arrays into one with an O(T) space complexity (where T is the number of threads). The approach divides…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-05-27 Berenger Bramas , Quentin Bramas

This paper proposes a general framework for adding linearizable iterators to a class of data structures that implement set operations. We introduce a condition on set operations, called local consistency, which informally states that set…

Data Structures and Algorithms · Computer Science 2018-03-02 Archita Agarwal , Zhiyu Liu , Eli Rosenthal , Vikram Saraph

In this paper we present a novel algorithm for concurrent lock-free internal binary search trees (BST) and implement a Set abstract data type (ADT) based on that. We show that in the presented lock-free BST algorithm the amortized step…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-05-12 Bapi Chatterjee , Nhan Nguyen , Philippas Tsigas

We propose a parallel algorithm for local, on the fly, model checking of a fragment of CTL that is well-suited for modern, multi-core architectures. This model-checking algorithm takes bene t from a parallel state space construction…

Logic in Computer Science · Computer Science 2013-02-01 Rodrigo Tacla Saad , Silvano Dal Zilio , Bernard Berthomieu

Contrary to common belief, a recent work by Ellen, Gelashvili, Shavit, and Zhu has shown that computability does not require multicore architectures to support "strong" synchronization instructions like compare-and-swap, as opposed to…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-05-09 Rati Gelashvili , Idit Keidar , Alexander Spiegelman , Roger Wattenhofer

Using (a,b)-trees as an example, we show how to perform a parallel split with logarithmic latency and parallel join, bulk updates, intersection, union (or merge), and (symmetric) set difference with logarithmic latency and with information…

Data Structures and Algorithms · Computer Science 2016-05-12 Yaroslav Akhremtsev , Peter Sanders

The \emph{Order-Maintenance} (OM) data structure maintains a total order list of items for insertions, deletions, and comparisons. As a basic data structure, OM has many applications, such as maintaining the topological order, core numbers,…

Data Structures and Algorithms · Computer Science 2024-10-15 Bin Guo , Emil Sekerinski

Considering asynchronous shared memory systems in which any number of processes may crash, this work identifies and formally defines relaxations of queues and stacks that can be non-blocking or wait-free while being implemented using only…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-11-05 Armando Castañeda , Sergio Rajsbaum , Michel Raynal
‹ Prev 1 2 3 10 Next ›