DocumentCode :
1993896
Title :
The road not taken: Estimating path execution frequency statically
Author :
Buse, Raymond P L ; Weimer, Westley
Author_Institution :
Univ. of Virginia, Charlottesville, VA
fYear :
2009
fDate :
16-24 May 2009
Firstpage :
144
Lastpage :
154
Abstract :
A variety of compilers, static analyses, and testing frameworks rely heavily on path frequency information. Uses for such information range from optimizing transformations to bug finding. Path frequencies are typically obtained through profiling, but that approach is severely restricted: it requires running programs in an indicative environment, and on indicative test inputs. We present a descriptive statistical model of path frequency based on features that can be readily obtained from a program´s source code. Our model is over 90% accurate with respect to several benchmarks, and is sufficient for selecting the 5% of paths that account for over half of a program´s total runtime. We demonstrate our technique´s robustness by measuring its performance as a static branch predictor, finding it to be more accurate than previous approaches on average. Finally, our qualitative analysis of the model provides insight into which source-level features indicate ldquohot pathsrdquo.
Keywords :
program compilers; program debugging; program diagnostics; program testing; statistical analysis; bug finding; compilers; descriptive statistical model; hot paths; path execution frequency estimation; performance measurement; program source code; static analyses; static branch predictor; testing frameworks; Benchmark testing; Data analysis; Frequency estimation; Information analysis; Particle measurements; Performance analysis; Roads; Robustness; Runtime; Scalability;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Engineering, 2009. ICSE 2009. IEEE 31st International Conference on
Conference_Location :
Vancouver, BC
ISSN :
0270-5257
Print_ISBN :
978-1-4244-3453-4
Type :
conf
DOI :
10.1109/ICSE.2009.5070516
Filename :
5070516
Link To Document :
بازگشت