G1 trace humongous allocations
Roy Zhang
roy.sunny.zhang007 at gmail.com
Wed Aug 8 07:14:02 UTC 2018
Hi All,
Currently we are evaluating G1 in our company, find uncertainty of
humongous object is major show stopper issue to roll out G1 in our
production.
Our heap size is 36G, region size is 16M determined ergonomically by JVM,
we find there are about 800~1300 humongous regions during some period which
is not acceptable, it was caused by our *ugly* code, after we fix it, we
increase region size to 32M (max region size), but we still do see many
(>600) short-lived humongous objects during some period. So we have to
identify humongous object allocation pattern first.
Based on archived hotspot gc use mail list
http://mail.openjdk.java.net/pipermail/hotspot-gc-use/2013-December/date.html#1682
(5 years ago), charlie hunt and Krystal Mok
mentioned AllocObjectOutsideTLAB event in JFR, does anyone have some
experience in using it to identify humongous objects allocation pattern?
BTW, our code base is very big, and we have many server types, goal for me
is use some automated ways to find humongous object in our whole code base.
And during research, find some promising tool: APROF, BTrace and
YourKIT(last resort because it is Commercial).
It is highly appreciated that if any of you could provide comment for above
tools (JFR, APROF,BTrace, YourKIT) to find humongous objects using
automated ways, or pls let me know alternative ways/tools to find humongous
objects.
BTW, built a custom / modified version of OpenJDK to print humongous
objects and stack trace would be a bit impossible for me in short term.
Thanks,
Roy
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/hotspot-gc-use/attachments/20180808/36775425/attachment.html>
More information about the hotspot-gc-use
mailing list