Javaリファレンス

Java HotSpot VMで実行されるJVMベースのアプリケーションは、GraalVMで実行できます。GraalVMはJava HotSpot VMに基づいていますが、Javaで記述された高度なJust-in-Time (JIT)コンパイラ(Graalコンパイラ)を統合しています。実行時に、アプリケーションはJVMに通常どおりロードされ、実行されます。JVMはバイトコードをGraalコンパイラに渡し、コンパイラはそれをマシン・コードにコンパイルしてJVMに返します。

GraalVMの動的コンパイラは、コード分析および最適化への独自のアプローチを通じて、Java、Scala、Kotlinまたはその他のJVM言語で記述されたアプリケーションの効率性と速度を向上させることができます。たとえば、コストのかかるオブジェクト割当てを排除できるため、高度に抽象化されたプログラムのパフォーマンス上の利点が確保されます。さらに学習するには、Graalの「コンパイラ」ページを参照してください。オープン・ソース・コンパイラのコードは、GitHubで入手できます。

コンパイラのオペレーティング・モード

HotSpot JITコンパイラとして使用する場合、Graalには次の2つの操作モードがあります:

相互運用性

JVMベースの言語をGraalVMで実行する以外に、Truffle言語実装フレームワークで実装された他の言語をJavaから直接コールすることもできます。他のプログラミング言語との相互運用性の詳細は、「ポリグロット・プログラミング」および「言語の埋込み」ガイドを参照してください。