Proceedings of the 1986 SIGPLAN Symposium on Compiler Construction 1986
DOI: 10.1145/12276.13329
|View full text |Cite
|
Sign up to set email alerts
|

Direct parallelization of call statements

Abstract: Asynchronous CALL statements are necessary in order to use more than one processor in current multiprocessors. Detecting CALL statements that may be executed in parallel is one way to fill this need. This approach requires accurate approximations of called procedure effects. This is achieved by using new objects called Region and Ezecution Contezt. An algorithm to find asynchronous CALL statements is given. It involves a new dependence test to compute data dependence graphs, which provides better results than … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
44
0

Year Published

1990
1990
2013
2013

Publication Types

Select...
5
2
2

Relationship

0
9

Authors

Journals

citations
Cited by 122 publications
(44 citation statements)
references
References 8 publications
0
44
0
Order By: Relevance
“…After a suitable grain size is obtained, the compiler must determine any data dependences between pairs of nodes by array section analysis to generate the macro task graph. Where dependences exist, the compiler must further determine the reuse between the two nodes by applying array region analysis [9,10,11]. Thus a macro task graph G(N,E) consists of a set of nodes N = {n 1 , n 2 , ..,n m } connected by a set of edges E, each of which is denoted by e ij .…”
Section: Transformation Of Openmp To Macro-task Graphmentioning
confidence: 99%
“…After a suitable grain size is obtained, the compiler must determine any data dependences between pairs of nodes by array section analysis to generate the macro task graph. Where dependences exist, the compiler must further determine the reuse between the two nodes by applying array region analysis [9,10,11]. Thus a macro task graph G(N,E) consists of a set of nodes N = {n 1 , n 2 , ..,n m } connected by a set of edges E, each of which is denoted by e ij .…”
Section: Transformation Of Openmp To Macro-task Graphmentioning
confidence: 99%
“…We found that only two benchmarks (btrix and phods) take advantage of this optimization. However, we believe that a more sophisticated (inter-procedural [19]) analysis can find more opportunities for this optimization in large codes that use many temporary arrays. Figure 15 summarizes the energy impact of our optimizations in each code.…”
Section: Evaluation Of Loop Splittingmentioning
confidence: 99%
“…Sections represent a restricted set of the most commonly occurring array access patterns; single elements, rows, columns, grids, and their higher dimensional analogs. The various approaches to interprocedural array side-effect analysis must make tradeoffs between precision and efficiency [3,4,10,16,23]. Section analysis loses precision because it only represents a selection of array structures and it merges sections for all references to a variable in a procedure into a single section.…”
Section: Interprocedural Analysismentioning
confidence: 99%