A data structure for managing parallel operations

The data distribution directives of High Performance Fortran (HPF) provide a high-level way of describing the location of regularly distributed data which is acted on in parallel. Parallel data is acted on by parallel computations. The distribution of parallel computations is not specified in HPF, but is left up to the compiler/spl minus/typically, the owner-computes rule is used, not always the best choice. We present a set of data structures which describe data layout, consistent both with HPF directives and with more general data optimization techniques; we also present an analogous set of data structures which describe the distribution of parallel computations. These two sets of data structures are related by a set of constraints which apply when data is being accessed locally. This provides a coherent way to represent parallel data and parallel computations on an equal basis and thereby enable a compiler to optimize both kinds of parallelism.<<ETX>>

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

[2]  Guy L. Steele,et al.  Massively parallel data optimization , 1988, Proceedings., 2nd Symposium on the Frontiers of Massively Parallel Computation.

[3]  K. Knobe,et al.  Data optimization: minimizing residual interprocessor data motion on SIMD machines , 1990, [1990 Proceedings] The Third Symposium on the Frontiers of Massively Parallel Computation.

[4]  Guy L. Steele,et al.  Data Optimization: Allocation of Arrays to Reduce Communication on SIMD Machines , 1990, J. Parallel Distributed Comput..

[5]  Guy L. Steele,et al.  Compiling Fortran 8x array features for the connection machine computer system , 1988, PPEALS '88.