Inlining-Benefit Prediction with Interprocedural Partial Escape AnalysisVirtual
Inlining is the primary facilitating mechanism for intraprocedural Partial Escape Analysis (PEA), which allows for the removal of object allocations on a branch-by-branch basis and
is critical for performance in object-oriented languages. Prior
work used interprocedural Escape Analysis to make inlining decisions, but it discarded control-flow-sensitivity when
crossing procedure boundaries, and did not weigh other
metrics to model the cost-benefit of inlining, resulting in unpredictable inlining decisions and suboptimal performance.
Our work addresses these issues and introduces a novel Interprocedural Partial Escape Analysis algorithm (IPEA) to
predict the inlining benefits, and improve the cost-benefit
model of an existing optimization-driven inliner. We evaluate the implementation of IPEA in GraalVM Native Image,
on industry-standard benchmark suites Dacapo, ScalaBench,
and Renaissance. Out of 36 benchmarks with a geometric
mean runtime improvement of 1.79%, 6 benchmarks achieve
an improvement of over 5% with a geomean of 9.10% and
up to 24.62%, while also reducing code size and compilation
times compared to existing approaches.
Mon 5 DecDisplayed time zone: Auckland, Wellington change
10:30 - 12:00 | |||
10:30 5mTalk | Welcome Notes VMIL Stefan Marr University of Kent | ||
10:35 30mTalk | Ease Virtual Machine Level Tooling with Language Level Ordinary Object PointersVirtual VMIL Pierre Misse-Chanabier University of Lille; Inria; CNRS; Centrale Lille; UMR 9189 CRIStAL, Théo Rogliano University of Lille; Inria; CNRS; Centrale Lille; UMR 9189 CRIStAL DOI | ||
11:05 30mTalk | Inlining-Benefit Prediction with Interprocedural Partial Escape AnalysisVirtual VMIL Matthew Edwin Weingarten ETH Zurich; Oracle Labs, Theodoros Theodoridis ETH Zurich, Aleksandar Prokopec Oracle Labs DOI | ||
11:35 25mTalk | Toward a dynamic language toolkit Virtual VMIL Dave Mason Toronto Metropolitan University (formerly Ryerson University) |