EXPLOITING HARDWARE PERFORMANCE COUNTERS WITH FLOW AND CONTEXT-SENSITIVE PROFILING

Citation
G. Ammons et al., EXPLOITING HARDWARE PERFORMANCE COUNTERS WITH FLOW AND CONTEXT-SENSITIVE PROFILING, ACM SIGPLAN NOTICES, 32(5), 1997, pp. 85-96
Citations number
23
Categorie Soggetti
Computer Sciences","Computer Science Software Graphycs Programming
Journal title
Volume
32
Issue
5
Year of publication
1997
Pages
85 - 96
Database
ISI
SICI code
Abstract
A program profile attributes run-time costs to portions of a program's execution. Most profiling systems suffer from two major deficiencies: first, they only apportion simple metrics, such as execution frequenc y or elapsed time to static, syntactic units, such as procedures or st atements; second, they aggressively reduce the volume of information c ollected and reported, although aggregation can hide striking differen ces in program behavior. This paper addresses both concerns by exploit ing the hardware counters available in most modern processors and by i ncorporating two concepts from data flow analysis-flow and context sen sitivity-to report more context for measurements. This paper extends o ur previous work on efficient path profiling to flow sensitive profili ng, which associates hardware performance metrics with a path through a:procedure. In addition, it describes a data structure, the calling c ontext tree, that efficiently captures calling contexts for procedure- level measurements. Our measurements show that the SPEC95 benchmarks e xecute a small number (3-28) of hot paths that account for 9-98% of th eir L1 data cache misses. Moreover, these hot paths are concentrated i n a few routines, which have complex dynamic behavior.