z-logo
open-access-imgOpen Access
Array distribution in data-parallel programs
Author(s) -
Siddhartha Chatterjee,
John R. Gilbert,
Robert Schreiber,
Thomas J. Sheffler
Publication year - 1994
Publication title -
lecture notes in computer science
Language(s) - English
Resource type - Book series
SCImago Journal Rank - 0.249
H-Index - 400
eISSN - 1611-3349
pISSN - 0302-9743
ISBN - 3-540-58868-X
DOI - 10.1007/bfb0025872
Subject(s) - computer science , optimizing compiler , compile time , computation , parallel computing , compiler , graph , fortran , call graph , theoretical computer science , program slicing , distributed memory , joins , algorithm , programming language , shared memory , software
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.

The content you want is available to Zendy users.

Already have an account? Click here to sign in.
Having issues? You can contact us here
Accelerating Research

Address

John Eccles House
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom