Combined partitioning and data padding for scheduling multiple loop nests

  • Authors:
  • Zhong Wang;Edwin H.-M. Sha;Xiaobo (Sharon) Hu

  • Affiliations:
  • University of Notre Dame, Notre Dame, IN;University of Texas at Dallas, Richardson, TX;University of Notre Dame, Notre Dame, IN

  • Venue:
  • CASES '01 Proceedings of the 2001 international conference on Compilers, architecture, and synthesis for embedded systems
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

With the widening performance gap between processors and main memory, efficient memory accessing behavior is necessary for good program performance. Loop partition is an effective way to exploit the data locality. Traditional loop partition techniques, however, consider only a singleton nested loop. This paper presents multiple loop partition scheduling technique, which combines the loop partition and data padding to generate the detailed partition schedule. The computation and data prefetching are balanced in the partition schedule, such that the long memory latency can be hidden efficiently. Multiple loop partition scheduling explores parallelism among computations, and exploit the data locality between different loop nests as well in each loop nest. Data padding is applied in our technique to eliminate the cache interference, which overcomes the problem of cache conflict misses arisen from loop partition. Therefore, our technique can be applied in architectures with low associativity cache. The experiments show that multiple loop partition scheduling can achieve the significant improvement over the existing methods