Strange behaviour on half-occupied heap

Aleksey Shipilev shade at redhat.com
Mon Aug 27 08:35:40 UTC 2018


On 08/16/2018 11:30 AM, Aleksey Shipilev wrote:
> On 08/10/2018 05:22 PM, Simon Ogorodnik wrote:
>> Sometime after long run (8-9 hours with almost half-occupied heap) of application with Shenandoah GC, I observe strange behaviour
>> I can describe it as continuous evacuation of whole GCLAB. 
> 
> Thanks for the verbose bug report!
> 
> I think this is a heuristics bug. Adaptive CSet selection decides how much to evacuate based on the
> heuristics guidance how much free space we have to have by the end of the cycle ("Min Garbage"
> below). The runaway happens when that target free threshold tanks significantly, so heuristics
> decides to evacuate everything in reach.
> 
> I'll study why that happens. Meanwhile, you may want to cap the max at, say, 30% with
> -XX:ShenandoahMaxFreeThreshold=30.

Current {dev, 11, 10, 8} builds have better "adaptive" heuristics that should be immune to this
runway. Please try again?

Thanks,
-Aleksey




More information about the shenandoah-dev mailing list