Java 10で実験的Graal JITコンパイラを有効化する方法
JEP 317 - 実験的JavaベースJITコンパイラ
JITコンパイラはC++で書かれ、Javaをバイトコードに変換します。Java 10では、標準のJITコンパイラの代わりに実験的なJavaベースのJITコンパイラ「Graal」を使用するオプションが追加されました。GraalはJava 9で導入されたJVMCI(JVM Compiler Interface)を使用します。GraalはJava 9でも利用可能でしたが、Java 10では実験的JVMコンパイラとしてテスト・デバッグ目的でGraalを有効化できます。
有効化構文
java -XX:+UnlockExperimentalVMOptions -XX:+UseJVMCICompiler
Graalコンパイラは、従来のC++ベースコンパイラの完全な書き換えで、Linux/x64プラットフォームをターゲットとしています。GraalはJava 9でJITコンパイラの代替として導入され、JVMへのプラグインとして動的に組み込み可能です。ポリグロット言語解釈もサポートしています。
リスクと前提
Graalは実験的であり、さまざまなHotSpotおよびJDKテストを様々なフラグオプションで考慮したテスト作業の対象です。標準のJIT AOTコンパイラと比較して、一部のベンチマークで性能面から失敗する可能性があります。
Java
- Java演算子をマスター:種類、構文、実践例
- Javaコメント:種類、使い方、ベストプラクティス
- Java拡張forループをマスター:構文、例、ベストプラクティス
- Java文字列をマスター:生成、メソッド、ベストプラクティス
- Javaインターフェース完全ガイド:概念、実装、ベストプラクティス
- Java無名インナークラス完全ガイド:定義、構文、実践例
- Javaのtry-with-resourcesをマスターする:自動リソース管理の仕組みと活用法
- Javaアノテーション完全ガイド:種類、配置場所、実践例
- Javaアサーション完全ガイド:バグ早期発見とコード信頼性の向上
- Java Vectorの理解:使い方、特徴、ArrayListとの比較
- Java 10で実験的Graal JITコンパイラを有効化する方法