ParNew - how does it decide if Full GC is needed

Vitaly Davidovich vitalyd at gmail.com
Thu May 8 00:55:45 UTC 2014


Yes, I know :) This is some cruft that needs to be cleaned up.

So my suspicion is that full gc is triggered precisely because old gen
occupancy is almost 100%, but I'd appreciate confirmation on that.  What's
surprising is that even though old gen is almost full, young gen has lots
of room now.  In fact, this system is restarted daily so we never see
another young gc before the restart.

The other odd observation is that survivor spaces are completely empty
after this full gc despite tenuring threshold not being adjusted.

My intuitive thinking is that there was no real reason for the full gc to
occur; whatever allocation failed in young could now succeed and whatever
was tenured fit, albeit very tightly.

Sent from my phone
On May 7, 2014 8:40 PM, "Bernd Eckenfels" <bernd-2014 at eckenfels.net> wrote:

> Am Wed, 7 May 2014 19:34:20 -0400
> schrieb Vitaly Davidovich <vitalyd at gmail.com>:
>
> > The vm args are:
> >
> > -Xms16384m -Xmx16384m -Xmn16384m -XX:NewSize=12288m
> > -XX:MaxNewSize=12288m -XX:SurvivorRatio=10
>
> Hmm... you have confliciting arguments here, MaxNewSize overwrites Xmn.
> You will get 16384-12288=4gb old size, thats quite low. As you can see
> in your FullGC the steady state after FullGC has filled it nearly
> completely.
>
> Gruss
> Bernd
> _______________________________________________
> hotspot-gc-use mailing list
> hotspot-gc-use at openjdk.java.net
> http://mail.openjdk.java.net/mailman/listinfo/hotspot-gc-use
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/hotspot-gc-use/attachments/20140507/80b12567/attachment.html>


More information about the hotspot-gc-use mailing list