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

Nested parallelism in transactional memory

Abstract: This paper investigates adding transactions with nested parallelism and nested transactions to a dynamically multithreaded parallel programming language that generates only series-parallel programs. We describe XConflict, a data structure that facilitates conflict detection for a software transactional memory system which supports transactions with nested parallelism and unbounded nesting depth. For languages that use a Cilk-like work-stealing scheduler, XConflict answers concurrent conflict queries in O(1) ti… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
52
0

Year Published

2009
2009
2024
2024

Publication Types

Select...
6
1

Relationship

0
7

Authors

Journals

citations
Cited by 42 publications
(52 citation statements)
references
References 18 publications
0
52
0
Order By: Relevance
“…Each transaction can then access its metadata and its parent's metadata directly from the thread header. For parallel nesting (i.e., each child transaction runs in its own thread) [2,5], a global data structure, where a child can find its parent's metadata, can be added.…”
Section: Limitationsmentioning
confidence: 99%
“…Each transaction can then access its metadata and its parent's metadata directly from the thread header. For parallel nesting (i.e., each child transaction runs in its own thread) [2,5], a global data structure, where a child can find its parent's metadata, can be added.…”
Section: Limitationsmentioning
confidence: 99%
“…Interaction between threads can occur within lock-based critical sections but not within transactions. (Concurrency within transactions [6] is not considered here. )…”
Section: Reference Implementationsmentioning
confidence: 99%
“…We refer readers to [2,14] for additional discussions. Definitions and concepts: Each transaction is assigned a transaction ID (TID), a positive integer.…”
Section: Semantics Of Concurrent Nestingmentioning
confidence: 99%
“…One of the critical performance bottlenecks of NesTM is repeated read-set validation, where the same memory object must be repeatedly validated across different nesting levels [3]. Since this performance overhead increases linearly with the nesting depth, it limits the applications for which NesTM can improve performance [2,3]. Furthermore, NesTM barriers are more complicated, impacting performance even for toplevel transactions.…”
Section: Nestmmentioning
confidence: 99%
See 1 more Smart Citation