来自 Netflix 的 Brendan Gregg 和 Martin Spier 最近分享了一篇非常有趣的文章,标题为 Java in Flames ,描述了他们使用新的 JDK 选项 (-XX:+PreserveFramePointer) 进行的最新实验,该选项允许他们创建完整的 CPU 消费者视图作为“火焰”图.本文是高级读物,但对 Java 性能爱好者来说非常有趣。
这个选项现在包含在最近发布的 JDK 8u60 中。
我们将很快创建我们自己的实验,并发布一个视频来探索这种实时 CPU 分析功能与现有 CPU 分析工具和技术的对比。正如文章中提到的,一个明显的附加值是自动化和可视化版本或代码更改之间的 CPU 利用率增量(与既定基线的偏差)。
这种方法将允许快速检测 CPU 瓶颈或软件更改后的改进,从长远来看提高生产环境的整体性能和可扩展性,并控制云或本地硬件成本。
这是 原始文章 的一小段:
“Java 混合模式火焰图提供了 CPU 使用情况的完整可视化,并且刚刚通过新的 JDK 选项成为可能:-XX:+PreserveFramePointer。我们一直在 Netflix 开发这些用于日常 Java 性能分析,因为它们可以识别所有CPU 消费者和问题,包括那些对其他分析器隐藏的……”