Neues OpenJDK-Projekt vorgeschlagen

Ein neuer Garbage Collector für Java: Oracle stellt Z Garbage Collector Open Source

Hartmut Schlosser

© Shutterstock / Miceking

Ein neuer Garbage Collector für Java steht in den Startlöchern. Unter dem OpenJDK-Projekt ZGC soll der sogenannte Z Garbage Collector, der bisher intern von Oracle entwickelt wurde, Open Source weitergeführt werden.

Was kann der Z Garbage Collector?

Nebenläufig, Single-Generation, Regions-basiert, inkrementell – so beschreibt Per Liden, Mitglied des HotSpot GC Teams bei Oracle, den ZGC in seiner Ankündigung auf der OpenJDK-Mailingliste. Optimiert ist der ZGC für sehr große Heaps und geringe Latenzzeiten. Mehrere Terabyte große Heaps sollen verarbeitet werden können, wobei die Garbage-Collector-Pausen weniger als 10 Millisekunden beanspruchen sollen.

Durch die Nutzung von Load Barriers und Colored Object Pointers ist es dem Z Garbage Collector möglich, nebenläufige Operationen wie Objekt-Neuzuweisungen auszuführen, während Java-Threads auf Anwendungsebene weiterlaufen. Die berüchtigten „Stop-the-World“-Phasen sollen auf das Root-Scanning beschränkt bleiben. Garbage-Collector-Pausen sollen sich dadurch bei steigender Heap- oder Live-set-Größe nicht verlängern.

Wie Liden, der auch Initiator des Projektes ist, weiter ausführt, ist der ZGC bereits in der Lage, typische Aufgaben wie Marking, Referenz-Bearbeitung (java.lang.ref.*), Relokalisierung/Komprimierung nebenläufig zu erledigen. Derzeit arbeite das Team daran, weitere Garbage-Collector-Phasen, namentlich Weak Root Processing (StringTable, JNIWeakGlobalRefs) und Class Unloading, nebenläufig zu gestalten.

Die Qual der Wahl

Die Open-Source-Stellung des ZGC kann als weiteres Zeichen für Oracles angekündigte Strategie gesehen werden, einst proprietäre Projekte und Tools quelloffen im Rahmen des OpenJDK-Projektes zu entwickeln. Beispielsweise soll der Java Flight Recorder – bislang Teil des kommerziellen Oracle JDK – Open Source zur Verfügung gestellt werden.

Im Raum der Garbage Collectoren für Java stellt der ZGC eine Alternative zu den „offiziellen“ Hotspot Garbage Collectoren ParallelGC und dem seit Java 9 verfügbaren G1 Garbage Collector dar. Im Bereich der Niedriglatenz-Kollektoren steht ZGC dem ebenfalls im OpenJDK entwickelten Shenandoah Collector sowie der von Azul Systems bereitgestellten Zing JVM gegenüber.

Das ZGC-Projekt wurde als neues OpenJDK-Projekt unter der HotSpot-Sponsor-Gruppe vorgeschlagen. Die Projektleitung soll Per Liden übernehmen. Mitglieder des OpenJDK können bis zum 8. November über eine Annahme des Projektes abstimmen.

Verwandte Themen:

Geschrieben von
Hartmut Schlosser
Hartmut Schlosser
Content-Stratege, IT-Redakteur, Storyteller – als Online-Teamlead bei S&S Media ist Hartmut Schlosser immer auf der Suche nach der Geschichte hinter der News. SEO und KPIs isst er zum Frühstück. Satt machen ihn kreative Aktionen, die den Leser bewegen. @hschlosser
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: