Communication-Free Data Alignment for Arrays with Exponential References Using Elementary Linear Algebra

For array references with induction variables, after induction variable substitution for those induction variables is performed, those array references substituted are transformed as nonlinear expressions. The goal of data alignment is to intelligently map computations and data onto a set of virtual processors organized as a Cartesian grid with multi-dimensions (or a template in HPF term), and to provide data locality in a program so that the data access communication costs can be minimized. Most data alignment methods are mainly devised to align the arrays referenced using linear subscripts or quadratic subscripts with n loop index variables [Chang, 2004]. In this paper, we propose a new communication-free data alignment technique to align the arrays referenced using exponential subscripts with n loop index variables or other complex nonlinear expressions. The experimental results from our techniques on SPEC95FP Benchmarks point out that the techniques can be applied to improve the execution time of the subroutines in those benchmarks.

[1]  Chih-Ping Chu,et al.  Communication-Free Alignment for Array References with Linear Subscripts in Three Loop Index Variables or Quadratic Subscripts , 2001, The Journal of Supercomputing.

[2]  Minyi Guo,et al.  Efficient loop partitioning for parallel codes of irregular scientific computations , 2002, Fifth International Conference on Algorithms and Architectures for Parallel Processing, 2002. Proceedings..

[3]  Minyi Guo,et al.  A Framework for Efficient Data Redistribution on Distributed Memory Multicomputers , 2001, The Journal of Supercomputing.

[4]  Yi Pan,et al.  Symbolic Communication Set Generation for Irregular Parallel Applications , 2003, The Journal of Supercomputing.

[5]  Minyi Guo,et al.  Contention-free communication scheduling for array redistribution , 2000, Parallel Comput..

[6]  PeiZong Lee Efficient Algorithms for Data Distribution on Distributed Memory Parallel Computers , 1997, IEEE Trans. Parallel Distributed Syst..

[7]  Minyi Guo,et al.  Efficient Implementation of Multi-Dimensional Array Redistribution , 1998 .

[8]  Yunheung Paek,et al.  Compiling for Distributed Memory Multiprocessors Based on Access Region Analysis , 1997 .

[9]  Chih-Ping Chu,et al.  Using elementary linear algebra to solve data alignment for arrays with linear or quadratic references , 2004, IEEE Transactions on Parallel and Distributed Systems.

[10]  Monica S. Lam,et al.  Maximizing Parallelism and Minimizing Synchronization with Affine Partitions , 1998, Parallel Comput..

[11]  Paul Feautrier Toward automatic partitioning of arrays on distributed memory computers , 1993, ICS '93.

[12]  Keshav Pingali,et al.  Solving Alignment Using Elementary Linear Algebra , 2001, Compiler Optimizations for Scalable Parallel Systems Languages.

[13]  David A. Padua,et al.  Static and Dynamic Evaluation of Data Dependence Analysis Techniques , 1996, IEEE Trans. Parallel Distributed Syst..