loading...
 This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
International Symposium on Code Generation and Optimization (CGO'05)
A Programmable Hardware Path Profiler
San Jose, California
March 20-March 23
ISBN: 0-7695-2298-X
Kapil Vaswani, Indian Institute of Science, Bangalore
Matthew J. Thazhuthaveetil, Indian Institute of Science, Bangalore
Y. N. Srikant, Indian Institute of Science, Bangalore
For aggressive path-based program optimizations to be profitable in cost-sensitive environments, accurate path profiles must be available at low overheads. In this paper, we propose a low-overhead, non-intrusive hardware path profiling scheme that can be programmed to detect several types of paths including acyclic, intra-procedural paths, paths for a Whole Program Path and extended paths. The profiler consists of a path stack, which detects paths and generates a sequence of path descriptors using branch information from the processor pipeline, and a hot path table that collects a profile of hot paths for later use by a program optimizer. With assistance from the processor's event detection logic, our profiler can track a host of architectural metrics along paths, enabling context-sensitive performance monitoring and bottleneck analysis. We illustrate the utility of our scheme by associating paths with a power metric that estimates power consumption in the cache hierarchy caused by instructions along the path. Experiments using programs from the SPEC CPU2000 benchmark suite show that our path profiler, occupying 7KB of hardware real-estate, collects accurate path profiles (average overlap of 88% with a perfect profile) at negligible execution time overheads (0.6% on average).
Citation:
Kapil Vaswani, Matthew J. Thazhuthaveetil, Y. N. Srikant, "A Programmable Hardware Path Profiler," cgo, pp.217-228, International Symposium on Code Generation and Optimization (CGO'05), 2005
Usage of this product signifies your acceptance of the Terms of Use.