Java Native Memory Tracking(NMT)

典型特性

(1)NMT功能默认关闭

(2)借助jcmd工具可以获取摘要/详细报告

(3)建立基线并比较其变换量

(4)在进程退出时打印内存报告

1.开启方法

启动目录中添加如下参数,默认为off,可以设置为summary或detail来打印概要或详细信息。

-XX:NativeMemoryTracking=[off | summary | detail]

注意:打开NMT会增加5%-10%的性能开销。

 

 2.Jcmd工具获取NMT信息

  jcmd <pid> VM.native_memory [summary | detail | baseline | summary.diff |detail.diff | shutdown] [scale= KB | MB | GB]

 

 3.进程退出时获取NMT信息

  进程退出是打印NMT信息需要在启动命令中添加-XX:+UnlockDiagnosticVMOptions -XX:+PrintNMTStatistics参数

 

4.NMT memory 分类

 

 

 

 

 

 

Native Memory Tracking

https://docs.oracle.com/en/java/javase/12/vm/native-memory-tracking.html#GUID-710CAEA1-7C6D-4D80-AB0C-B0958E329407

Diagnostic Tools
https://docs.oracle.com/en/java/javase/12/troubleshoot/diagnostic-tools.html#GUID-5EF7BB07-C903-4EBD-A9C2-EC0E44048D37

 

posted on 2021-01-22 10:52  王.小辉  阅读(601)  评论(0编辑  收藏  举报

导航