Massively parallel data optimization
Kath Knobe, Joan D. Lukas, Guy Lewis Steele · 2003
Techniques for the automatic layout of arrays in a Fortran compiler supporting Fortran 8* array features and targeted to the Connection Machine computer system are discussed. The goal is primarily to minimize the costs of moving data between processors and secondarily to minimize memory usage. Improved array layout may allow communications operations to be eliminated or to be replaced by more specialized communications operations with lower costs. The authors discuss a typical example of a code fragment that can be improved by a factor of 2 in memory consumption and a factor of 20 in speed. It is shown that this compilation approach performs analysis of usage patterns and determines the allocation strategy for each occurrence of an array section. The potential performance impact of this compilation technology is measured in orders of magnitude rather than percentages.>