Proceedings of the 2016 International Conference on Parallel Architectures and Compilation 2016
DOI: 10.1145/2967938.2967959
|View full text |Cite
|
Sign up to set email alerts
|

Speculatively Exploiting Cross-Invocation Parallelism

Abstract: Automatic parallelization has shown promise in producing scalable multi-threaded programs for multi-core architectures. Most existing automatic techniques parallelize independent loops and insert global synchronization between loop invocations. For programs with many loop invocations, frequent synchronization often becomes the performance bottleneck. Some techniques exploit cross-invocation parallelism to overcome this problem. Using static analysis, they partition iterations among threads to avoid crossthread… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1

Citation Types

0
1
0

Year Published

2020
2020
2020
2020

Publication Types

Select...
2

Relationship

1
1

Authors

Journals

citations
Cited by 2 publications
(1 citation statement)
references
References 51 publications
(49 reference statements)
0
1
0
Order By: Relevance
“…Checkpoints and Validation: Checkpoints are used to validate speculative memory accesses across workers and to save the current program state if no misspeculation is detected. Instead of using a separate validator thread [18,36], Perspective employs a decentralized validation system, as in Privateer. When a worker reaches an iteration marked with a checkpoint operation, it acquires a lock to a shared checkpoint object, maps the checkpoint object to its virtual memory space for detection of disallowed overlap with other workers, and then adds its own memory state to the object.…”
Section: Runtimementioning
confidence: 99%
“…Checkpoints and Validation: Checkpoints are used to validate speculative memory accesses across workers and to save the current program state if no misspeculation is detected. Instead of using a separate validator thread [18,36], Perspective employs a decentralized validation system, as in Privateer. When a worker reaches an iteration marked with a checkpoint operation, it acquires a lock to a shared checkpoint object, maps the checkpoint object to its virtual memory space for detection of disallowed overlap with other workers, and then adds its own memory state to the object.…”
Section: Runtimementioning
confidence: 99%