2013
DOI: 10.1145/2517327.2442522
|View full text |Cite
|
Sign up to set email alerts
|

Compiler aided manual speculation for high performance concurrent data structures

Abstract: Speculation is a well-known means of increasing parallelism among concurrent methods that are usually but not always independent. Traditional nonblocking data structures employ a particularly restrictive form of speculation. Software transactional memory (STM) systems employ a much more general---though typically blocking---form, and there is a wealth of options in between. Using several different concurrent data structures as examples, we show that manual addition of speculation to traditional lock-… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1

Citation Types

0
2
0

Year Published

2014
2014
2020
2020

Publication Types

Select...
2
1
1

Relationship

0
4

Authors

Journals

citations
Cited by 4 publications
(2 citation statements)
references
References 21 publications
0
2
0
Order By: Relevance
“…Optimistic software techniques behave similarly, but use software techniques (e.g., seqlocks [1]) to detect conflicts. The required changes to critical sections can be achieved via compiler support in some cases [13], but are manual in this paper.…”
Section: Introductionmentioning
confidence: 99%
“…Optimistic software techniques behave similarly, but use software techniques (e.g., seqlocks [1]) to detect conflicts. The required changes to critical sections can be achieved via compiler support in some cases [13], but are manual in this paper.…”
Section: Introductionmentioning
confidence: 99%
“…We also observe that many search data structures [9,45] employ a search phase, followed by an update phase that performs its writes after validating selected locations accessed in the search phase. These implementations are likely to benefit from the elimination of redundant loads enabled by our transformation.…”
Section: Optimizing Prefix Transactionsmentioning
confidence: 92%