近期在项目开发中,需要进行JVM Heap相关参数设置调优,通过命令:jmap -heap pid可以查看当前JVM Heap初始化参数配置,作为参考JVM调优的参考之一.
以下通过命令的输入,获取到的Heap的初始化配置数据图片,以及各参数的备注简单说明介绍,希望对进行在JVM调优的朋友有用
- Heap Configuration
- Heap 参数备注说明
Heap Configuration: | 堆初始化配置 |
---|---|
MinHeapFreeRatio = 0 | JVM堆最小空闲比率,通过参数-XX:MinHeapFreeRatio=设置,当JVM堆使用率小于n时,heap 进行收缩 |
MaxHeapFreeRatio = 100 | JVM堆最大空闲比率,通过参数-XX:MaxHeapFreeRatio=设置,当JVM堆使用率大于n时,heap进行扩张 |
MaxHeapSize = 994050048 (948.0MB) | JVM堆最大值,通过参数-XX:MaxHeapSize=设置 |
NewSize = 20971520 (20.0MB) | JVM新生代默认值,通过参数-XX:NewSize=设置 |
MaxNewSize = 331350016 (316.0MB) | JVM新生代的最大值,通过参数-XX:MaxNewSize=设置 |
OldSize = 41943040 (40.0MB) | JVM老生代的默认值,通过参数-XX:OldSize=设置 |
NewRatio = 2 | 新生代:老生代=1:2,通过参数-XX:NewRatio=参数指设置Young Generation与Old Generation heap size的比例 |
SurvivorRatio = 8 | Survivor:Eden=1:8,Survivor space是新生代大小的1/(8+2),注:2个survivor区域,通过参数-XX:SurvivorRatio=参数设置 |
MetaspaceSize = 21807104 (20.796875MB) | 元空间默认值,超过则触发Full GC,通过参数-XX:MetaspaceSize=设置 |
CompressedClassSpaceSize = 1073741824 (1024.0MB) | 类指针压缩空间的默认值,通过参数-XX:CompressedClassSpaceSize=设置 |
MaxMetaspaceSize = 17592186044415 MB | 元空间的最大值,通过参数-XX:MaxMetaspaceSize=设置 |
G1HeapRegionSize = 0 (0.0MB) | 使用G1垃圾收集器的时候,堆被分割的大小,通过参数-XX:G1HeapRegionSize=设置 |
Heap Usage: | Heap内存分布 |
PS Young Generation: | 新生代区域内存分配情况 |
Eden Space: | Eden区内存分配情况 |
capacity = 310902784 (296.5MB) | Eden区内存总容量 |
used = 144367024 (137.6791229248047MB) | Eden区内存使用容量 |
free = 166535760 (158.8208770751953MB) | Eden区内存剩余容量 |
46.434780075819454% used | Eden区内存使用率 |
From Space: | Survivor From区内存分配情况 |
capacity = 9961472 (9.5MB) | From Survivor区内存总容量 |
used = 7060944 (6.7338409423828125MB) | From Survivor区内存使用容量 |
free = 2900528 (2.7661590576171875MB) | From Survivor区内存剩余容量 |
70.88253623560855% used | From Survivor区内存使用率 |
To Space: | Survivor To区内存分配情况 |
capacity = 10485760 (10.0MB) | To Survivor区内存总容量 |
used = 0 (0.0MB) | To Survivor区内存使用容量 |
free = 10485760 (10.0MB) | To Survivor区内存剩余容量 |
0.0% used | To Survivor区内存使用率 |
PS Old Generation: | 老生代区内存分配情况 |
capacity = 89653248 (85.5MB) | 老生代区内存总容量 |
used = 37891376 (36.13603210449219MB) | 老生代区内存使用容量 |
free = 51761872 (49.36396789550781MB) | 老生代区内存剩余容量 |
42.264365034493785% used | 老生代区内存使用率 |