感谢JMH,我正在为我的JAVA应用程序添加微基准测试。
我正在Windows 10上运行基准测试:
堆栈分析器运行良好:
java -jar target/benchmarks.jar -prof stack
次要结果 “ benchmark.ValueExtractorBench.cleanValue_Benchmark:·stack”:堆栈分析器:
.... [线程状态分布] ............................................... .....................
99.7% RUNNABLE 0.3% WAITING
.... [线程状态:可运行] ............................... ...................................
26.6% 26.7% java.lang.String.regionMatches 23.2% 23.2% blabla...
但是 xperfasm 在初始化时失败:
java -jar target/benchmarks.jar -prof xperfasm
#运行进度:0.00%完成,预计到达时间00:00:00 #叉子:5之1 #准备分析器:WinPerfAsmProfiler线程“主”中的异常java.lang.IllegalStateException:无法启动xperf:[xperf:错误:NT内核记录器:无效的标志。 (0x3ec)。 ]
at org.openjdk.jmh.profile.WinPerfAsmProfiler.beforeTrial(WinPerfAsmProfiler.java:129) at org.openjdk.jmh.runner.Runner.runSeparate(Runner.java:649) at org.openjdk.jmh.runner.Runner.runBenchmarks(Runner.java:561) at org.openjdk.jmh.runner.Runner.internalRun(Runner.java:320) at org.openjdk.jmh.runner.Runner.run(Runner.java:209) at org.openjdk.jmh.Main.main(Main.java:71)
注意:xperfasm在可用的探查器(-lprof
)中列出得很好
我希望能够使用比 stack 分析器提供的数据更完整的数据来分析我的微基准。
谢谢:)
答案 0 :(得分:0)
当我尝试从没有管理员权限的控制台 运行此错误代码时,我观察到了确切的错误代码。