Christian Aistleitner,
"A new Mark-and-Compact GC for GraalVM Native Image"
, Eigenverlag, 1-2024
Original Titel:
A new Mark-and-Compact GC for GraalVM Native Image
Sprache des Titels:
Englisch
Original Kurzfassung:
Containerized cloud deployments with tight resource limits are becoming increasingly popular. To address this trend, GraalVM Native Image provides ahead-of-time compilation of Java applications into standalone executable binaries. These are ideal for cloud deployments as they offer fast startup speed, low memory footprint, and small packaging size.
The garbage collector of GraalVM Native Image is written in Java too and, like the rest of the Java runtime system, it is part of the generated binary. It uses a simple generational Stop-and-Copy algorithm for collecting unreachable objects. New objects are allocated in
the young generation and promoted to the old generation after surviving multiple minor collection cycles or a single major collection cycle. In the course of a collection cycle, every reachable object is copied, which increases the memory footprint during scavenging.
This thesis describes the implementation of a new compacting garbage collector with an improved memory footprint. It makes use of the Mark-and-Compact algorithm for collecting unreachable objects in the old generation. Furthermore, this thesis presents a performance evaluation of the new approach using existing benchmarks.