G1 GC Tuning parameters
Thomas Schatzl
thomas.schatzl at oracle.com
Mon Aug 20 16:00:32 UTC 2018
Hi,
On Mon, 2018-08-13 at 00:00 +0000, Narasimha C Achi wrote:
> Hi Team,
>
> Please find attached gc logs with fine-tuned JVM parameters. Please
> let me know whether this tuning is good enough to process more
> requests(75-90 transactions per second on each server 6 managed
> servers)
>
> Our observation is that heap free percentage is going to 60%
> from 10% and is there any parameter to set heap free percentage to
> 20%.
from what I understand the logs, heap usage before GC frequently is
5GB out of 6GB, which amounts to 80% heap usage.
I.e. in the line
[Eden: xxxM(xxxM)->.... Survivors: yyyM->YYYM Heap: zzzM(aaaM)-
>ZZZM(aaaM)]
the zzz hovers around 5GB at times, ie. your application at least
temporarily uses that much memory (i.e. G1 maximizing memory usage).
As for the heap usage after GC (ZZZ values), it is normal that they are
lower as they do not account for the eden space (i.e. the area where
your application will allocate into).
I can't tell from this log whether memory usage is stable in this run -
old generation heap usage is low enough even after these three days to
not trigger any garbage cleanup in old gen.
The application is not in a stable state yet as far as I can tell.
Pause times seem to be okay, although sometimes with outliers beyond
50ms. They seem to be basically always caused by (lots of?) instances
of java.lang.ref.References that need to be handled during GC
(reference processing); since you already asked for parallelization of
them, you can try to get more information with -XX:+PrintReferenceGC (I
think as I have not worked with jdk8u for a long time).
However in jdk8u unless disabling ParallelRefProcEnabled and/or
disabling ParallelRefProcBalancing, or tweaking SoftRefLRUPolicyMSPerMB
helps (which depends on the results of PrintReferenceGC a bit), there
is not much GC tuning will change. Only JDK11 improved this part of GC
significantly.
Thanks,
Thomas
More information about the hotspot-gc-use
mailing list