SPLASH 2023
Sun 22 - Fri 27 October 2023 Cascais, Portugal
Sun 22 Oct 2023 14:22 - 14:45 at Room II - MPLR Session 3 Chair(s): Rodrigo Bruno

Debugging garbage collectors for performance and correctness is notoriously difficult. Among the arsenal of tools available to systems engineers, support for one of the most powerful, tracing, is lacking in most garbage collectors. Instead, engineers must rely on counting, sampling, and logging. Counting and sampling are limited to statistical analyses while logging is limited to hard-wired metrics. This results in cognitive friction, curtailing innovation and optimization.

We demonstrate that tracing is well suited to GC performance debugging. We leverage the modular design of MMTk to deliver a powerful VM and collector-neutral tool.
We find that tracing allows: cheap insertion of tracepoints—just 14 lines of code and no measurable run-time overhead, decoupling of the declaration of tracepoints from tracing logic, high fidelity measurement able to detect subtle performance regressions, while also allowing interrogation of a running binary.

Our tools crisply highlight several classes of performance bug, such as poor scalability in multi-threaded GCs, and lock contention in the allocation sequence. These observations uncover optimization opportunities in collectors, and even reveal bugs in application programs.

We showcase tracing as a powerful tool for GC designers and practitioners. Tracing can uncover missed opportunities and lead to novel algorithms and new engineering practices.

Sun 22 Oct

Displayed time zone: Lisbon change

14:00 - 15:30
MPLR Session 3MPLR at Room II
Chair(s): Rodrigo Bruno INESC-ID - IST-ULisboa
14:00
22m
Talk
A Multifaceted Memory Analysis of Java Benchmarks
MPLR
Orion Papadakis University of Manchester, Andreas Andronikakis University of Manchester, Nikos Foutris University of Manchester, Michail Papadimitriou University of Manchester, Athanasios Stratikopoulos University of Manchester, Foivos S. Zakkak Red Hat, Polychronis Xekalakis Nvidia, Christos Kotselidis University of Manchester
DOI
14:22
22m
Talk
Improving Garbage Collection Observability with Performance Tracing
MPLR
Claire Huang Australian National University, Stephen M. Blackburn Google; Australian National University, Zixian Cai Australian National University
DOI Pre-print Media Attached
14:45
22m
Talk
Don’t Trust Your Profiler: An Empirical Study on the Precision and Accuracy of Java Profilers
MPLR
Humphrey Burchell University of Kent, Octave Larose University of Kent, Sophie Kaleba University of Kent, Stefan Marr University of Kent
DOI Pre-print
15:07
22m
Talk
Heap Size Adjustment with CPU Control
MPLR
Sanaz Tavakolisomeh University of Oslo, Marina Shimchenko Uppsala University, Erik Österlund Oracle, Rodrigo Bruno INESC-ID - IST-ULisboa, Paulo Ferreira University of Oslo, Tobias Wrigstad Uppsala University
DOI