A data-localization compilation scheme using partial-static task assignment for Fortran coarse-grain parallel processing
✍ Scribed by Hironori Kasahara; Akimasa Yoshida
- Publisher
- Elsevier Science
- Year
- 1998
- Tongue
- English
- Weight
- 305 KB
- Volume
- 24
- Category
- Article
- ISSN
- 0167-8191
No coin nor oath required. For personal study only.
✦ Synopsis
This paper proposes a compilation scheme for data localization using partial-static task assignment for Fortran coarse-grain parallel processing, or macro-dataflow processing, on a multiprocessor system with local memories and centralized shared memory. The data localization allows us to effectively use local memories and reduce data transfer overhead under dynamic task-scheduling environment. The proposed compilation scheme mainly consists of the following Ž . three parts: 1 loop-aligned decomposition, which decomposes each of the loops having data dependence among them into smaller loops, and groups the decomposed loops into data-localizable groups so that shared data among the decomposed loops inside each group can be passed via Ž . local memory and data transfer overhead among the groups can be minimum; 2 partial static task assignment, which gives information that the decomposed loops inside each data-localizable group are assigned to the same processor to a dynamic scheduling routine generator in the macro-dataf-Ž . low compiler; 3 parallel machine code generation, which generates parallel machine code to pass shared data inside the group through local memory and transfer data among groups through centralized shared memory. This compilation scheme has been implemented for a multiprocessor Ž . system, OSCAR Optimally SCheduled Advanced multiprocessoR , having centralized shared memory and distributed shared memory, in addition to local memory on each processor. Performance evaluation of OSCAR shows that macro-dataflow processing with the proposed