Tieftauchen in die ZGC-Speicherallokation: Verbesserungen durch den Mapped Cache (JDK-8350441)

2025-04-23

Dieser Beitrag befasst sich eingehend mit der Speicherallokation des Java-Heaps im ZGC, einem Garbage Collector von OpenJDK. Er hebt Verbesserungen hervor, die mit dem Mapped Cache in JDK-8350441 eingeführt wurden. ZGC organisiert den Heap-Speicher in Seiten (klein, mittel, groß), die von einem Seitenallokator und Partitionen verwaltet werden. Der Allokationsprozess wird detailliert erläutert, einschließlich Kapazitätsmanagement, der Interaktion zwischen physischem und virtuellem Speicher und der Rolle des Mapped Cache bei der Optimierung der Allokationsgeschwindigkeit und der Reduzierung der Fragmentierung. Der Artikel beschreibt detailliert die Auswirkungen der NUMA-Architektur auf die Multi-Partitions-Allokation, Speicherbelegung, -rückgewinnung und -defragmentierung. Schließlich wird der Kompromiss zwischen Startzeit und Laufzeitlatenz diskutiert.

Mehr lesen