Proceedings of the 28th ACM Symposium on Parallelism in Algorithms and Architectures 2016
DOI: 10.1145/2935764.2935774
|View full text |Cite
|
Sign up to set email alerts
|

Concurrent Search Data Structures Can Be Blocking and Practically Wait-Free

Abstract: We argue that there is virtually no practical situation in which one should seek a "theoretically wait-free" algorithm at the expense of a state-of-the-art blocking algorithm in the case of search data structures: blocking algorithms are simple, fast, and can be made "practically wait-free".We draw this conclusion based on the most exhaustive study of blocking search data structures to date. We consider (a) different search data structures of different sizes, (b) numerous uniform and non-uniform workloads, rep… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

1
10
0

Year Published

2018
2018
2023
2023

Publication Types

Select...
3
3

Relationship

1
5

Authors

Journals

citations
Cited by 8 publications
(11 citation statements)
references
References 53 publications
1
10
0
Order By: Relevance
“…Apart from these theoretical studies, the performance of concurrent lock-free search data structures are studied and investigated through empirical studies in [14], [8]. In [7], it is shown experimentally that the conflicts between threads occur very rarely in the context of concurrent search data structures, which is confirmed by our analysis.…”
Section: Related Worksupporting
confidence: 63%
“…Apart from these theoretical studies, the performance of concurrent lock-free search data structures are studied and investigated through empirical studies in [14], [8]. In [7], it is shown experimentally that the conflicts between threads occur very rarely in the context of concurrent search data structures, which is confirmed by our analysis.…”
Section: Related Worksupporting
confidence: 63%
“…The update may have only reached the volatile CPU cache and can be lost upon a power failure or crash. To guarantee atomicity and durability of a pointer update, we update the forward pointer in HSIT using the flush-on-read technique [26,84,85]. Prism encodes a dirty bit to an unused bit into a forward pointer in HSIT entry.…”
Section: Cross-media Concurrency Controlmentioning
confidence: 99%
“…The remainder of this subsection assumes fine-grained locking, where entries are individually locked. Hash table structures are used for the CS and PIT similar to most NDN software routers [5]- [7] as the probability of lock contention is low, as analyzed by David and Guerraoui [14].…”
Section: B Mutual Exclusion According To Compare-and-swap Instructionmentioning
confidence: 99%