JEP 308: G1 Ergonomics

Kirk Pepperdine kirk at
Thu Jul 27 07:45:46 UTC 2017


Great to see more work being done on improving G1 heuristics. From the data we’ve collected this year I can say that when G1 has needed to be tuned, one of the most useful levers has been -XX:G1NewSizePercent. 5% is often too small which then prematurely pushes data into tenured spaces. The next lever has been increasing reserved size from 5% to something bigger. This seems to help the collector cope with applications that seem to have bursty humongous allocation behavior (aka JSON serialization). Third would be G1MixedGCLiveThresholdPercent as even at 85% that can sometimes be too low a setting. Finally, balancing out mixed collection counts often helps stabilize pause times. Quite frequently the mixed collection count is 1 for just about every collection. Getting that to be mostly 8.. better.

Kind regards,
Kirk Pepperdine

More information about the hotspot-gc-dev mailing list