NASA NTRS · 19950003593
Array distribution in data-parallel programs
Abstract
We consider distribution at compile time of the array data in a distributed-memory implementation of a data-parallel program written in a language like Fortran 90. We allow dynamic redistribution of data and define a heuristic algorithmic framework that chooses distribution parameters to minimize an estimate of program completion time. We represent the program as an alignment-distribution graph. We propose a divide-and-conquer algorithm for distribution that initially assigns a common distribution to each node of the graph and successively refines this assignment, taking computation, realignment, and redistribution costs into account. We explain how to estimate the effect of distribution on computation cost and how to choose a candidate set of distributions. We present the results of an implementation of our algorithms on several test problems.
Keep this discovery
Explore connections, maps & timelines
Chatterjee, Siddhartha, Gilbert, John R., Schreiber, Robert, Sheffler, Thomas J.. 1994-07-01. Array distribution in data-parallel programs. https://ntrs.nasa.gov/citations/19950003593
Cite the original work for its findings. Save a collection to share your selection of sources.