(R) Program Analysis for Cache Coherence: Beyond Procedural Boundaries

  • Authors:
  • Affiliations:
  • Venue:
  • ICPP '96 Proceedings of the Proceedings of the 1996 International Conference on Parallel Processing - Volume 3
  • Year:
  • 1996

Quantified Score

Hi-index 0.00

Visualization

Abstract

Abstract: The presence of procedures and procedure calls introduces side effects, which complicates the analysis of stale reference detection in compiler-directed cache coherence schemes. Previous compiler algorithms use cache invalidation at procedure boundary or inlining to avoid reference marking interprocedurally. We introduce a full interprocedural algorithm, which performs bottom-up and top-down analysis on the procedure call graph. This avoids unnecessary cache misses for subroutine local data and exploits locality across procedure boundaries. The result of execution-driven simulations on Perfect benchmarks demonstrates that, the interprocedural algorithm eliminates up to 36.8% of the cache misses for a compiler-directed scheme compared to an existing invalidation-based algorithm.