English
Related papers

Related papers: Scalable Range Locks for Scalable Address Spaces a…

200 papers

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

Scalable ordered maps must ensure that range queries, which operate over many consecutive keys, provide intuitive semantics (e.g., linearizability) without degrading the performance of concurrent insertions and removals. These goals are…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-10-11 Matthew Rodriguez , Vitaly Aksenov , Michael Spear

Applications running in modern multithreaded environments are sometimes \emph{over-threaded}. The excess threads do not improve performance, and in fact may act to degrade performance via \emph{scalability collapse}. Often, such software…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-06-13 Dave Dice

Range-based set reconciliation is a simple approach to efficiently computing the union of two sets over a network, based on recursively partitioning the sets and comparing fingerprints of the partitions to probabilistically detect whether a…

Cryptography and Security · Computer Science 2023-02-09 Aljoscha Meyer

Although a wide variety of handcrafted concurrent data structures have been proposed, there is considerable interest in universal approaches (henceforth called Universal Constructions or UCs) for building concurrent data structures. These…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-12-05 Ilya Kokorin , Alexander Fedorov , Trevor Brown , Vitaly Aksenov

Semaphores are a widely used and foundational synchronization and coordination construct used for shared memory multithreaded programming. They are a keystone concept, in the sense that most other synchronization constructs can be…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-04-23 Dave Dice , Alex Kogan

A challenge for programming language research is to design and implement multi-threaded low-level languages providing static guarantees for memory safety and freedom from data races. Towards this goal, we present a concurrent language…

Programming Languages · Computer Science 2010-02-05 Prodromos Gerakios , Nikolaos Papaspyrou , Konstantinos Sagonas

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

Multi-Version Concurrency Control (MVCC) is a common mechanism for achieving linearizable range queries in database systems and concurrent data-structures. The core idea is to keep previous versions of nodes to serve range queries, while…

Databases · Computer Science 2022-11-01 Gali Sheffi , Pedro Ramalhete , Erez Petrank

The most efficient algorithms for finding maximum independent sets in both theory and practice use reduction rules to obtain a much smaller problem instance called a kernel. The kernel can then be solved quickly using exact or heuristic…

Data Structures and Algorithms · Computer Science 2019-09-11 Demian Hespe , Christian Schulz , Darren Strash

Several novel industrial applications involve human control of vehicles, cranes, or mobile robots through various high-throughput feedback systems, such as Virtual Reality (VR) and tactile/haptic signals. The near real-time interaction…

Networking and Internet Architecture · Computer Science 2022-08-26 Andrea Bedin , Federico Chiariotti , Andrea Zanella

Locks are a standard mechanism for synchronizing concurrent threads. The standard lock set construction assumes that critical sections are confined to a single thread, and therefore only accounts for locks acquired within that thread.…

Programming Languages · Computer Science 2026-04-08 Martin Sulzmann

Saturated locks often degrade the performance of a multithreaded application, leading to a so-called scalability collapse problem. This problem arises when a growing number of threads circulating through a saturated lock causes the overall…

Operating Systems · Computer Science 2019-07-15 Dave Dice , Alex Kogan

In a modern distributed storage system, storage nodes are organized in racks, and the cross-rack communication dominates the system bandwidth. In We study the rack-aware storage system where all storage nodes are organized in racks and…

Information Theory · Computer Science 2022-07-18 Liyang Zhou , Zhifang Zhang

Modern program runtime is dominated by segments of repeating code called kernels. Kernels are accelerated by increasing memory locality, increasing data-parallelism, and exploiting producer-consumer parallelism among kernels - which…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-01-31 Richard Uhrie , Chaitali Chakrabarti , John Brunhaver

Distributed locking mechanisms are fundamental to ensuring data consistency and integrity in distributed systems. This paper presents a comprehensive analysis of distributed locking algorithms, focusing on their performance characteristics…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-04-07 Andre Rodriguez , William Osborn

A real-time multicore system requires delay bounds on access to shared resources. These resources include the kernel, which has potentially many non-preemptible critical sections guarded by one or more different synchronization primitives.…

Operating Systems · Computer Science 2026-05-28 Shriram Raja , Richard West

Blockchain technology constitutes a paradigm shift in the way we conceive distributed architectures. A Blockchain system lets us build platforms where data are immutable and tamper-proof, with some constraints on the throughput and the…

Software Engineering · Computer Science 2023-08-31 Marco Fiore , Marina Mongiello , Giuseppe Acciani

Real-time scheduling and locking protocols are fundamental facilities to construct time-critical systems. For parallel real-time tasks, predictable locking protocols are required when concurrent sub-jobs mutually exclusive access to shared…

Operating Systems · Computer Science 2020-07-03 Maolin Yang , Zewei Chen , Xu Jiang , Nan Guan , Hang Lei

Emerging real-time applications have driven the transition to multicore embedded systems, where tasks must share resources due to functional demands and limited availability. These resources, whether local or global, are protected within…

Operating Systems · Computer Science 2025-12-29 Nan Chen , Xiaotian Dai , Tong Cheng , Alan Burns , Iain Bate , Shuai Zhao