2

我想使用硬件性能计数器来分析由 Linux 上的 JIT 生成的代码。据我所知,最常见的分析器是oprofileperf

如何集成 JIT 和 oprofile/perf?

我的 JIT 不是 oprofile 已经支持的 JAVA。(性能?)

例如,我们可以考虑 LLVM 的 JIT。我想要

  1. 查看 JIT-ted 代码中最热门的函数(它们的名称)
  2. 查看最热门函数的反汇编,并为每条指令分配性能计数器统计信息
4

1 回答 1

3

要使用 perf 分析 JITed 代码,请下载、编译和安装perf-map-agent库,然后(对于 java 代码)将其添加 -agentpath:<path>/libperfmap.so到命令行。

对于非 java 代码,只要生成了/tmp/perf-$pid.map符号映射文件,perf 就会在生成性能报告时使用这些文件。

Brendan Gregg 有一篇博文,其中包含相关参考资料。

于 2014-10-07T14:48:11.333 回答