1

尝试在 Windows 上运行 JMH 基准测试WinPerfAsmProfiler会出现以下错误:

ERROR: No address lines detected in assembly capture, make sure your JDK is PrintAssembly-enabled:
    https://wikis.oracle.com/display/HotSpotInternals/PrintAssembly
4

1 回答 1

3

正如链接所暗示的那样,问题是您必须安装反汇编插件。有几种实现方式。然而,由于自我审查和版权纳粹主义的原因,大多数实现的 Windows 二进制文件都很难获得。可以在这个 SO question 中找到其他信息(我在其中更新了建议的构建步骤,这里不再重复)

您将遇到的另一个问题是您必须以管理员身份运行分析会话。

有关配置 perfasm 的系统属性的其他信息,只能在 and 的源代码中找到AbstractPerfAsmProfilerWinPerfAsmProfiler至少,从 1.9.2 版开始)。

xperf-setprofint 1221 cached一个可能有用的提示:您可以通过在任何管理员命令提示符下运行来将 xperf 的采样频率从 1KHz 增加到 8KHz(并获得更精确的时序信息) 。

于 2015-05-23T18:40:07.973 回答