Javaのネイティブバイナリ生成可能なGraalVMの全機能が無料に、最適化コンパイラやG1ガベージコレクションを含む。本番環境でも利用可能

2023年6月15日

オラクルは、同社がJavaディストリビューションとして提供しているGraalVMの新ライセンス「GraalVM Free Terms and Conditions」(GFTC)を発表し、あわせてこれまで有償版のGraalVMに含まれていた全ての機能を含む新ディストリビューション「Oracle GraalVM」の提供を開始しました。

GFTCでは、これまで有償版のGraalVMで提供してきた最適化コンパイラやG1ガベージコレクションなどを含むすべての機能が無料で利用可能となり、本番環境での利用も許諾されます。

より高速なJavaのネイティブバイナリ生成が可能に

GraalVMは、Oracle JDKやOpenJDKとは別にオラクルが開発し提供してきたJavaのディストリビューションです。

Javaのアプリケーションコードを事前コンパイルしてネイティブバイナリを生成する機能を備えていること、Java以外にJavaScript、Python、Ruby、Rなど多言語対応のランタイムを備えていることを大きな特徴としています。

特にJavaネイティブバイナリの生成機能は注目されており、昨年(2022年)10月にはこのコンパイル機能を含むGraalVMのJava関連コードがOpenJDKコミュニティに寄贈されることが発表されたことで、今後OpenJDKにもネイティブバイナリを生成するJavaの事前コンパイラが実装されていくのではないかと期待されています。

参考:[速報]オラクル、OpenJDKコミュニティにGraalVM CEのJava関連コードを寄贈すると発表。JavaOne 2022

今回、新しいディストリビューションとなったOracle GraalVMには、有料版のGraalVM Enterprise Editionにのみ含まれていたコンパイル時にプロファイルを基にした高度な最適化を行う機能、ガベージコレクションによるアプリケーションの動作を最小限にするG1ガベージコレクション機能、実行時のメモリ使用量を小さく出来るオブジェクトヘッダやポインタの圧縮機能、プロファイル情報の機械学習による推論機能、SBOMサポートなどが加わりました。

これにより、新しいGraalVMを用いて生成したJavaのネイティブバイナリイメージでは、従来のJITや無料版GraalVMを用いたネイティブバイナリと比較しても、より高速に起動し実行されるJavaネイティブバイナリイメージが生成できると説明されています。

下記はSpring Boot 3の起動にかかる時間を比較したもので、一番右の最新のGraalVMによるネイティブバイナリのイメージが圧倒的に高速であることが示されています。

fig

今回リリースされたGraalVMはJDK 17とJDK 20に対応しています。今後は最新のJavaバージョンに合わせてアップデートされていく見通しです。

あわせて読みたい

Java プログラミング言語 GraalVM Oracle




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本