A runtime data mapping scheme for irregular problems
- 2 January 2003
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
Abstract
In scalable multiprocessor systems, high performance demands that computational load be balanced evenly among processors and that interprocessor communication be limited as much as possible. In this paper, the authors study the problem of automatically choosing data distributions for irregular problems. Irregular problems are programs where the data access pattern cannot be determined during compilation. The authors describe a method by which data arrays can be automatically mapped at runtime. The mapping is based on the computational patterns in one or more user-specified loops. A distributed memory compiler generates code that, at runtime, generates a distributed data structure to represent the computational pattern of the chosen loop. This computational pattern is used to determine how data arrays are to be partitioned. The compiler generates code to pass the distributed data structure to a partitioner. The work described is being pursued in the context of the CRPC Fortran D project.<>Keywords
This publication has 7 references indexed in Scilit:
- Parallelizing loops with indirect array references or pointersPublished by Springer Nature ,2006
- Index domain alignment: minimizing cost of cross-referencing between distributed arraysPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Multiprocessors and run‐time compilationConcurrency: Practice and Experience, 1991
- Data optimization: Allocation of arrays to reduce communication on SIMD machinesJournal of Parallel and Distributed Computing, 1990
- Load balancing loosely synchronous problems with a neural networkPublished by Association for Computing Machinery (ACM) ,1988
- Principles of runtime support for parallel processorsPublished by Association for Computing Machinery (ACM) ,1988
- A Partitioning Strategy for Nonuniform Problems on MultiprocessorsIEEE Transactions on Computers, 1987