2012
DOI: 10.2200/s00340ed1v01y201201cac019
|View full text |Cite
|
Sign up to set email alerts
|

Automatic Parallelization: An Overview of Fundamental Compiler Techniques

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

0
25
0

Year Published

2013
2013
2021
2021

Publication Types

Select...
3
3
2

Relationship

0
8

Authors

Journals

citations
Cited by 27 publications
(25 citation statements)
references
References 183 publications
0
25
0
Order By: Relevance
“…If yes, it will branch directly to the loop body started at line 22. Otherwise, it will increment the profile counter as in (lines [16][17][18][19][20][21] Actually, the instrumentation phase is not handled concurrently with the loop analysis phase for two reasons. First, the loop instrumentation process requires inserting extra instructions to handle the increment of counters.…”
Section: Instrumentation Phasementioning
confidence: 99%
See 1 more Smart Citation
“…If yes, it will branch directly to the loop body started at line 22. Otherwise, it will increment the profile counter as in (lines [16][17][18][19][20][21] Actually, the instrumentation phase is not handled concurrently with the loop analysis phase for two reasons. First, the loop instrumentation process requires inserting extra instructions to handle the increment of counters.…”
Section: Instrumentation Phasementioning
confidence: 99%
“…In such concept, the GPU can handle complicated computation on data stream model. This programming model is called SPMD (Single Program Multiple Data) [17]. Where, the SPMD execution consists of multiple copies of the same program each independently executes against its own data set.…”
Section: Figure 6: Ir Code Of Instrumentation With Runtime Checksmentioning
confidence: 99%
“…Flow-sensitivity helps particularly in the case of loops, for instance, where a load and store may only alias across iterations of some outer loop, or where a store and load may alias only when the store comes before the load inside the same iteration. Such loop-level aliasing information is a common feature of auto-parallelizing compilers [15], and although forthcoming in LLVM, it is not currently supported. LOOP-OPT.…”
Section: Increasing Path Lengthmentioning
confidence: 99%
“…However, programs written for general purpose processors-particularly those written in an objectoriented style with frequent updates to object member variables in heap memory-do not generally have such large regions. These programs often contain many ambiguous "may-alias" memory references of the same variety as those that inhibit automatic parallelization by compilers [15]. For these programs, the semantically idempotent regions are not generally large enough to usefully amortize the register pressure overheads of preserving their idempotence throughout the compilation process.…”
Section: Decreasing Path Lengthmentioning
confidence: 99%
“…In a loop, the cyclically dependent statements form a Strongly Connected Component or an SCC[20]. Statements in an SCC cannot therefore be separated (distributed) in different loops.…”
mentioning
confidence: 99%