Compiler and runtime support for out-of-core HPF programs

This paper describes the design of a compiler which can translate out-of-core programs written in a data parallel language like HPF. Such a compiler is required for compiling large scale scientific applications, such as the Grand Challenge applications, which deal with enormous quantities of data. We propose a framework by which a compiler together with appropriate runtime support can translate an out-of-core HPF program to a message passing node program with explicit parallel I/O. We describe the basic model of the compiler and the various transformations made by the compiler. We also discuss the runtime routines used by the compiler for I/O and communication. In order to minimize I/O, the runtime support system can reuse data already fetched into memory. The working of the compiler is illustrated using two out-of-core applications, namely a Laplace equation solver and LU Decomposition, together with performance results on the Intel Touchstone Delta.

[1]  Barbara M. Chapman,et al.  Supercompilers for parallel and vector computers , 1990, ACM Press frontier series.

[2]  E. DeBenedictis,et al.  nCUBE parallel I/O software , 1992, Eleventh Annual International Phoenix Conference on Computers and Communication [1992 Conference Proceedings].

[3]  Prithviraj Banerjee,et al.  Automating Parallelism of Regular Computations for Distributed-Memory Multicomputers in the Paradigm Compiler , 1993, 1993 International Conference on Parallel Processing - ICPP'93.

[4]  Chau-Wen Tseng An optimizing Fortran D compiler for MIMD distributed-memory machines , 1993 .

[5]  Alok N. Choudhary,et al.  An experimental performance evaluation of Touchstone Delta Concurrent File System , 1993, ICS '93.

[6]  P. Mehrotra,et al.  Concurrent file operations in a high performance , 1992, Supercomputing '92.

[7]  Alok N. Choudhary,et al.  Design and evaluation of primitives for parallel I/O , 1993, Supercomputing '93. Proceedings.

[8]  Manish Gupta,et al.  Automatic Data Partitioning on Distributed Memory Multicomputers , 1992 .

[9]  Dror G. Feitelson,et al.  Parallel access to files in the Vesta file system , 1993, Supercomputing '93. Proceedings.

[10]  D. G. Feitelson,et al.  Parallel access to files in the Vesta file system , 1993, Supercomputing '93.

[11]  Dennis Gannon,et al.  Distributed pC++ Basic Ideas for an Object Parallel Language , 1993, Sci. Program..

[12]  Peter Brezany,et al.  Concurrent file operations in a high performance FORTRAN , 1992, Proceedings Supercomputing '92.

[13]  Alok Choudhary,et al.  Language and Compiler Support for Parallel I/O , 1994 .

[14]  Rice UniversityCORPORATE,et al.  High performance Fortran language specification , 1993 .

[15]  Geoffrey C. Fox,et al.  Fortran 90D intrinsic functions on distributed memory machines: implementation and scalability , 1993, [1993] Proceedings of the Twenty-sixth Hawaii International Conference on System Sciences.

[16]  Alok N. Choudhary,et al.  High-performance I/O for massively parallel computers: problems and prospects , 1994, Computer.

[17]  S. Saini,et al.  Enhancing applications performance on Intel Paragon through dynamic memory allocation , 1993, Proceedings of Scalable Parallel Libraries Conference.

[18]  Alok Choudhary,et al.  Runtime compilation techniques for data partitioning and communication schedule reuse , 1993, Supercomputing '93.

[19]  Marina C. Chen,et al.  Prototyping Fortran-90 compilers for massively parallel machines , 1992, PLDI '92.

[20]  Geoffrey C. Fox,et al.  Fortran 90D/HPF compiler for distributed memory MIMD computers: design, implementation, and performance results , 1993, Supercomputing '93.

[21]  Marina C. Chen,et al.  Compiling Communication-Efficient Programs for Massively Parallel Machines , 1991, IEEE Trans. Parallel Distributed Syst..