Resource-Aware Program Analysis Via Online Abstraction Coarsening

Kihong Heo, Hakjoo Oh, Hongseok Yang

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

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 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.

Original languageEnglish
Title of host publicationProceedings - 2019 IEEE/ACM 41st International Conference on Software Engineering, ICSE 2019
PublisherIEEE Computer Society
Pages94-104
Number of pages11
ISBN (Electronic)9781728108698
DOIs
Publication statusPublished - 2019 May 1
Event41st IEEE/ACM International Conference on Software Engineering, ICSE 2019 - Montreal, Canada
Duration: 2019 May 252019 May 31

Publication series

NameProceedings - International Conference on Software Engineering
Volume2019-May
ISSN (Print)0270-5257

Conference

Conference41st IEEE/ACM International Conference on Software Engineering, ICSE 2019
CountryCanada
CityMontreal
Period19/5/2519/5/31

    Fingerprint

Keywords

  • learning
  • resource constraint
  • static analysis

ASJC Scopus subject areas

  • Software

Cite this

Heo, K., Oh, H., & Yang, H. (2019). Resource-Aware Program Analysis Via Online Abstraction Coarsening. In Proceedings - 2019 IEEE/ACM 41st International Conference on Software Engineering, ICSE 2019 (pp. 94-104). [8812143] (Proceedings - International Conference on Software Engineering; Vol. 2019-May). IEEE Computer Society. https://doi.org/10.1109/ICSE.2019.00027