Efficient Compile-Time Analysis of Cache Behaviour for Programs with IF Statements

  • Authors:
  • Affiliations:
  • Venue:
  • ICA3PP '02 Proceedings of the Fifth International Conference on Algorithms and Architectures for Parallel Processing
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents an analytical methodfor analysing efficiently the cache behaviour of perfectloop nests containing IF statements with compile-time-analysable conditionals. We discuss the derivations ofreuse vectors in the presence of IF statements, presentmiss equations for characterising the cache behaviour ofa program and give algorithms for solving these equations for cache misses. We show that our method, together with loop sinking, can be used to analyse a largenumber of imperfe ct loop nests that cannot be analysed previously -- 17% more loop nests than previously in SPECfp95, Perfect Suite, Livermore kernels,Linpack and Lapack. Validation against cache simulation demonstrates the efficiency and accuracy of ourmethod. Our method can be used to guide compilercache optimisations and improve the performance ofcache simulators and profilers.