Targeted path profiling: Lower overhead path profiling for staged dynamic optimization systems

Rahul Joshi, Michael D. Bond, Craig Zilles

Research output: Chapter in Book/Report/Conference proceedingConference contribution


In this paper, we present a technique for reducing the overhead of collecting path profiles in the context of a dynamic optimizer. The key idea to our approach, called Targeted Path Profiling (TPP), is to use an edge profile to simplify the collection of a path profile. This notion of profile-guided profiling 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 Profiling algorithm. Its increased efficiency comes from two sources: (i) reducing the number of potential paths by not enumerating paths with cold edges, allowing array accesses to be substituted for more expensive hash table lookups, and (ii) not instrumenting regions where paths can be unambiguously derived from an edge profile. Our results suggest that on average the overhead of profile collection can be reduced by half (SPEC95) to almost two-thirds (SPEC2000) relative to the Ball-Larus algorithm with minimal impact on the information collected.

Original languageEnglish (US)
Title of host publicationInternational Symposium on Code Generation and Optimization, CGO 2004
Number of pages12
StatePublished - 2004
EventInternational Symposium on Code Generation and Optimization, CGO 2004 - San Jose, CA, United States
Duration: Mar 20 2004Mar 24 2004

Publication series

NameInternational Symposium on Code Generation and Optimization, CGO


OtherInternational Symposium on Code Generation and Optimization, CGO 2004
Country/TerritoryUnited States
CitySan Jose, CA

ASJC Scopus subject areas

  • Engineering(all)

Cite this