Issue No. 04 - October (1991 vol. 2)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/71.97903
<p>A solution to the problem of partitioning data for distributed memory machines is discussed. The solution uses a matrix notation to describe array accesses in fully parallel loops, which allows the derivation of sufficient conditions for communication-free partitioning (decomposition) of arrays. A series of examples that illustrate the effectiveness of the technique for linear references, the use of loop transformations in deriving the necessary data decompositions, and a formulation that aids in deriving heuristics for minimizing a communication when communication-free partitions are not feasible are presented.</p>
Index Termscompile time; data partitioning; data distribution; distributed memory machines; matrixnotation; array accesses; parallel loops; sufficient conditions; communication-freepartitioning; linear references; loop transformations; data decompositions; heuristics;matrix algebra; parallel programming; program compilers
P. Sadayappan and J. Ramanujam, "Compile-Time Techniques for Data Distribution in Distributed Memory Machines," in IEEE Transactions on Parallel & Distributed Systems, vol. 2, no. , pp. 472-482, 1991.