Managing distributed shared arrays in a bulk‐synchronous parallel programming environment

NestStep is a parallel programming language for the BSP (bulk‐hronous parallel) programming model. In this article we describe the concept of distributed shared arrays in NestStep and its implementation on top of MPI. In particular, we present a novel method for runtime scheduling of irregular, direct remote accesses to sections of distributed shared arrays. Our method, which is fully parallelized, uses conventional two‐sided message passing and thus avoids the overhead of a standard implementation of direct remote memory access based on one‐sided communication. The main prerequisite is that the given program is structured in a BSP‐compliant way. Copyright © 2004 John Wiley & Sons, Ltd.