Java 2 SDK 開発ガイド (Solaris 編)

最適化 JIT コンパイラ

最適化 JIT コンパイラは、Java アプリケーションの起動時に最大の実行速度が与えられるように Java Virtual Machine に指示します。JIT コンパイラの新しい最適化機能には、仮想および非仮想メソッドのインライン化、拡張基本ブロック内の CSE 処理、ループ解析 (配列境界の検査が不要になる)、高速の型検査など、SPARC プラットフォームと Intel (IA) プラットフォームの両方で最適化が実現されます。

インライン化

Java 2 SDK Solaris 版のインライン化を使うと、インライン化を手動で行う必要がなくなります (したがって、プログラムのモジュール性を損うこともありません)。自動インライン化は、フロー制御を含まない比較的小さな非同期メソッドに限られます。

混在モード実行

Java 2 SDK Solaris 版には、性能の大幅な向上を可能にする混在モード実行機能が新たに追加されています。混在モード実行では、VM は性能が重要となるメソッドだけをコンパイルして、残りのメソッドについてはインタプリタとして動作します。この機能はコンパイル時のオーバーヘッドを軽減し、プログラムの起動を高速化します。また、本当に重要な部分のコンパイルと最適化に多くの時間を割いて、性能の向上を図れるようにします。

混在モード実行は、デフォルトのモードです。混在モードでは、VM はメソッドを次の 2 つに分類します。

このそれぞれの種類に対して、JIT コンパイラがコンパイルのタイミングを決定します。ループを含む可能性があるメソッドは最初の実行時にコンパイルされます。ループを含まないメソッドの場合は、15 回目の呼び出し時にコンパイルが行われます。