Loop bounds computation for multilevel tiling
M Manuel Jimenez, José María Llabería, Agustín Fernández · 2002
The paper focuses on the complexity of computing exact loop bounds in multilevel tiling. Conventional tiling techniques implement tiling using first strip mining and afterwards loop interchange. Multilevel tiling has typically been implemented applying tiling level by level. We present a new way to implement multilevel tiling that consists in applying first strip mining at each dimension in all levels and, afterwards, performing once a loop interchange transformation of the strip mined loops. Our algorithm computes exact loop bounds, that is, loops in the generated code never execute empty iterations. We evaluate the complexity of this algorithm and show that it depends doubly exponentially only an the number of loops (space dimensions) in the original loop nest rather than in the number of loops in the final tiled code. The algorithm is based on the Fourier-Motzkin elimination, that generates redundant bounds. We also present an implementation of the technique that reduces the number of redundant bounds in the tiled code.