【发布时间】:2018-01-25 04:58:58
【问题描述】:
我在 java 7 中使用下面的 JAVA GC 参数。
-Xmx12g -Xms12g
-XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:MaxGCPauseMillis=100 -XX:InitiatingHeapOccupancyPercent=15 -XX:ConcGCThreads=8 -XX:ParallelGCThreads=16 -XX:G1ConcRefinementThreads=17 -XX:+UseCompressedOops -XX:G1ReservePercent=20 -XX:+ParallelRefProcEnabled -XX:+ExplicitGCInvokesConcurrent
我想知道如果我们看到 GC 被触发,那么堆利用率的百分比是多少。
-XX:G1ReservePercent=20:保留 20%。
-XX:InitiatingHeapOccupancyPercent=15:因此,我认为当我的堆使用 65%(总计 100% - 15 = 85 但保留 20%,因此 65%)时,GC 将被触发。
我的理解正确吗?
【问题讨论】:
-
我已经查过了,明白了。但不确定我的理解是否正确。
-
这是一个很老的问题,但我想知道你为什么要设置 Xmx == Xms?
标签: java performance garbage-collection