Proceedings of the 17th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming 2012
DOI: 10.1145/2145816.2145835
|View full text |Cite
|
Sign up to set email alerts
|

A methodology for creating fast wait-free data structures

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1

Citation Types

0
55
0

Year Published

2013
2013
2020
2020

Publication Types

Select...
3
3
2

Relationship

0
8

Authors

Journals

citations
Cited by 66 publications
(55 citation statements)
references
References 23 publications
0
55
0
Order By: Relevance
“…However, the process of cleaning up the set at thread termination (see below) requires wait-freedom as other threads may still be accessing the data structure. Helping approaches can be used to (even efficiently [19]) solve this problem. Experiments suggest that contention on these sets is low and we thus keep the implementation simple.…”
Section: Implementation Detailsmentioning
confidence: 99%
See 1 more Smart Citation
“…However, the process of cleaning up the set at thread termination (see below) requires wait-freedom as other threads may still be accessing the data structure. Helping approaches can be used to (even efficiently [19]) solve this problem. Experiments suggest that contention on these sets is low and we thus keep the implementation simple.…”
Section: Implementation Detailsmentioning
confidence: 99%
“…However, unlike segment queues [1] and k-Stacks [15], Distributed Queues [11] with Treiber stacks [29], as used in scalloc, do not require dynamically allocated administrative memory (such as sentinel nodes), which is important for building efficient memory allocators. The data structures for reusable spans within a TLAB are implemented using locks but could in principle be replaced with wait-free sets, which nowadays can be implemented almost as efficiently as their lock-free counterparts [19].…”
Section: Related Workmentioning
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%
“…It has gone through a variety of forms -from infinite-array queues [45,50] to lock-free queues [69,92] to advanced distributed lock-free [47,54] or even wait-free [55,56] variants. As concurrency has increased, so has the contention on concurrent queues and the cost of synchronization, and frequently serialization, in these designs.…”
mentioning
confidence: 99%
“…It has gone through a variety of forms -from infinite-array queues [7,4] to lock-free queues [11,14] to advanced distributed lock-free [8,5] or even wait-free [9,10] variants. As concurrency has increased, so has the contention on concurrent queues and the cost of synchronization, and frequently serialization, in these designs.…”
mentioning
confidence: 99%