Optimal Orthogonal Tiling

Rumen Andonov (a), Sanjay Rajopadhye (b) and Nicola Yanev (c)

(a) Université de Valenciennes
(b) Irisa, Rennes
(c) Bulgarian Academy of Sciences, Sofia


Iteration space tiling is a common strategy used by parallelizing compilers and in performance tuning of parallel codes. We address the problem of determining the tile size that minimizes the total execution time. We restrict our attention to orthogonal tiling: uniform dependency programs with (hyper) parallelepiped shaped iteration domains which can be tiled with hyperplanes parallel to the domain boundaries. Our formulation includes many machine and program models used in the literature, notably the BSP programming model. We resolve the optimization problem analytically, yielding a closed form solution.

Keywords: coarse grain pipelining, SPMD programs, loop blocking, nonlinear optimization, communication-computation overlap, supernode partitioning, automatic parallelization, macro-systolic arrays.


Further info and related paper(s):