RFR: 8191471: Elastic TLABs for G1

Stefan Johansson stefan.johansson at oracle.com
Mon Apr 23 12:57:24 UTC 2018


Hi,

Please review these changes to lower the waste in G1 mutator regions.

JBS: https://bugs.openjdk.java.net/browse/JDK-8191471
Webrev: http://cr.openjdk.java.net/~sjohanss/8191471/00/

Summary
G1 might waste excessive amount of memory due to allocations that would 
span region boundaries. To lower this waste this patch addresses this 
problem in two ways. TLAB allocations are now more flexible allowing the 
size to be less then the desired amount as long as the allocation will 
fit in the TLAB (defined by min_word_size in the call).

The G1 allocation code also tries to minimize the waste by keeping two 
active allocation regions so that a single large allocation won't cause 
waste that could have been used for other allocations.

Testing
Functional testing through mach5 with hs-tier 1-3 and jdk-tier 1-3. 
Performance testing locally and through aurora without seeing any 
regressions.

Thanks,
Stefan




More information about the hotspot-gc-dev mailing list