如何使用 Java 8 选项 -XX:+UsePerfData

how to use Java 8 option -XX:+UsePerfData

java 8 oracle 文档提到了选项 -XX:+UsePerfData (https://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html),其描述如下:

-XX:+UsePerfData
    Enables the perfdata feature. This option is enabled by default to allow JVM monitoring and performance testing. Disabling it suppresses the creation of the hsperfdata_userid directories. To disable the perfdata feature, specify -XX:-UsePerfData.

但是我不知道如何使用这些性能数据。 我可以通过什么软件/工具来分析这些数据?

-XX:+UsePerfData负责收集HotSpot Performance Counters并导出到外部工具。这个选项默认是开启的。

启用 PerfData 后,HotSpot JVM 会在 /tmp/hsperfdata_<user> 目录下为每个 JVM 进程创建一个文件。许多工具,包括 jpsJConsoleVisualVM,扫描此目录以查找 运行 JVM。如果禁用 PerfData,这些工具将不会自动发现 JVM。

jstat 是依赖 HotSpot 性能计数器的标准 JDK 工具之一。 jstat 不适用于禁用了 PerfData 的 JVM。

jcmd <pid> PerfCounter.print 是另一个标准命令,它打印给定进程导出的所有性能计数器。