ECOOP 2025 (series) / ICOOOLPS 2025 (series) / ICOOOLPS 2025 – Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems /
Low Overhead Allocation Sampling in a Garbage Collected Virtual Machine
Compared to the more commonly used time-based profiling, allocation profiling provides an alternate view of the execution of allocation heavy dynamically typed languages. However, profiling every single allocation in a program is very inefficient. We present a sampling allocation profiler that is deeply integrated into the garbage collector of PyPy, a Python virtual machine. This integration ensures tunable low overhead for the allocation profiler, which we measure and quantify. Enabling allocation sampling profiling with a sampling period of 4 MB leads to a maximum time overhead of 25% in our benchmarks, over un-profiled regular execution.
Wed 2 JulDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
Wed 2 Jul
Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
14:00 - 15:45 | |||
14:00 30mFull-paper | Revisiting Borrow Checking with Abstract Interpretation ICOOOLPS | ||
14:30 30mFull-paper | AST, Bytecode, and the Space In Between: An Exploration of Interpreter Design Tradeoffs ICOOOLPS Octave Larose University of Kent, Michael Vollmer University of Kent, Stefan Marr University of Kent Pre-print File Attached | ||
15:00 30mFull-paper | Low Overhead Allocation Sampling in a Garbage Collected Virtual Machine ICOOOLPS Pre-print File Attached | ||
15:30 10mDay closing | Closing Remarks ICOOOLPS |