Uncollected garbage
Kirill Ilyukhin
kilyukhin at gmail.com
Mon Dec 20 11:26:54 UTC 2021
Aleksey,
The heap usage is nearly 100% , with these int[] objects occupying 87%. The
JVM process consumes ~100% of CPU, most of which is GC trying to free up
some memory. Does this fit into "filler objects" explanation?
Thank you,
Kirill
On Mon, 20 Dec 2021 at 19:23, Aleksey Shipilev <shade at redhat.com> wrote:
> On 12/20/21 5:06 AM, Kirill Ilyukhin wrote:
> > I am running a Tomcat server which uses java.awt.image to generate PNG
> > images under a RedHat build of OpenJDK 8 with Shenandoah GC. JVM heap
> usage
> > grows and the heap dump contains a lot of int[] buffers which are not
> > referenced from any CG root. Eclipse Memory Analyzer displays them under
> > the "unreachable_objects" tab. This does not happen when I run the server
> > with the default garbage collector.
>
> Those are likely filler objects:
> https://shipilev.net/jvm/anatomy-quarks/5-tlabs-and-heap-parsability/
>
> That is to say it is unlikely to be a problem: GC cycles would ignore them
> as garbage, and heap
> should be compacted. The potential problem might be region-/TLAB-waste if
> the actual data arrays are
> not fitting the regions/TLABs exactly. You might want to look into
> Shenandoah Visualizer to
> understand the workload behavior better:
> https://github.com/openjdk/shenandoah-visualizer
>
> --
> Thanks,
> -Aleksey
>
>
More information about the shenandoah-dev
mailing list