Targeted Path Profiling: Lower Overhead Path Profiling for Staged Dynamic Optimization Systems

  • Authors:
  • Rahul Joshi;Michael D. Bond;Craig Zilles

  • Affiliations:
  • -;-;-

  • Venue:
  • Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization
  • Year:
  • 2004

Quantified Score

Hi-index 0.01

Visualization

Abstract

In this paper, we present a technique for reducing theoverhead of collecting path profiles in the context of a dynamicoptimizer. The key idea to our approach, called TargetedPath Profiling (TPP), is to use an edge profile to simplifythe collection of a path profile. This notion of profile-guidedprofiling is a natural fit for dynamic optimizers,which typically optimize the code in a series of stages.TPP is an extension to the Ball-Larus Efficient Path Profilingalgorithm. Its increased efficiency comes from twosources: (i) reducing the number of potential paths by notenumerating paths with cold edges, allowing array accessesto be substituted for more expensive hash table lookups, and(ii) not instrumenting regions where paths can be unambiguouslyderived from an edge profile. Our results suggestthat on average the overhead of profile collection can be reducedby half (SPEC95) to almost two-thirds (SPEC2000)relative to the Ball-Larus algorithm with minimal impact onthe information collected.