Efficient iteration in data-parallel programs with irregular and dynamically distributed data structures
To implement an efficient data-parallel program on a non-shared memory MIMD multicomputer, data and computations must be properly partitioned to achieve good load balance and locality of reference. Programs with irregular data reference patterns often require irregular partitions. Although good partitions may be easy to determine, they can be difficult or impossible to implement in programming languages that provide only regular data distributions, such as blocked or cyclic arrays. We are developing Onyx, a programming system that provides a shared memory model of distributed data structures and extends the concept of data distribution to include irregular and dynamic distributions. This provides a powerful means to specify irregular partitions. Perhaps surprisingly, programs using it can also execute efficiently. In this paper, we describe and evaluate the Onyx implementation of a model problem that repeatedly executes an irregular but fixed data reference pattern. On an NCUBE hypercube, the speed of the Onyx implementation is comparable to that of carefully handwritten message-passing code.
- Research Organization:
- Pacific Northwest Lab., Richland, WA (USA)
- Sponsoring Organization:
- DOE/NE
- DOE Contract Number:
- AC06-76RL01830
- OSTI ID:
- 6779587
- Report Number(s):
- PNL-SA-17937; CONF-900874--4; ON: DE91000417; CNN: CCR-8619663; CCR-9807666
- Country of Publication:
- United States
- Language:
- English
Similar Records
Efficient hypercube algorithms
Image template matching on MIMD hypercube multicomputers