Optimistic Hybrid Analysis: Accelerating Dynamic Analysis through Predicated Static Analysis
Optimistic Hybrid Analysis: Accelerating Dynamic Analysis through Predicated Static Analysis
复制标题
乐观混合分析:通过预测静态分析加速动态分析
DOI:
10.1145/3173162.3177153
复制
发表时间:
2018
期刊:
影响因子:
--
通讯作者:
Narayanasamy, Satish
中科院分区:
文献类型:
--
作者:
Devecsery, David;Chen, Peter M.;Flinn, Jason;Narayanasamy, Satish
Dynamic analysis tools, such as those that detect data-races, verify memory safety, and identify information flow, have become a vital part of testing and debugging complex software systems. While these tools are powerful, their slow speed often limits how effectively they can be deployed in practice. Hybrid analysis speeds up these tools by using static analysis to decrease the work performed during dynamic analysis. In this paper we argue that current hybrid analysis is needlessly hampered by an incorrect assumption that preserving the soundness of dynamic analysis requires an underlying sound static analysis. We observe that, even with unsound static analysis, it is possible to achieve sound dynamic analysis for the executions which fall within the set of states statically considered. This leads us to a new approach, calledoptimistic hybrid analysis.We first profile a small set of executions and generate a set of likely invariants that hold true during most, but not necessarily all, executions. Next, we apply a much more precise, butunsound,static analysis that assumes these invariants hold true. Finally, we run the resulting dynamic analysis speculatively while verifying whether the assumed invariants hold true during that particular execution; if not, the program is reexecuted with a traditional hybrid analysis. Optimistic hybrid analysis is as precise and sound as traditional dynamic analysis, but is typically much faster because (1) unsound static analysis can speed up dynamic analysis much more than sound static analysis can and (2) verifications rarely fail. We apply optimistic hybrid analysis to race detection and program slicing and achieve 1.8x over a state-of-the-art race detector (FastTrack) optimized with traditional hybrid analysis and 8.3x over a hybrid backward slicer (Giri).
登录
查看更多内容
DOI:
10.1007/978-3-642-27940-9_18
发表时间:
2012
期刊:
Proceedings of 30th Annual International Symposium on Microarchitecture
影响因子:
--
作者:
Johannes Kinder;Dmitry Kravchenko
通讯作者:
Dmitry Kravchenko
DOI:
10.1109/micro.1997.645816
发表时间:
1997
期刊:
Proceedings of 30th Annual International Symposium on Microarchitecture
影响因子:
--
作者:
B. Calder;P. Feller;A. Eustace
通讯作者:
A. Eustace
DOI:
10.1145/587051.587054
发表时间:
2002
期刊:
ACM Trans. Softw. Eng. Methodol.
影响因子:
--
作者:
Jeremy W. Nimmer;Michael D. Ernst
通讯作者:
Michael D. Ernst
DOI:
--
发表时间:
2013
期刊:
International Symposium on Software Testing and Analysis
影响因子:
--
作者:
Shiyi Wei;B. Ryder
通讯作者:
B. Ryder
DOI:
10.1145/3062341.3062350
发表时间:
2017
期刊:
Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation
影响因子:
--
作者:
Dustin Rhodes;C. Flanagan;Stephen N. Freund
通讯作者:
Stephen N. Freund