Analysis of multidimensional loops with non-uniform dependences

For a parallelizing compiler, mainly based on loop transformations, dependence information that is as complete and precise as possible is required. In this paper, we propose a generalized method for computing, in any multi-dimensional loop, information which proved to be useful in the case of irregular dependences. Firstly, we solve the basic problem of the existence of a dependence with an algorithm composed of a preprocessing phase of reduction and of an integer simplex resolution. If a solution exists, we compute by integer simplex the bounds of the distances associated with loop indices. Depending on the values of these bounds, we finally define problems consisting in evaluating the bounds of slopes of dependence vectors, which we solve by integer linear fractional programming. The amount of computation for each new problem is very low. This algorithm has been implemented as an extension of the Janus Test, which was presented in a previous work.

[1]  Monica S. Lam,et al.  A Loop Transformation Theory and an Algorithm to Maximize Parallelism , 1991, IEEE Trans. Parallel Distributed Syst..

[2]  Alexander Schrijver,et al.  Theory of linear and integer programming , 1986, Wiley-Interscience series in discrete mathematics and optimization.

[3]  Ron Cytron,et al.  Interprocedural dependence analysis and parallelization , 1986, SIGP.

[4]  Harvey M. Salkin,et al.  Foundations of integer programming , 1989 .

[5]  Christine Eisenbeis,et al.  A general algorithm for data dependence analysis , 1992, ICS '92.

[6]  H. Mine,et al.  A PRIMAL CUTTING PLANE ALGORITHM FOR INTEGER FRACTIONAL PROGRAMMING PROBLEMS , 1976 .

[7]  François Irigoin,et al.  Supernode partitioning , 1988, POPL '88.

[8]  Y. Anzai ON INTEGER FRACTIONAL PROGRAMMING , 1974 .

[9]  Vipin Chaudhary,et al.  Minimum dependence distance tiling of nested loops with non-uniform dependences , 1994, Proceedings of 1994 6th IEEE Symposium on Parallel and Distributed Processing.

[10]  Barbara M. Chapman,et al.  Supercompilers for parallel and vector computers , 1990, ACM Press frontier series.

[11]  D. Granot,et al.  On Integer and Mixed Integer Fractional Programming Problems , 1977 .

[12]  Lionel M. Ni,et al.  Dependence Uniformization: A Loop Parallelization Technique , 1993, IEEE Trans. Parallel Distributed Syst..

[13]  J. Ramanujam,et al.  Tiling Multidimensional Itertion Spaces for Multicomputers , 1992, J. Parallel Distributed Comput..

[14]  Jean-Claude Sogno,et al.  The Janus Test: a hierarchical algorithm for computing direction and distance vectors , 1996, Proceedings of HICSS-29: 29th Hawaii International Conference on System Sciences.