TY - GEN
T1 - A multi-grain parallelizing compilation scheme for OSCAR (Optimally scheduled advanced multiprocessor)
AU - Kasahara, H.
AU - Honda, H.
AU - Mogi, A.
AU - Ogura, A.
AU - Fujiwara, K.
AU - Narita, S.
N1 - Publisher Copyright:
© 1992, Springer Verlag. All rights reserved.
PY - 1992
Y1 - 1992
N2 - This paper proposes a multi-grain parallelizing compilation scheme for Fortran programs. The scheme hierarchically exploits parallelism among coarse grain tasks, such as, loops, subroutines or basic blocks, among medium grain tasks like loop iterations and among near fine grain tasks like statements. Parallelism among the coarse grain tasks called the macrotasks is exploited by carefully analyzing control dependences and data dependences. The macrotasks are dynamically assigned to processor clusters to cope with run-time uncertainties, such as, conditional branches among the macrotasks and variation of execution time of each macrotask. The parallel processing of macrotasks is called the macro-dataflow computation. A macrotask composed of a Do-all loop, which is assigned onto a processor cluster, is processed in the medium grain in parallel by processors inside the processor cluster. A macrotask composed of a sequential loop or a basic block is processed on a processor cluster in the near fine grain by using static scheduling. A macrotask composed of subroutine or a large sequential loop is processed by hierarchically applying macro-dataflow computation inside a processor cluster. Performance of the proposed scheme is evaluated on a multiprocessor system named OSCAR. The evaluation shows that the multi-grain parallel processing effectively exploits parallelism from Fortran programs.
AB - This paper proposes a multi-grain parallelizing compilation scheme for Fortran programs. The scheme hierarchically exploits parallelism among coarse grain tasks, such as, loops, subroutines or basic blocks, among medium grain tasks like loop iterations and among near fine grain tasks like statements. Parallelism among the coarse grain tasks called the macrotasks is exploited by carefully analyzing control dependences and data dependences. The macrotasks are dynamically assigned to processor clusters to cope with run-time uncertainties, such as, conditional branches among the macrotasks and variation of execution time of each macrotask. The parallel processing of macrotasks is called the macro-dataflow computation. A macrotask composed of a Do-all loop, which is assigned onto a processor cluster, is processed in the medium grain in parallel by processors inside the processor cluster. A macrotask composed of a sequential loop or a basic block is processed on a processor cluster in the near fine grain by using static scheduling. A macrotask composed of subroutine or a large sequential loop is processed by hierarchically applying macro-dataflow computation inside a processor cluster. Performance of the proposed scheme is evaluated on a multiprocessor system named OSCAR. The evaluation shows that the multi-grain parallel processing effectively exploits parallelism from Fortran programs.
UR - http://www.scopus.com/inward/record.url?scp=85011367933&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85011367933&partnerID=8YFLogxK
U2 - 10.1007/bfb0038671
DO - 10.1007/bfb0038671
M3 - Conference contribution
AN - SCOPUS:85011367933
SN - 9783540554226
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 283
EP - 297
BT - Languages and Compilers for Parallel Computing - 4th International Workshop, Proceedings
A2 - Banerjee, Utpal
A2 - Gelernter, David
A2 - Nicolau, Alex
A2 - Padua, David
PB - Springer Verlag
T2 - 4th Workshop on Languages and Compilers for Parallel Computing, 1991
Y2 - 7 August 1991 through 9 August 1991
ER -