Write a Blog >>
Sun 18 Jun 2017 10:10 - 10:30 at Vertex WS216 - Points-to Analysis

Points-to analysis is a fundamental static program analysis technique for tools including compilers and bug-checkers. Although object-based context sensitivity is known to improve precision of points-to analysis, scaling it for large Java codebases remains a challenge.

In this work, we develop a tunable, client-independent, object-sensitive points-to analysis framework where heap cloning is applied selectively. This approach is aimed at large codebases where standard analysis is typically expensive. Our design includes a pre-analysis that determines program points that contribute to the cost of an object-sensitive points-to analysis. A subsequent analysis then determines the context depth for each allocation site. While our framework can run standalone, it is also possible to tune it – the user of the framework can use the knowledge of the codebase being analysed to influence the selection of expensive program points as well as the process to differentiate the required context-depth. Overall, the approach determines where the cloning is beneficial and where the cloning is unlikely to be beneficial.

We have implemented our approach using Soufflé (a Datalog compiler) and an extension of the DOOP framework. Our experiments on large programs, including OpenJDK, show that our technique is efficient and precise. For the OpenJDK, our analysis reduces 27% of runtime and 18% of memory usage in comparison with 2O1H points-to analysis for a negligible loss of precision, while for Jython from the DaCapo benchmark suite, the same analysis reduces 91% of runtime for no loss of precision.

Slides (SOAP'17-slides.pdf)718KiB

Sun 18 Jun
Times are displayed in time zone: (GMT+02:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

09:30 - 10:30: SOAP - Points-to Analysis at Vertex WS216
SOAP-2017-papers09:30 - 09:50
Jihyeok ParkKAIST, South Korea, Xavier RivalINRIA/CNRS/ENS Paris, Sukyoung RyuKAIST
DOI File Attached
SOAP-2017-papers09:50 - 10:10
George BalatsourasUniversity of Athens, Kostas FerlesUniversity of Texas at Austin, USA, George KastrinisUniversity of Athens, Yannis SmaragdakisUniversity of Athens
DOI File Attached
SOAP-2017-papers10:10 - 10:30
Behnaz HassanshahiOracle Labs, Australia, Raghavendra KagalavadiOracle Labs, Australia, Paddy Krishnan, Bernhard ScholzUniversity of Sydney, Australia, Yi LuOracle
DOI File Attached