ホームページ > Java > &#&チュートリアル > JVM で JIT コンパイルされたアセンブリ コードを検査するにはどうすればよいですか?

JVM で JIT コンパイルされたアセンブリ コードを検査するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-12 17:46:10
オリジナル
200 人が閲覧しました

How Can I Inspect the JIT-Compiled Assembly Code in the JVM?

JVM での JIT コンパイルされたコードの検査

Java 仮想マシン (JVM) は、Just-In-Time (JIT) コンパイルを利用して改善を図ります。コードの実行効率。 JIT はバックグラウンドでシームレスに動作しますが、開発者が JIT によって生成されたネイティブ コードを調べようとする場合があります。この記事では、JIT によって生成されたアセンブリ コードを表示する方法について説明します。

一般的な使用法

次のオプションを使用して JVM を実行します。

-XX:+UnlockDiagnosticVMOptions -XX:+PrintAssembly
ログイン後にコピー

特定のメソッドでフィルタリング

するには特定のメソッドのアセンブリ コードを分離するには、次の構文を使用します。

-XX:+UnlockDiagnosticVMOptions -XX:CompileCommand=print,*MyClass.myMethod
ログイン後にコピー

オペレーティング システムによっては、メソッド名に引用符が必要な場合があることに注意してください。インライン メソッドでは、すべての最適化が表示されない場合があります。

Windows への必要なライブラリのインストール

Windows でこれらのオプションにアクセスするには、特定のライブラリをインストールする必要があります。事前に構築されたバイナリは、fcml プロジェクトから取得できます:

  • hsdis-amd64.dll
  • hsdis-i386.dll

または、ライブラリは次のとおりです。 Cygwin を使用して手動でビルドします。両方の方法の手順については、fmlc のガイドで詳しく説明されています。

追加メモ

  • インテル ASM 構文の場合は、他のオプションと一緒に -XX:PrintAssemblyOptions=intel を使用してください。 .
  • 出力アセンブリ コードは通常冗長であり、解釈が難しい場合があります。解釈します。
  • 診断 VM オプションのロックを解除すると、パフォーマンスに影響を与える可能性があります。これらのオプションは、診断目的で必要な場合にのみ使用してください。

以上がJVM で JIT コンパイルされたアセンブリ コードを検査するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート