Region-level compaction and related considerations for G1 to better facilitate H-objects

Tao Mao yiyeguhu at
Sat Jun 27 00:46:57 UTC 2015

Hi there,

Recently in using G1 on our realtime-focused production servers, I noticed
some full GCs were triggered by humongous allocation failure due to
*fragmentation* of free regions while it's still having enough space in

I'm not suggesting that we move H-objects around. Just wonder if we have
the following or similar in place or plan to have. e.g.,

(1) For evacuation, we grab free regions closer to the start of heap and/or
try to grab free regions with fewer neighboring free regions.
(2) Humongous object allocation tries to find the most suitable location,
i.e., least waste of its neighboring free regions after H-allocation.

Is there something along this line to fight region-level fragmentation, or
related fixed bugs? If so, any pointers?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the hotspot-gc-dev mailing list