Automatic Parallel Program Generation and Optimization from Data Decompositions


Data decomposition is probably the most successful method for generating parallel programs. In this paper a general framework is described for the automatic generation of parallel programs based on a separately specified decomposition of the data. To this purpose, programs and data decompositions are expressed in a calculus, called Vcal. It is shown that by rewriting calculus expressions, Single Program Multiple Data (SPMD) code can be generated for shared-memory as well as distributed-memory parallel processors. Optimizations are derived for certain classes of access functions to data structures, subject to block, scatter, and block/scatter decompositions. The presented calculus and transformations are language independent.

Extracted Key Phrases

1 Figure or Table

Cite this paper

@inproceedings{Paalvast1991AutomaticPP, title={Automatic Parallel Program Generation and Optimization from Data Decompositions}, author={Edwin M. R. M. Paalvast and Henk J. Sips and Arjan J. C. van Gemund}, booktitle={ICPP}, year={1991} }