Data Relation Vectors: A New Abstraction for Data Optimizations

  • Authors:
  • Mahmut Kandemir;J. Ramanujam

  • Affiliations:
  • -;-

  • Venue:
  • PACT '00 Proceedings of the 2000 International Conference on Parallel Architectures and Compilation Techniques
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents an abstraction called data relation vectors to improve the data access characteristics and memory layouts in a given regular computation. The key idea is to define a relation between the data elements accessed by close-by iterations and use this relation to guide to a number of optimizations for array-based computations. The specific optimizations studied in this paper include enhancing group-spatial and self-spatial reuses, improving intra-tile and inter-tile reuses, and reducing unnecessary communication on message-passing architectures. In addition, this abstraction works well with other known abstractions such as data reuse vectors. The data relation vector abstraction has been implemented in the SUIF compilation framework and has been tested using a set of twelve benchmarks from image processing and scientific computation domains. Preliminary results on a super-scalar processor show that it is successful in reducing compilation time and outperforms two previously proposed techniques, one that uses only loop transformations and one that uses both loop and data transformations. Our experiments also show that the proposed abstraction helps one to select good data tile shapes, which can subsequently be used to determine iteration space tiles.