1993 · 53 citations · 8 references
ComputingComputer ScienceHigh-performance ComputingAlgorithmsParallel AlgorithmsParallel ComputingData ParallelismDistributed ComputingDistributed Memory ParallelismDistributed Memory ProgrammingDistributed Memory SystemsParallel ArchitecturesData-parallel AlgorithmsDistributed MemoryDistributed Memory AlgorithmsDistributed-memory ArchitecturesMultidimensional ArraysParallel Data ProcessingState Machine DesignState Machines
Generating local addresses and communication sets is an important issue in distributed-memory implementations of data-parallel languages such as High Performance Fortran. We show that for an array A affinely aligned to a template that is distributed across p processors with a cyclic(k) distribution, and a computation involving the regular section A(l:h:s), the local memory access sequence for any processor is characterized by a finite state machine of at most k states. We present fast algorithms for computing the essential information about these state machines, and extend the framework to handle multidimensional arrays. We also show how to generate communication sets using the state machine approach. Performance results show that this solution requires very little runtime overhead and acceptable preprocessing time.
8
Principles of runtime support for parallel processors
Ravi Mirchandaney, Joel Saltz, Roger M. Smith et al. · 1988 · 123 citations