Optimal evaluation of array expressions on massively parallel machines

Siddhartha Chatterjee,John R. Gilbert,Robert Schreiber,Shang-Hua Teng
DOI: https://doi.org/10.1145/200994.201004
IF: 1.714
1995-01-01
ACM Transactions on Programming Languages and Systems
Abstract:We investigate the problem of evaluating Fortran 90-style array expressions on massively parallel distributed-memory machines. On such a machine, an elementwise operation can be performed in constant time for arrays whose corresponding elements are in the same processor. If the arrays are not aligned in this manner, the cost of aligning them is part of the cost of evaluating the expression tree. The choice of where to perform the operation then affects this cost. We describe the communication cost of the parallel machine theoretically as a metric space; we model the alignment problem as that of finding a minimum-cost embedding of the expression tree into this space. We present algorithms based on dynamic programming that solve the embedding problem optimally for several communication cost metrics: multidimensional grids and rings, hypercubes, fat-trees, and the discrete metric. We also extend our approach to handle operations that change the shape of the arrays.
computer science, software engineering
What problem does this paper attempt to address?