Comparing Rapid Type Analysis with Points-To Analysis in GraalVM Native Image
David Koz\'ak, Vojin Jovanovic, Codru\c{t} Stancu, Tom\'a\v{s} Vojnar,, Christian Wimmer

TL;DR
This paper compares rapid type analysis with points-to analysis in GraalVM Native Image, showing that RTA significantly reduces analysis and build times with a manageable increase in image size.
Contribution
It introduces extensions to RTA, including parallelization, incremental updates, and heap snapshot support, and evaluates their impact on build efficiency.
Findings
RTA reduces analysis time by up to 64%
Overall build time decreases by 35% using RTA
Image size increases by 15% due to analysis imprecision
Abstract
Whole-program analysis is an essential technique that enables advanced compiler optimizations. An important example of such a method is points-to analysis used by ahead-of-time (AOT) compilers to discover program elements (classes, methods, fields) used on at least one program path. GraalVM Native Image uses a points-to analysis to optimize Java applications, which is a time-consuming step of the build. We explore how much the analysis time can be improved by replacing the points-to analysis with a rapid type analysis (RTA), which computes reachable elements faster by allowing more imprecision. We propose several extensions of previous approaches to RTA: making it parallel, incremental, and supporting heap snapshotting. We present an extensive experimental evaluation of the effects of using RTA instead of points-to analysis, in which RTA allowed us to reduce the analysis time for Spring…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Testing and Debugging Techniques · Software Engineering Research · Advanced Malware Detection Techniques
