visualVm 中的 visual GC说明

原创
2018/10/16 23:41
阅读数 3.4K

visual GC 不是 visualVM 自带的,需要安装插件。

步聚:菜单栏 (Tools) - > plugins - > Avaiable Plugins 中就选择安装

 

Spaces: 各个分代的内存使用情况。
特别说明:表格有分灰色部分,表示未分配的内存。显明部分,表示已分配的内存。
当 -xmx 不等于 -xms 时,vm是动态根据实际使用的情况去分配内存

-----------------------------------------------------
Graphs

compile time
JIT编译时间  图上标题明说: 37039 次编译,使用 42.169 秒

class Loader Time
类加载时间  图上标题明说:520421 个已经加载 1320 未加载 ,使用 17.327 秒

GC Time
gc 时间 ,图上标题说明:173 次执行gc ,共使用了 5.955秒 。最近一次gc的原因

Eden Space
年青代内存说明
最大 200 M ,实际分配内存:118.062M ,当前使用了 110.839 M  , 148 次 的GC 共使用了 1.6s 秒

Surivor
存活区内存说明
最大内存 25M 实际分配 14.750M 当前使用了 4.147M

old gen
老年代说明
最大内存500M 实际分配了 294.863 M ,当前使用 123.619M , 25 次的GC ,共使用了4.345 秒

metaspace
元空间
最大内存 1.246G 实际分配了 293.738M ,当前使用了 275.150M

--------------------------------------------------------------------------------
Histogram  
这是Survivor 直方图 ,使用 CMS 或 Serial 收集器时显示

Tenuring Threshol: 对像实际 6 晋升年龄

Max Tenuring Threshold: 对像最大的晋升年龄

Desired Survior Size : 当存活区溢出时,存活区的最大内存

Current Surivor Size : 当前存活区的实际分配大小

Histogram
下是表示是存活区各对像年龄的分部图

特别说明:当Tenuring Threshol 总是小于 Max Tenuring Threshold 时,说明年青代提升到老年代的速度太快
这通常是因为 存活区溢出。一旦溢出,最老的对像就被提升至老年代,直到存活区的使用不再超过 Desired Survior Size
,存活区溢出会填满老年代,而导致 Full GC

 

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部