実行時に HotSpot が Java コードに対して生成する可能性のある最適化について、よりよく理解したいと思います。
しばらく実行した後、HotSpot が使用している最適化されたコードを確認する方法はありますか?
実行時に HotSpot が Java コードに対して生成する可能性のある最適化について、よりよく理解したいと思います。
しばらく実行した後、HotSpot が使用している最適化されたコードを確認する方法はありますか?
オプション-XX:+PrintAssembly
とを使用してJVMを起動する必要があります-XX:UnlockDiagnosticVMOptions
が、PrintAssemblyではJVMにhsdisバイナリ(HotSpot逆アセンブラ)が必要です。ライセンスの互換性がないため、hsdisバイナリはJVMと一緒に配布されないため、hsdisを自分でコンパイルするか、非公式のWebサイトからビルド済みのhsdisバイナリを見つける必要があります。
出力を理解するには、JITWatchのようなツールが便利です。その指示に従って、JITWatchで分析できるログファイルにデバッグ情報を書き込みます。