Java 10 - JIT コンパイラ
JEP 317 − 実験的な Java ベースの JIT コンパイラ
JIT コンパイラは C++ で記述され、Java をバイトコードに変換するために使用されます。現在、Java 10 には、実験的な Java ベースの JIT コンパイラを有効にするオプションがあり、標準の JIT コンパイラの代わりに Graal を使用できます。 Graal は、Java 9 で導入された JVMCI (JVM Compiler Interface) を使用しています。Graal は Java 9 でも使用できます。 Java 10 を使用すると、Graal で実験的な JVM コンパイラをテストおよびデバッグできるようになります。
構文
java -XX:+UnlockExperimentalVMOptions -XX:+UseJVMCICompiler
Graal コンパイラは、C++ ベースの以前のコンパイラを完全に書き直したもので、Linux/x64 ベースのプラットフォームを対象としています。 Graal は、現在使用されている JIT コンパイラの代替として Java 9 で導入されました。 Graal は JVM のプラグインであり、動的にプラグインできます。多言語言語の解釈もサポートしています。
リスクと仮定
Graal は実験的であり、さまざまな Hotspot とさまざまなフラグ オプションを使用した jdk テストを考慮したテスト作業の対象となります。標準の JIT Ahead of Time コンパイラと比較して、パフォーマンスのベンチマークに失敗する場合があります。
Java