Revocable locks for non-blocking programming

13 years 12 months ago
Revocable locks for non-blocking programming
In this paper we present a new form of revocable lock that streamlines the construction of higher level concurrency abstractions such as atomic multi-word heap updates. The key idea is to expose revocation by displacing the previous lock holder’s execution to a safe address. This provides mutual exclusion without needing to block threads. This brings many simplifications, often removing the need for dynamic memory management and letting us strip operations from common-case execution paths. As well as streamlining algorithms’ design, our results show that the technique leads to improved performance and scalability across a range of levels of contention. Categories and Subject Descriptors
Tim Harris, Keir Fraser
Added 26 Jun 2010
Updated 26 Jun 2010
Type Conference
Year 2005
Authors Tim Harris, Keir Fraser
Comments (0)