Demonstration of automatic data partitioning techniques for parallelizing compilers on multicomputers
- 1 March 1992
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Parallel and Distributed Systems
- Vol. 3 (2) , 179-193
- https://doi.org/10.1109/71.127259
Abstract
An approach to the problem of automatic data partitioning is introduced. The notion of constraints on data distribution is presented, and it is shown how, based on performance considerations, a compiler identifies constraints to be imposed on the distribution of various data structures. These constraints are then combined by the compiler to obtain a complete and consistent picture of the data distribution scheme, one that offers good performance in terms of the overall execution time. Results of a study performed on Fortran programs taken from the Linpack and Eispack libraries and the Perfect Benchmarks to determine the applicability of the approach to real programs are presented. The results are very encouraging, and demonstrate the feasibility of automatic data partitioning for programs with regular computations that may be statically analyzed, which covers an extremely significant class of scientific application programs.<>Keywords
This publication has 19 references indexed in Scilit:
- Generating explicit communication from shared-memory program referencesPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Index domain alignment: minimizing cost of cross-referencing between distributed arraysPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- A message passing coprocessor for distributed memory multicomputersPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Compiler techniques for data partitioning of sequentially iterated parallel loopsPublished by Association for Computing Machinery (ACM) ,1990
- Process decomposition through locality of referencePublished by Association for Computing Machinery (ACM) ,1989
- PARAFRASE-2: AN ENVIRONMENT FOR PARALLELIZING, PARTITIONING, SYNCHRONIZING, AND SCHEDULING PROGRAMS ON MULTIPROCESSORSInternational Journal of High Speed Computing, 1989
- A methodology for parallelizing programs for multicomputers and complex memory multiprocessorsPublished by Association for Computing Machinery (ACM) ,1989
- Compiling programs for distributed-memory multiprocessorsThe Journal of Supercomputing, 1988
- Programming for ParallelismComputer, 1987
- Memory Storage Patterns in Parallel ProcessingPublished by Springer Nature ,1987