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

Implicit parallelism with ordered transactions

Abstract: Implicit Parallelism with Ordered Transactions (IPOT) is an extension of sequential or explicitly parallel programming models to support speculative parallelization. The key idea is to specify opportunities for parallelization in a sequential program using annotations similar to transactions. Unlike explicit parallelism, IPOT annotations do not require the absence of data dependence, since the parallelization relies on runtime support for speculative execution. IPOT as a parallel programming model is determina… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
2

Citation Types

0
52
0

Year Published

2008
2008
2019
2019

Publication Types

Select...
4
3
2

Relationship

1
8

Authors

Journals

citations
Cited by 82 publications
(53 citation statements)
references
References 42 publications
0
52
0
Order By: Relevance
“…The runtime system is then responsible for exploiting available concurrency and verifying data access invariants in order to preserve the semantics of the serial program. Recently, speculative parallel execution was shown to be achievable through thread level speculation [17], [14], [22], [28]. These techniques speculatively execute concurrent threads and revoke execution in the presence of conflicts.…”
Section: Related Workmentioning
confidence: 99%
“…The runtime system is then responsible for exploiting available concurrency and verifying data access invariants in order to preserve the semantics of the serial program. Recently, speculative parallel execution was shown to be achievable through thread level speculation [17], [14], [22], [28]. These techniques speculatively execute concurrent threads and revoke execution in the presence of conflicts.…”
Section: Related Workmentioning
confidence: 99%
“…Software speculative parallelization was pioneered by Rauchwerger and Padua [21]. While most techniques automatically parallelized doall loops (with limited potential on full applications [15]), several techniques provided a safe interface for expressing possible parallelism [25,26] and likely dependence [27]. BOP used Unix processes to implement parallelism and dependence hints for sequential C/C++ programs [8,12].…”
Section: Related Workmentioning
confidence: 99%
“…To make it programmable, a number of systems provide primitives to mark a speculative task as a safe future [26], an ordered transaction [25], or a possibly parallel region (PPR) [8]. In this paper, we call a speculative task a PPR task and use the support system called BOP for speculation on commodity multicore machines [8,14].…”
Section: Introductionmentioning
confidence: 99%
“…The PPR code can be run in parallel with the code after the PPR. It is similar to a safe future [9] or an ordered transaction [8].…”
Section: Introductionmentioning
confidence: 99%