Title :
An implementation framework for HPF distributed arrays on message-passing parallel computer systems
Author :
Van Reeuwijk, Kees ; Denissen, Will ; Sips, Henk J. ; Paalvast, Edwin M R M
Author_Institution :
Adv. Sch. of Comput. & Imaging, Delft Univ. of Technol., Netherlands
fDate :
9/1/1996 12:00:00 AM
Abstract :
Data parallel languages, like High Performance Fortran (HPF), support the notion of distributed arrays. However, the implementation of such distributed array structures and their access on message passing computers is not straightforward. This holds especially for distributed arrays that are aligned to each other and given a block-cyclic distribution. In this paper, an implementation framework is presented for HPF distributed arrays on message passing computers. Methods are presented for efficient (in space and time) local index enumeration, local storage, and communication. Techniques for local set enumeration provide the basis for constructing local iteration sets and communication sets. It is shown that both local set enumeration and local storage schemes can be derived from the same equation. Local set enumeration and local storage schemes are shown to be orthogonal, i.e., they can be freely combined. Moreover, for linear access sequences generated by our enumeration methods, the local address calculations can be moved out of the enumeration loop, yielding efficient local memory address generation. The local set enumeration methods are implemented by using a relatively simple general transformation rule for absorbing ownership tests. This transformation rule can be repeatedly applied to absorb multiple ownership tests. Performance figures are presented for local iteration overhead, a simple communication pattern, and storage efficiency
Keywords :
FORTRAN; data structures; message passing; parallel languages; HPF; communication sets; distributed arrays; implementation framework; local iteration sets; local memory address generation; message passing computers; message-passing parallel computer systems; Concurrent computing; Distributed computing; Equations; High performance computing; Message passing; Multidimensional systems; Optimizing compilers; Parallel languages; Testing;
Journal_Title :
Parallel and Distributed Systems, IEEE Transactions on