Title :
Continuous path and edge profiling
Author :
Bond, Michael D. ; McKinley, Kathryn S.
Author_Institution :
Dept. of Comput. Sci., Texas Univ., Austin, TX
Abstract :
Micro architectures increasingly rely on dynamic optimization to improve performance in ways that are difficult or impossible for ahead-of-time compilers. Dynamic optimizers in turn require continuous, portable, low cost, and accurate control-flow profiles to inform their decisions, but prior approaches have struggled to meet these goals simultaneously. This paper presents PEP, a hybrid instrumentation and sampling approach for continuous path and edge profiling that is efficient, accurate, and portable. PEP uses a subset of Ball-Larus path profiling to identify paths with low overhead, and uses sampling to mitigate the expense of storing paths. PEP further reduces overhead by using profiling to guide instrumentation placement. PEP improves profile accuracy with a modified version of Arnold-Grove sampling. The resulting system has 1.2% average and 4.3% maximum overhead, 94% path profile accuracy, and 96% edge profile accuracy on a set of Java benchmarks
Keywords :
optimising compilers; program diagnostics; Arnold-Grove sampling; Ball-Larus path profiling; Java benchmarks; ahead-of-time compilers; continuous path profiling; dynamic optimization; edge profiling; microarchitectures; Bonding; Dynamic compiler; Hardware; Instruments; Java; Microarchitecture; Optimizing compilers; Runtime; Sampling methods; Virtual machining;
Conference_Titel :
Microarchitecture, 2005. MICRO-38. Proceedings. 38th Annual IEEE/ACM International Symposium on
Conference_Location :
Barcelona
Print_ISBN :
0-7695-2440-0
DOI :
10.1109/MICRO.2005.16