A loop transformation theory and an algorithm to maximizeparallelism
Wolf, M.E.; Lam, M.S.
Parallel and Distributed Systems, IEEE Transactions on
Volume 2, Issue 4, Oct 1991 Page(s):452 - 471
Digital Object Identifier 10.1109/71.97902
Summary:An approach to transformations for general loops in which
dependence vectors represent precedence constraints on the iterations of
a loop is presented. Therefore, dependences extracted from a loop nest
must be lexicographically positive. This leads to a simple test for
legality of compound transformations: any code transformation that
leaves the dependences lexicographically positive is legal. The loop
transformation theory is applied to the problem of maximizing the degree
of coarse- or fine-grain parallelism in a loop nest. It is shown that
the maximum degree of parallelism can be achieved by transforming the
loops into a nest of coarsest fully permutable loop nests and
wavefronting the fully permutable nests. The canonical form of coarsest
fully permutable nests can be transformed mechanically to yield maximum
degrees of coarse- and/or fine-grain parallelism. The efficient
heuristics can find the maximum degrees of parallelism for loops whose
nesting level is less than five
View citation and abstract |