English
Related papers

Related papers: A Simple and Efficient Lock-Free Hash Trie Design …

200 papers

We present and verify template algorithms for lock-free concurrent search structures that cover a broad range of existing implementations based on lists and skiplists. Our linearizability proofs are fully mechanized in the concurrent…

Programming Languages · Computer Science 2024-05-24 Nisarg Patel , Dennis Shasha , Thomas Wies

Logic programming with tabling and constraints (TCLP, tabled constraint logic programming) has been shown to be more expressive and in some cases more efficient than LP, CLP or LP + tabling. Previous designs of TCLP systems did not fully…

Programming Languages · Computer Science 2018-09-18 Joaquín Arias , Manuel Carro

We present the Cuckoo Trie, a fast, memory-efficient ordered index structure. The Cuckoo Trie is designed to have memory-level parallelism -- which a modern out-of-order processor can exploit to execute DRAM accesses in parallel -- without…

Data Structures and Algorithms · Computer Science 2022-01-25 Adar Zeitak , Adam Morrison

Efficiently computing group aggregations (i.e., GROUP BY) on modern architectures is critical for analytic database systems. Hash-based approaches in today's engines predominantly use a partitioned approach, in which incoming data is…

Databases · Computer Science 2025-09-08 Daniel Xue , Ryan Marcus

This paper considers the modelling and the analysis of the performance of lock-free concurrent search data structures. Our analysis considers such lock-free data structures that are utilized through a sequence of operations which are…

Data Structures and Algorithms · Computer Science 2018-05-15 Aras Atalar , Paul Renaud-Goud , Philippas Tsigas

Globalization of IC manufacturing has led to increased security concerns, notably IP theft. Several logic locking techniques have been developed for protecting designs, but they typically display very large overhead, and are generally…

Cryptography and Security · Computer Science 2020-05-22 Joseph Sweeney , Mohammed Zackriya , Samuel Pagliarini , Lawrence Pileggi

We study the problem of constructing concurrent objects in a setting where $P$ processes run in parallel and interact through a shared memory that is subject to write contention. Our goal is to transform hardware primitives that are subject…

Data Structures and Algorithms · Computer Science 2026-04-17 Michael A. Bender , Guy E. Blelloch , Martin Farach-Colton , Yang Hu , Rob Johnson , Rotem Oshman , Renfei Zhou

Hash tables are essential building blocks in data-intensive applications, yet existing GPU implementations often struggle with concurrent updates, high load factors, and irregular memory access patterns. We present Hive hash table, a…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-10-20 Md Sabbir Hossain Polak , David Troendle , Byunghyun Jang

Concurrent data structures often require additional memory for handling synchronization issues in addition to memory for storing elements. Depending on the amount of this additional memory, implementations can be more or less…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-01-17 Vitaly Aksenov , Nikita Koval , Petr Kuznetsov , Anton Paramonov

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

Hash tables are one of the most fundamental data structures for effectively storing and accessing sparse data, with widespread usage in domains ranging from computer graphics to machine learning. This study surveys the state-of-the-art…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-07-13 Brenton Lessley

This paper presents a new and practical approach to lock-free locks based on helping, which allows the user to write code using fine-grained locks, but run it in a lock-free manner. Although lock-free locks have been suggested in the past,…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-02-01 Naama Ben-David , Guy E. Blelloch , Yuanhao Wei

Advanced Encryption Standard (AES) implementations on Field Programmable Gate Arrays (FPGA) commonly focus on maximizing throughput at the cost of utilizing high volumes of FPGA slice logic. High resource usage limits systems' abilities to…

Cryptography and Security · Computer Science 2019-11-12 Jacob T. Grycel , Robert J. Walls

Work-stealing is a widely used technique for balancing irregular parallel workloads, and most modern runtime systems adopt lock-free work-stealing deques to reduce contention and improve scalability. However, existing algorithms are…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-03-09 Raja Sai Nandhan Yadav Kataru , Danial Davarnia , Ali Jannesari

To maximize the performance of concurrent data structures, researchers have often turned to highly complex fine-grained techniques, resulting in efficient and elegant algorithms, which can however be often difficult to understand and prove…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-12-21 Trevor Brown , William Sigouin , Dan Alistarh

In this paper, we proposed an effective and efficient multi-core shared-cache design optimization approach based on reuse-distance analysis of the data traces of target applications. Since data traces are independent of system hardware…

Performance · Computer Science 2021-09-13 Hsin-Yu Ho , Ren-Song Tsay

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

A key part of implementing high-level languages is providing built-in and default data structures. Yet selecting good defaults is hard. A mutable data structure's workload is not known in advance, and it may shift over its lifetime - e.g.,…

Programming Languages · Computer Science 2017-08-09 Chao-Hong Chen , Vikraman Choudhury , Ryan R. Newton

In this paper, we give theoretically and practically efficient implementations of Big Atomics, i.e., $k$-word linearizable registers that support the load, store, and compare-and-swap (CAS) operations. While modern hardware supports $k = 1$…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-01-14 Daniel Anderson , Guy E. Blelloch , Siddhartha Jayanti

The mutual-exclusion property of locks stands in the way to scalability of parallel programs on many-core architectures. Locks do not allow progress guarantees, because a task may fail inside a critical section and keep holding a lock that…

Programming Languages · Computer Science 2018-06-20 Johann Blieberger , Bernd Burgstaller