DocumentCode
660541
Title
Improving efficiency of dynamic analysis with dynamic dependence summaries
Author
Palepu, Vijay Krishna ; Guoqing Xu ; Jones, Jack A.
Author_Institution
Univ. of California, Irvine, Irvine, CA, USA
fYear
2013
fDate
11-15 Nov. 2013
Firstpage
59
Lastpage
69
Abstract
Modern applications make heavy use of third-party libraries and components, which poses new challenges for efficient dynamic analysis. To perform such analyses, transitive dependent components at all layers of the call stack must be monitored and analyzed, and as such may be prohibitively expensive for systems with large libraries and components. As an approach to address such expenses, we record, summarize, and reuse dynamic dataflows between inputs and outputs of components, based on dynamic control and data traces. These summarized dataflows are computed at a fine-grained instruction level; the result of which, we call “dynamic dependence summaries.” Although static summaries have been proposed, to the best of our knowledge, this work presents the first technique for dynamic dependence summaries. The benefits to efficiency of such summarization may be afforded with losses of accuracy. As such, we evaluate the degree of accuracy loss and the degree of efficiency gain when using dynamic dependence summaries of library methods. On five large programs from the DaCapo benchmark (for which no existing whole-program dynamic dependence analyses have been shown to scale) and 21 versions of NANOXML, the summarized dependence analysis provided 90% accuracy and a speed-up of 100% (i.e., ×2), on average, when compared to traditional exhaustive dynamic dependence analysis.
Keywords
instruction sets; program diagnostics; software libraries; DaCapo benchmark; NANOXML; data traces; degree of accuracy loss evaluation; degree of efficiency gain evaluation; dynamic control; dynamic dataflows; dynamic dependence summaries; dynamic program analysis; exhaustive dynamic dependence analysis; fine-grained instruction level; large object-oriented libraries; library methods; summarized dependence analysis; third-party libraries; transitive dependent components; Abstracts; Accuracy; Arrays; Concrete; Indexes; Java; Libraries; Data-flow; Dynamic Slicing; Dynamic analysis; Program analysis; Summarization;
fLanguage
English
Publisher
ieee
Conference_Titel
Automated Software Engineering (ASE), 2013 IEEE/ACM 28th International Conference on
Conference_Location
Silicon Valley, CA
Type
conf
DOI
10.1109/ASE.2013.6693066
Filename
6693066
Link To Document