Big hiccups with ZGC

Alex Yakushev alex at bytopia.org
Thu Nov 8 13:33:37 UTC 2018


Hi, I mentioned this on Twitter, and you asked me to provide more details.


We've tried ZGC on a Java service where we regularly use G1. It starts 
off very well, with maximum 1-2ms pauses. Then, 30-60 minutes after the 
start, the JVM hiccups (measured with a variation of jHiccup) begin to 
grow reaching a few seconds per pause, and so is the response time of 
the service. However, the GC info that is reported as MBeans does not 
reflect that. Sometimes, the CPU load average also increases, but that 
is harder to reproduce.

The service runs in Docker on a c5.9xlarge AWS machine, with -Xmx50g.

I attach links to GC logs for three different app runs, in each run such 
behavior was observed.

- https://ufile.io/xfp2o - ZGC on OpenJDK 11+28, downloaded from 
download.java.net. Default options.

- https://ufile.io/dx1q8 - ZGC on 
openjdk-shenandoah-jdk11-latest-linux-x86_64-release, downloaded from 
builds.shipilev.net. Default options

- https://ufile.io/22458 - ZGC on same shenandoah build. 8 concurrent 
threads, 16 parallel.

This is an example how our charts look like when it is happening: 
https://imgur.com/a/6ZoYGMP

Hope this helps.


Best regards,

Alexander Yakushev




More information about the zgc-dev mailing list