Abstract
Obstruction-free implementations of concurrent objects are optimized for the common case where there is no step contention, and were recently advocated as a solution to the costs associated with synchronization without locks. In this article, we study this claim and this goes through precisely defining the notions of obstruction-freedom and step contention. We consider several classes of obstruction-free implementations, present corresponding generic object implementations, and prove lower bounds on their complexity. Viewed collectively, our results establish that the worst-case operation time complexity of obstruction-free implementations is high, even in the absence of step contention. We also show that lock-based implementations are not subject to some of the time-complexity lower bounds we present.
Original language | English |
---|---|
Article number | 24 |
Journal | Journal of the ACM |
Volume | 56 |
Issue number | 4 |
DOIs | |
State | Published - 1 Jun 2009 |
Keywords
- Lower bounds
- Memory contention
- Perturbable objects
- Shared memory
- Solo-fast implementations
- Step contention
ASJC Scopus subject areas
- Software
- Control and Systems Engineering
- Information Systems
- Hardware and Architecture
- Artificial Intelligence