13 citations · 25 across the 6 of their papers we have counts for
7 papers · 1 filter
Scalable Range Locks for Scalable Address Spaces and Beyond
Alex Kogan, Dave Dice, Shady Issa
Range locks are a synchronization construct designed to provide concurrent access to multiple threads (or processes) to disjoint parts of a shared resource. Originally conceived in…
Fissile Locks
Dave Dice, Alex Kogan
Classic test-and-test (TS) mutual exclusion locks are simple, and enjoy high performance and low latency of ownership transfer under light or no contention. However, they do not sc…
Avoiding Scalability Collapse by Restricting Concurrency
Dave Dice, Alex Kogan
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 thre…
Compact NUMA-Aware Locks
Dave Dice, Alex Kogan
Modern multi-socket architectures exhibit non-uniform memory access (NUMA) behavior, where access by a core to data cached locally on a socket is much faster than access to data ca…
TWA -- Ticket Locks Augmented with a Waiting Array
Dave Dice, Alex Kogan
The classic ticket lock consists of ticket and grant fields. Arriving threads atomically fetch-and-increment ticket and then wait for grant to become equal to the value returned by…
BRAVO -- Biased Locking for Reader-Writer Locks
David Dice, Alex Kogan
Designers of modern reader-writer locks confront a difficult trade-off related to reader scalability. Locks that have a compact memory representation for active readers will typica…