ZGC Unable to reclaim memory for long time

Florian Weimer fw at deneb.enyo.de
Wed Nov 6 21:22:42 UTC 2019

* Sundara Mohan M.:

> To be clear "before" i was referring to my previous GC, Parallel/G1/CMS.
> Here is what i was seeing
> Instance1 - 8G heap,   ParallelGC, 100RPS,  200ms Latency
> Instance2 - 8G heap,   ZGC,           100RPS,  600ms Latency
> Instance3 - 32G heap, ZGC,           100RPS,  200ms Latency

Latency is measured end-to-end, including processing time and stalls

Keep in mind that ZGC does not supported compressed pointers, so if
your workload is heavy on pointers, the VM has to do more work, and
the memory requirements are also higher.

> My expectation was Instance2 should give me same result as Instance1 but
> that is not the case. Instead i had to move to Instance3 setting to get
> what i want.

It's difficult to beat ParallelGC in terms of overall CPU efficiency.
If you do not have CPU cycles to spare and the GC does not have
sufficient extra heap to work with beyond the live object set (to some
extent, you can trade RAM vs CPU), application performance will

You could also give Shenandoah a try. 8-)

More information about the zgc-dev mailing list