を使用して 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
を使用して 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
問題は、リンクが示唆するように、逆アセンブラー プラグインをインストールする必要があることです。いくつかの実装があります。ただし、自己検閲と著作権ナチズムの理由により、ほとんどの実装の Windows バイナリを入手するのは困難です。追加情報は、この SO の質問 (提案されたビルド手順を更新したため、ここでは繰り返しません) にあります。
もう 1 つの問題は、プロファイリング セッションを管理者として実行する必要があることです。
AbstractPerfAsmProfiler
perfasm を構成するシステム プロパティに関する追加情報は、 andのソース コードでのみ見つけることができますWinPerfAsmProfiler
(少なくとも、バージョン 1.9.2 以降)。
おそらく役立つヒント: xperf のサンプリング周波数を 1KHz から 8KHz に増やすことができます (より正確なタイミング情報を得ることができます) xperf-setprofint 1221 cached
。これは、管理者コマンド プロンプトで実行します。