Oracleは米国時間2019年5月13日、Java仮想マシンの拡張版であるOracle GraalVM Enterprise Editionを発表した。開発および評価用であればOracle Technology Networkからダウンロード可能。また、Oracle Cloudユーザーであれば無償使用できる。

  • Polyglot(ポリグロット)アプリケーションとして任意のプログラミング言語を自由に混在できる(画像は公式ブログより抜粋)

    Polyglot(ポリグロット)アプリケーションとして任意のプログラミング言語を自由に混在できる(画像は公式ブログより抜粋)

公式ブログによれば、Javaアプリケーションを含むプログラムを事前にコンパイルすることで、サービスを最大100倍高速に起動し、メモリー使用量を最大5倍まで削減する。他にもスクリプト化したアプリケーションをネイティブのマシンコードバイナリに事前にコンパイルするGraalVMネイティブイメージや、スタンドアロンもしくは他のシステムに組み込まれたJava仮想マシンでアプリケーションを実行するためのコンパイル済みコードを生成するGraalVMコンパイラ。GraalVM環境へ任意の言語実装を可能にする言語実装フレームワークや、GraalVM Enterpriseでネイティブコードの実行を実現するLLVM Runtime、JavaやScala、Kotlin、JavaScript、Node.jsのサポートといった特徴を備える。

GraalVM Enterpriseは、コンパイル済みコードを並べ替えることでアプリケーションプロセスを加速させる最適化アルゴリズムを含んでおり、Oracleの説明によれば複数のアルゴリズムを用いることで、アプリケーションパフォーマンスは20%のさらなる向上と、メモリー使用量の軽減が可能だという。また、同社はJava仮想マシン用のベンチマークツール「Renaissance」による測定で最大3倍のパフォーマンス向上を示したとアピールする。

阿久津良和(Cactus)