×

Communication set generations with CSD calculus and expression-rewriting framework. (English) Zbl 0930.68039

Summary: In this paper, we present a new framework based on expression-rewritings and a calculus form called Common-Stride Descriptor (CSD) calculus to generate the local enumeration set and communication set for High Performance Fortran (HPF) programs with “Block-Cyclic” distributions. Our framework is a practical software framework, and can handle the general cases so that the communication set of HPF programs of block-cyclic distributions with two-level alignments (or multiple-level alignments), multi-dimensional arrays, array intrinsic functions (such as Transpose operation), and affine indices and axis exchanges in the array subscript, can be calculated in a systematic way with a sound software foundation. Previously, existing works do not report a software framework to solve a problem with such general cases. In addition, our expression-rewriting framework is based on a new representative form, CSD, to describe the regularity of the access patterns of HPF programs with block-cyclic distribution. We also demonstrate a calculus of CSD that CSD is closed under intersection and normalization, which helps the process of calculating local enumeration and communication sets of HPF programs with block-cyclic distributions. We also utilize the characteristics of CSD calculus to provide a global-to-local mapping function for multiple level alignments and block-cyclic distributions. Experimental results show that our software scheme not only can be easily implemented in the practice, but also is with good efficiency.

MSC:

68N20 Theory of compilers and interpreters
Full Text: DOI