English
Related papers

Related papers: Concurrent Hash Tables: Fast and General?(!)

200 papers

This work unifies insights from the systems and functional programming communities, in order to enable compositional reasoning about software which is nonetheless efficiently realizable in hardware. It exploits a correspondence between…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-03-18 Thomas Dickerson

Genomic data sets are growing dramatically as the cost of sequencing continues to decline and small sequencing devices become available. Enormous community databases store and share this data with the research community, but some of these…

Contraction Hierarchies (CH) (Geisberger et al., 2008) is one of the most widely used algorithms for shortest-path queries on road networks. Compared to Dijkstra's algorithm, CH enables orders of magnitude faster query performance through a…

Data Structures and Algorithms · Computer Science 2025-04-24 Zijin Wan , Xiaojun Dong , Letong Wang , Enzuo Zhu , Yan Gu , Yihan Sun

With hash tables being one of the most used data structures, Lehmann, Sanders and Walzer propose a novel, light-weight hash table, referred to as Slick Hash. Their idea is to hit a sweet spot between space consumption and speed. Building on…

Data Structures and Algorithms · Computer Science 2024-10-01 Jan Oberst

In this paper, we revisit one of the simplest problems in data structures: the task of inserting elements into an open-addressed hash table so that elements can later be retrieved with as few probes as possible. We show that, even without…

Data Structures and Algorithms · Computer Science 2025-03-03 Martin Farach-Colton , Andrew Krapivin , William Kuszmaul

Verification of concurrent data structures is one of the most challenging tasks in software verification. The topic has received considerable attention over the course of the last decade. Nevertheless, human-driven techniques remain…

Programming Languages · Computer Science 2018-11-12 Roland Meyer , Sebastian Wolff

Surrogate models can play a pivotal role in enhancing performance in contemporary High-Performance Computing applications. Cache-based surrogates use already calculated simulation results to interpolate or extrapolate further simulation…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-10-22 Max Lübke , Marco De Lucia , Steffen Christgau , Stefan Petri , Bettina Schnor

Data intensive applications on clusters often require requests quickly be sent to the node managing the desired data. In many applications, one must look through a sorted tree structure to determine the responsible node for accessing or…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 Xiaoqin Ma , Gene Cooperman

One of the main advantages of Prolog is its potential for the implicit exploitation of parallelism and, as a high-level language, Prolog is also often used as a means to explicitly control concurrent tasks. Tabling is a powerful…

Programming Languages · Computer Science 2018-06-04 Miguel Areias , Ricardo Rocha

Locality-sensitive hashing~[Indyk,Motwani'98] is a classical data structure for approximate nearest neighbor search. It allows, after a close to linear time preprocessing of the input dataset, to find an approximately nearest neighbor of…

Data Structures and Algorithms · Computer Science 2024-06-18 Michael Kapralov , Mikhail Makarov , Christian Sohler

Data structures used in software development have inbuilt redundancy to improve software reliability and to speed up performance. Examples include a Doubly Linked List which allows a faster deletion due to the presence of the previous…

Databases · Computer Science 2025-08-05 Pratyush Mahapatra , Mark D. Hill , Michael M. Swift

Priority queues with parallel access are an attractive data structure for applications like prioritized online scheduling, discrete event simulation, or greedy algorithms. However, a classical priority queue constitutes a severe bottleneck…

Data Structures and Algorithms · Computer Science 2021-07-23 Marvin Williams , Peter Sanders , Roman Dementiev

Dynamic load balancing lies at the heart of distributed caching. Here, the goal is to assign objects (load) to servers (computing nodes) in a way that provides load balancing while at the same time dynamically adjusts to the addition or…

Data Structures and Algorithms · Computer Science 2020-06-17 John Chen , Ben Coleman , Anshumali Shrivastava

In this work, we aim to study when learned models are better hash functions, particular for hash-maps. We use lightweight piece-wise linear models to replace the hash functions as they have small inference times and are sufficiently general…

Databases · Computer Science 2021-07-06 Ibrahim Sabek , Kapil Vaidya , Dominik Horn , Andreas Kipf , Tim Kraska

Dynamic Connectivity is a fundamental algorithmic graph problem, motivated by a wide range of applications to social and communication networks and used as a building block in various other algorithms, such as the bi-connectivity and the…

Data Structures and Algorithms · Computer Science 2021-05-19 Alexander Fedorov , Nikita Koval , Dan Alistarh

We present Crossword, a flexible consensus protocol for dynamic data-heavy workloads, a rising challenge in the cloud where replication payload sizes span a wide spectrum and introduce sporadic bandwidth stress. Crossword applies…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-09-10 Guanzhou Hu , Yiwei Chen , Andrea Arpaci-Dusseau , Remzi Arpaci-Dusseau

In this paper we analyze, evaluate, and improve the performance of training generalized linear models on modern CPUs. We start with a state-of-the-art asynchronous parallel training algorithm, identify system-level performance bottlenecks,…

Machine Learning · Computer Science 2018-12-20 Nikolas Ioannou , Celestine Dünner , Kornilios Kourtis , Thomas Parnell

Many concurrent algorithms require processes to perform fetch-and-add operations on a single memory location, which can be a hot spot of contention. We present a novel algorithm called Aggregating Funnels that reduces this contention by…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-03-04 Younghun Roh , Yuanhao Wei , Eric Ruppert , Panagiota Fatourou , Siddhartha Jayanti , Julian Shun

The design and implementation of efficient concurrent data structures have seen significant attention. However, most of this work has focused on concurrent data structures providing good \emph{worst-case} guarantees. In real workloads,…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-08-04 Vitaly Aksenov , Dan Alistarh , Alexandra Drozdova , Amirkeivan Mohtashami

We present a new blocking linearizable stack implementation which utilizes sharding and fetch&increment to achieve significantly better performance than all existing concurrent stacks. The proposed implementation is based on a novel…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-01-09 Ajay Singh , Nikos Metaxakis , Panagiota Fatourou