Communication Generation for Block-Cyclic Distributions

Data-parallel languages such as High Performance Fortran, Vienna Fortran and Fortran D include directives such as alignment and distribution that describe how data and computation are mapped onto the processors in a distributed-memory multiprocessor. A compiler for HPF that generates code for each processor has to compute the sequence of local memory addresses accessed by each processor and the sequence of send and receives for a given processor to access non-local data. In this paper, we present a novel approach for the generation of communication sets that exploits a pttern of send-receive index pairs. In addition, we present an algorithm for code generation. Experimental results demonstrate the viability of this technique.

[1]  Ken Kennedy,et al.  A linear-time algorithm for computing the memory access sequence in data-parallel programs , 1995, PPOPP '95.

[2]  Ken Kennedy,et al.  Communication Generation for Cyclic(K) Distributions , 1996 .

[3]  J. Ramanujam,et al.  Non-unimodular transformations of nested loops , 1992, Proceedings Supercomputing '92.

[4]  James M. Stichnoth Efficient Compilation of Array Statements for Private Memory Multicomputers , 1993 .

[5]  Sandeep K. S. Gupta,et al.  On Compiling Array Expressions for Efficient Execution on Distributed-Memory Machines , 1993, 1993 International Conference on Parallel Processing - ICPP'93.

[6]  J. Ramanujam,et al.  Fast Address Sequence Generation for Data-Parallel Programs Using Integer Lattices , 1995, LCPC.

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

[8]  J. Ramanujam,et al.  An Efficient Compile-Time Approach to Compute Address Sequences in Data Parallel Programs , 1995 .

[9]  Michael Wolfe,et al.  High performance compilers for parallel computing , 1995 .

[10]  David R. O'Hallaron,et al.  Languages, Compilers and Run-Time Systems for Scalable Computers , 1998, Springer US.

[11]  J. Ramanujam,et al.  Communication Generation and Optimization for HPF , 1996 .

[12]  J. Ramanujam,et al.  Generalized Overlap Regions for Communication Optimization in Data-Parallel Programs , 1996, LCPC.

[13]  John R. Gilbert,et al.  Generating local addresses and communication sets for data-parallel programs , 1993, PPOPP '93.

[14]  Ken Kennedy,et al.  Fortran D Language Specification , 1990 .

[15]  Sandeep K. S. Gupta,et al.  On Compiling Array Expressions for Efficient Execution on Distributed-Memory Machines , 1993, 1993 International Conference on Parallel Processing - ICPP'93.

[16]  J. Ramanujam,et al.  Efficient Computation of Address Sequences in Data Parallel Programs Using Closed Forms for Basis Vectors , 1996, J. Parallel Distributed Comput..

[17]  Barbara M. Chapman,et al.  Programming in Vienna Fortran , 1992, Sci. Program..