Applications with varying array access patterns require to dynamically
change array mappings on distributed-memory parallel machines. HPF (H
igh Performance Fortran) provides such remappings explicitly through r
ealign and redistribute directives and implicitly at procedure calls a
nd returns. However, such features are left out of HPF 2.0 for efficie
ncy reasons. This paper presents a new technique for compiling HPF rem
appings onto message-passing parallel architectures. First, useless re
mappings that appear naturally are removed. Second, the SPMD generated
code takes advantage of replication to shorten the remapping time. Co
mmunication is proved optimal: a minimal number of messages, containin
g only the required data, is sent over the network. The technique is f
ully implemented in our HPF compiler and was experimented on a DEC Alp
ha farm. (C) 1996 Academic Press, Inc.