Title :
2D-profiling: detecting input-dependent branches with a single input data set
Author :
Kim, Hyesoon ; Suleman, M. Aater ; Mutlu, Onur ; Patt, Yale N.
Author_Institution :
Dept. of Electr. & Comput. Eng., Texas Univ., Austin, TX, USA
Abstract :
Static compilers use profiling to predict run-time program behavior. Generally, this requires multiple input sets to capture wide variations in run-time behavior. This is expensive in terms of resources and compilation time. We introduce a new mechanism, 2D-profiling, which profiles with only one input set and predicts whether the result of the profile would change significantly across multiple input sets. We use 2D-profiling to predict whether a branch´s prediction accuracy varies across input sets. The key insight is that if the prediction accuracy of an individual branch varies significantly over a profiling run with one input set, then it is more likely that the prediction accuracy of that branch varies across input sets. We evaluate 2D-profiling with the SPEC CPU 2000 integer benchmarks and show that it can identify input-dependent branches accurately.
Keywords :
optimising compilers; program diagnostics; 2D-profiling; SPEC CPU 2000 integer benchmark; branch prediction accuracy; input-dependent branches; run-time program behavior; static compiler; Accuracy; Aggregates; Measurement standards; Optimizing compilers; Phase measurement; Prediction algorithms; Program processors; Runtime; Statistics; Time measurement;
Conference_Titel :
Code Generation and Optimization, 2006. CGO 2006. International Symposium on
Print_ISBN :
0-7695-2499-0