RFR: JEP draft: G1: Time-Based Heap Uncommit During Idle Periods

Monica Beckwith Monica.Beckwith at microsoft.com
Tue Jul 1 01:26:04 UTC 2025


Hi all,

I would like to submit "G1: Time-Based Heap Uncommit During Idle Periods" JEP draft [0] for review.

The purpose of this JEP is to enable G1 to automatically uncommit unused memory regions during application idle periods, independent of garbage collection frequency. This brings G1 to parity with ZGC's memory efficiency characteristics while maintaining G1's low-latency and predictable pause time properties.

Key features:
- Periodic background evaluation of heap regions for uncommit eligibility
- Time-based region activity tracking with configurable uncommit delays
- Zero impact on GC pause times through careful synchronization
- Comprehensive JTReg test coverage with boundary conditions and race condition validation

The implementation is complete with extensive testing including 120+ SPECjbb2015 benchmark runs showing 15-45% memory reduction during idle periods with <2% throughput variation.

This enhancement addresses a significant gap in G1's memory efficiency for containerized and cloud-native applications with variable workload patterns. I will link the implementation PR to [0], once submitted. 

Thanks,
Monica

[0] https://bugs.openjdk.org/browse/JDK-8360935


More information about the hotspot-gc-dev mailing list