Resource-aware Program Analysis via Online Abstraction CoarseningTechnical Track
We present a new technique for developing a resource-aware program analysis. Such an analysis is aware of constraints on available physical resources, such as memory size, tracks its resource use, and adjusts its behaviors during fixpoint computation in order to meet the constraint and achieve high precision. Our resource-aware analysis adjusts behaviors by coarsening program abstraction, which usually makes the analysis consume less memory and spend less time until completion. It does so multiple times during the analysis, under the direction of what we call a controller. The controller constantly intervenes in the fixpoint computation of the analysis and decides how much the analysis should coarsen the abstraction. We present an algorithm for learning a good controller automatically from benchmark programs. We applied our technique to a static analysis for C programs, where we control the degree of flow-sensitivity to meet a constraint on peak memory consumption. The experimental results with 18 real-world programs show that our algorithm can learn a good controller and the analysis with this controller meets the constraint and utilizes available memory effectively.
Wed 29 MayDisplayed time zone: Eastern Time (US & Canada) change
11:00 - 12:30 | Static AnalysisTechnical Track / Papers / Demonstrations at Viger Chair(s): Mauro Pezze Università della Svizzera italiana (USI) (Switzerland) and Università degli Studi di Milano Bicocca (Italy) | ||
11:00 20mTalk | SMOKE: Scalable Path-Sensitive Memory Leak Detection for Millions of Lines of CodeTechnical Track Technical Track Gang Fan Hong Kong University of Science and Technology, Rongxin Wu Department of Computer Science and Engineering, The Hong Kong University of Science and Technology, Qingkai Shi Hong Kong University of Science and Technology, Xiao Xiao Sourcebrella Inc., Jinguo Zhou Sourcebrella Inc., Charles Zhang The Hong Kong University of Science and Technology Pre-print | ||
11:20 20mTalk | Reasonably-Most-General Clients for JavaScript Library AnalysisTechnical TrackIndustry Program Technical Track | ||
11:40 20mTalk | Resource-aware Program Analysis via Online Abstraction CoarseningTechnical Track Technical Track | ||
12:00 20mTalk | SMT-Based Refutation of Spurious Bug Reports in the Clang Static AnalyzerDemos Demonstrations Mikhail R. Gadelha SIDIA Instituto de Ciência e Tecnologia, Enrico Steffinlongo , Lucas C. Cordeiro University of Manchester, UK, Bernd Fischer Stellenbosch University, Denis A. Nicole University of Southampton | ||
12:20 10mTalk | Discussion Period Papers |