Compilation techniques for block-cyclic distributions

  • Authors:
  • Seema Hiranandani;Ken Kennedy;John Mellor-Crummey;Ajay Sethi

  • Affiliations:
  • Department of Computer Science, Rice University, Houston, TX;Department of Computer Science, Rice University, Houston, TX;Department of Computer Science, Rice University, Houston, TX;Department of Computer Science, Rice University, Houston, TX

  • Venue:
  • ICS '94 Proceedings of the 8th international conference on Supercomputing
  • Year:
  • 1994

Quantified Score

Hi-index 0.00

Visualization

Abstract

Compilers for data-parallel languages such as Fortran D and High-Performance Fortran use data alignment and distribution specifications as the basis for translating programs for execution on MIMD distributed-memory machines. This paper describes techniques for generating efficient code for programs that use block-cyclic distributions. These techniques can be applied to programs with symbolic loop bounds, symbolic array dimensions, and loops with non-unit strides. We present algorithms for computing the data elements that need to be communicated among processors both for loops with unit and non-unit strides, a linear-time algorithm for computing the memory access sequence for loops with non-unit strides, and experimental results for a hand-compiled test case using block-cyclic distributions