International Journal of Parallel Programming

, Volume 26, Issue 6, pp 671–696

Reuse-Driven Tiling for Improving Data Locality

  • Jingling Xue
  • Chua-Huang Huang
Article

DOI: 10.1023/A:1018734612524

Cite this article as:
Xue, J. & Huang, CH. International Journal of Parallel Programming (1998) 26: 671. doi:10.1023/A:1018734612524

Abstract

This paper applies unimodular transformations and tiling to improve data locality of a loop nest. Due to data dependences and reuse information, not all dimensions of the iteration space will and can be tiled. By using cones to represent data dependences and vector spaces to quantify data reuse in the program, a reuse-driven transformational approach is presented, which aims at maximizing the amount of data reuse carried in the tiled dimensions of the iteration space while keeping the number of tiled dimensions to a minimum (to reduce loop control overhead). In the special case of one single fully permutable loop nest, an algorithm is presented that tiles the program optimally so that all data reuse is carried in the tiled dimensions. In the general case of multiple fully permutable loop nests, data dependences can prevent all data reuse to be carried in the tiled dimensions. An algorithm is presented that aims at localizing data reuse in the tiled dimensions so that the reuse space localized has the largest dimensionality possible.

TILINGLOOP TRANSFORMATIONDATA LOCALITYNESTED LOOPS

Copyright information

© Plenum Publishing Corporation 1998

Authors and Affiliations

  • Jingling Xue
  • Chua-Huang Huang

There are no affiliations available