Excelsior JET 12.0 の新機能

お知らせ

■ Excelsior JET 12.0 リリース : 2017年 7月 11日 (開発元でのリリースは 2017年 7月 7日)

 

アプリケーションのパフォーマンスを向上

Excelsior JET 12.0 では、AMD64 および ARM アーキテクチャー上での最適化されたアプリケーションのパフォーマンスが大幅に向上しました。

  • 新規のプロファイルに基づく最適化 (Profile-guided Optimization: PGO) を含む、AOT コンパイラーの新しい最適化
  • 完全に書き直した JIT コンパイラー
  • ランタイム エンジンの最適化

プロファイルに基づく最適化 (Profile-Guided Optimization)

HotSpot やその他の高度な JIT コンパイラーは、アプリケーション実行プロファイルからデータを自由に使用できることから非常に有用です。あまり知られていない事実として、一般的な C++ コンパイラーは、フリー版でも商用版でも、プロファイルに基づく最適化(PGO) を実装しています。

バージョン 12 から、Excelsior JET Enterprise エディションと Excelsior JET Embedded でオプションとして、PGO を提供します。具体的には、2つのステップがビルドプロセスに挿入されます:

  1. 通常通りプロジェクトをビルドします (つまり PGO なし)。
  2. [新ステップ] プロファイリングを有効にして、典型的な負荷の下で結果のバイナリを実行します。
  3. [新ステップ] PGO を有効にして、プロジェクトをリビルドします。
  4. ... (以前のように進めます: テスト、パッケージ、など)

良いニュースとして、オーバーヘッドは予想よりも重要ではないということです:

  • 特殊なプロファイル収集モードでアプリケーションをリビルドする必要はありません。通常ビルドの実行ファイルに対して起動時にプロファイリングを有効にできます。
  • この特定のシナリオでスマート コンパイルを実装しました。PGO が初期ビルドに比べてコードを変更する場合、クラスはステップ 3 でリビルドされます。通常、アプリケーション コードのごく一部だけが PGO で再コンパイルされます。
  • コードの変更が実行プロファイルに大きな影響を与えることが予想されない限り、最初の 2つのステップは、後続のビルドで省略することができます。

開発元のテストでは、PGO によって提供されるアプリケーションのパフォーマンスが大幅に向上する可能性がありますが、ビルド プロセスにおけるこれらの余分なステップがアプリケーションのパフォーマンスオン変更に価値があるかどうかを判断するために測定を行うのはあなた次第です。

注意: PGO を有効にするコンパイラー オプションは、32-bit x83 ターゲットではまだ影響しません。プロファイルの収集はテクニカル サポートの問題を解決するために役立ちます。これにより、Windows および Linux 用のアプリケーションの 32-bit および 64-bit ビルドに同じプロジェクト ファイルとビルド スクリプトを使用することができます。

PGO の使用方法について »

64-bit グローバル オプティマイザー

グローバル オプティマイザーは、以前は Excelsior JET AOT コンパイラーが 32-bit Windows と Linux を対象にしていました。このテクノロジーが最終的に新しい AMD64 および ARM コンパイラーに組み込まれました。Excelsior JET 12 の最初の例は、アプリケーションのディスク占有量を削減するのに役立ちますが、さらに重要なことは、PGO を組み合わせることでアプリケーションのパフォーマンスを大幅に向上させることができます。

ビルド ツールの統合

Excelsior JET Maven および Gradle プラグインは、Eclipse RCP のほか、すべてのアプリケーション タイプをサポートし、ほとんどすべての機能は、グラフィカル インターフェイスからアクセス可能です。

プラットフォーム固有の改善

64-bit Linux 版は、32-bit ライブラリに依存しなくなりました。

 

リリース ノート

Java テクノロジー サポート

Excelsior JET 12.0 は、Java SE 8 Update 121 (1.8.0_121) をデフォルトでサポートします。

必要なシステム

開発マシンおよびユーザー環境での必要なシステム要件は、こちら

新機能および強化機能

  • アプリケーションのパフォーマンスを向上
  • プロファイルに基づく最適化 (Profile-Guided Optimization) (64‑bit Enterprise 版のみ)
  • 64-bit グローバル オプティマイザー
  • 64-bit Linux 版は、32-bit ライブラリに依存しなくなりました。

 

既知の問題点

OS X

OS X 版では、まだ洗練されたグラフィカル ツールが組み込まれていません (JET Control Panel および JetPackII):

  1. コマンド ラインからのみ開始できます。
  2. XQuartz などの X ウィンドウをインストールする必要があります (その理由) 。
  3. メニューバーが画面のトップではなく、ウィンドウ タイトルバーの下に表示されます。
  4. ファイル チューザー(File choosers) には、Windows L&F があります。

また、スタートアップ アクセラレーターがありません。

 

ロードマップ

今後の開発予定については、開発元のロードマップをご参照ください。

 

 

ページトップへ