2011
DOI: 10.1145/2038037.1941585
|View full text |Cite
|
Sign up to set email alerts
|

Wait-free queues with multiple enqueuers and dequeuers

Abstract: The queue data structure is fundamental and ubiquitous. Lockfree versions of the queue are well known. However, an important open question is whether practical wait-free queues exist. Until now, only versions with limited concurrency were proposed. In this paper we provide a design for a practical wait-free queue. Our construction is based on the highly efficient lock-free queue of Michael and Scott. To achieve wait-freedom, we employ a prioritybased helping scheme in which faster threads help the slower peers… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
43
0

Year Published

2012
2012
2023
2023

Publication Types

Select...
3
3
1

Relationship

0
7

Authors

Journals

citations
Cited by 39 publications
(43 citation statements)
references
References 25 publications
0
43
0
Order By: Relevance
“…An alternative bounded variant has also been proposed by Tsigas and Zhang (TZqueue) [92], which uses a slightly different mechanism but performs similarly due to its use of contended CAS for committing operations. It also serves as the basis for a variety of later lock-free queues including the wait-free queues presented by Kogan and Petrank [55,56], which offer even stronger progress guarantees, but with a cost that increases with each additional thread. Queues like these are also common components of relaxed queues [47,54].…”
Section: Concurrent Data Structuresmentioning
confidence: 99%
“…An alternative bounded variant has also been proposed by Tsigas and Zhang (TZqueue) [92], which uses a slightly different mechanism but performs similarly due to its use of contended CAS for committing operations. It also serves as the basis for a variety of later lock-free queues including the wait-free queues presented by Kogan and Petrank [55,56], which offer even stronger progress guarantees, but with a cost that increases with each additional thread. Queues like these are also common components of relaxed queues [47,54].…”
Section: Concurrent Data Structuresmentioning
confidence: 99%
“…Since queues are widely used in multithreaded programs for communication, there are a wide array of studies on concurrent lock-free queues [14,16,21,23,33]. Most of these studies focus on multiple-producer and/or multiple-consumer queues.…”
Section: Related Workmentioning
confidence: 99%
“…However, these queues often have limited performance, as a large portion of work has to be done to avoid ABA problem [22]. For example, a single enqueue operation may take more than one microsecond [14].…”
Section: Related Workmentioning
confidence: 99%
See 2 more Smart Citations