|
ABSTRACT
Data parallel languages like High Performance Fortran (HPF) are emerging as the architecture independent mode of programming distributed memory parallel machines. In this paper, we present the interprocedural optimizations required for compiling applications having irregular data access patterns, when coded in such data parallel languages. We have developed an Interprocedural Partial Redundancy Elimination (IPRE) algorithm for optimized placement of runtime preprocessing routine and collective communication routines inserted for managing communication in such codes. We also present two new interprocedural optimizations, placement of scatter routines and use of coalescing and incremental routines. We then describe how program slicing can be used for further applying IPRE in more complex scenarios. We have done a preliminary implementation of the schemes presented here using the Fortran D compilation system as the necessary infrastructure. We present experimental results from two codes compiled using our system to demonstrate the efficacy of the presented schemes.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
 |
2
|
Gagan Agrawal , Joel Saltz , Raja Das, Interprocedural partial redundancy elimination and its application to distributed memory compilation, Proceedings of the ACM SIGPLAN 1995 conference on Programming language design and implementation, p.258-269, June 18-21, 1995, La Jolla, California, United States
|
 |
3
|
|
| |
4
|
Gagan Agrawal, Alan Sussman, and Joel Saltz. Efficient runtime support for parallelizing block structured applications. In Proceedings of the Scalable High Performance Computing Conference (SHPCC-94), pages 158--167. IEEE Computer Society Press, May 1994.
|
| |
5
|
|
| |
6
|
Alfred V. Aho , Ravi Sethi , Jeffrey D. Ullman, Compilers: principles, techniques, and tools, Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 1986
|
| |
7
|
|
| |
8
|
Zeki Bozkus , Alok Choudhary , Geoffrey Fox , Tomasz Haupt , Sanjay Ranka , Min-You Wu, Compiling Fortran 90D/HPF for distributed memory MIMD computers, Journal of Parallel and Distributed Computing, v.21 n.1, p.15-26, April 1994
[doi> 10.1006/jpdc.1994.1039]
|
| |
9
|
B. R. Brooks, R. E. Bruccoleri, B. D. Olafson, D. J. States, S. Swaminathan, and M. Karplus. Charmm: A program for macromolecular energy, minimization, and dy namics calculations. Journal of Computational Chemistry, 4:187, 1983.
|
 |
10
|
|
| |
11
|
A. Choudhary, G. Fox, S. Hiranandani, K. Kennedy, C. Koelbel, S. Ranka, and J. Saltz. Software support for irregular and loosely synchronous problems. Computing Systems in Engineering, 3(1--4):43--52, 1992. Papers presented at the Symposium on High-Performance Computing for Flight Vehicles, December 1992.
|
 |
12
|
|
| |
13
|
R. Das, D. J. Mavriplis, J. Saltz, S. Gupta, and R. Ponnusamy. The design and implementation of a parallel unstructured Euler solver using software primitives. AIAA Journal, 32(3):489--496, March 1994.
|
| |
14
|
|
| |
15
|
Raja Das, Joel Saltz, Ken Kennedy, and Paul Havlak. Index array flattening through program transformation. Submitted to PLDI '95, November 1994.
|
 |
16
|
|
| |
17
|
|
| |
18
|
|
| |
19
|
|
| |
20
|
|
| |
21
|
M. W. Hall , S. Hiranandani , K. Kennedy , C.-W. Tseng, Interprocedural compilation of Fortran D for MIMD distributed-memory machines, Proceedings of the 1992 ACM/IEEE conference on Supercomputing, p.522-534, November 16-20, 1992, Minneapolis, Minnesota, United States
|
| |
22
|
R. v. Hanxleden, K. Kennedy, and J. Saltz. Value-based distributions in Fortran D -- a preliminary report. Technical Report CRPC-TR93365-S, Center for Research on Parallel Computation, Rice University, December 1993. Submitted to Journal of Programming Languages - Special Issue on Compiling and Run-Time Issues for Distributed Address Space Machines.
|
| |
23
|
Reinhard v. Hanxleden. Handling irregular problems with Fortran D - a preliminary report. In Proceedings of the Fourth Workshop on Compilers for Parallel Computers, Delft, The Netherlands, December 1993. Also available as CRPC Technical Report CRPC-TR93339-S.
|
 |
24
|
|
 |
25
|
|
 |
26
|
|
| |
27
|
|
| |
28
|
Charles H. Koelbel , David B. Loveman , Robert S. Schreiber , Guy L. Steele, Jr. , Mary E. Zosel, The high performance Fortran handbook, MIT Press, Cambridge, MA, 1994
|
| |
29
|
|
| |
30
|
|
| |
31
|
|
 |
32
|
|
 |
33
|
|
 |
34
|
|
| |
35
|
Shamik D. Sharma , Ravi Ponnusamy , Bongki Moon , Yuan-Shin Hwang , Raja Das , Joel Saltz, Run-time and compile-time support for adaptive irregular problems, Proceedings of the 1994 conference on Supercomputing, p.97-106, December 1994, Washington, D.C., United States
|
| |
36
|
|
| |
37
|
Mark Weiser. Program slicing. IEEE Transactions on Software Engineering, 10:352--357, 1984.
|
| |
38
|
|
CITED BY 10
|
|
Kevin B. Theobald , Gagan Agrawal , Rishi Kumar , Gerd Heber , Guang R. Gao , Paul Stodghill , Keshav Pingali, Landing CG on EARTH: a case study of fine-grained multithreading on an evolutionary path, Proceedings of the 2000 ACM/IEEE conference on Supercomputing (CDROM), p.4-es, November 04-10, 2000, Dallas, Texas, United States
|
|
|
|
|
|
Junpei Niwa , Takashi Matsumoto , Kei Hiraki, Comparative study of page-based and segment-based software DSM through compiler optimization, Proceedings of the 14th international conference on Supercomputing, p.284-295, May 08-11, 2000, Santa Fe, New Mexico, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|