11

Excelsior JETを使用してネイティブにコンパイルされたJavaアプリケーションを、通常のJavaランタイムでジャストインタイムで実行されている同じアプリケーションに対してベンチマークしようとしたことがありますか?私が見つけることができる唯一のベンチマークは、ExcelsiorのWebサイトでホストされており、単一のアプリケーション用です。いくつかの独立した結果を見たいです。

私のアプリケーションは、CPUとメモリの両方の使用率が高くなっています(機械学習モデルのトレーニングです)。Jetを使用してもパフォーマンスが向上することは期待できませんが、Javaランタイムが利用できない環境で実行する必要がある場合があり(したがって、ネイティブにコンパイルする)、パフォーマンスが大幅に低下するかどうかを知る必要があります。

Excelsiorには評価があることを私は知っています。利用可能ですが、ダウンロード、構成、テストなどの時間を節約したいと思っています...

4

4 に答える 4

22

免責事項: 私はエクセルシオールで働いています。

あなたの質問に答えるために、私が知っている最新のサードパーティのベンチマーク結果は次のとおりですが確認したところ、その投稿は 4 年以上前のものです...

では、アドバイスをさせてください。

Excelsior JET 市場での 13 年以上の経験に基づいて、特定のアプリケーションに対してテストする必要があると言えます。ネイティブにコンパイルされたときにアプリがどのように動作するかを示すベンチマークはありません。私たちが言うように、走行距離は異なります。私たちのラボでは見たことのない速度の向上を報告している顧客がいます。また、アプリケーションが大幅に遅くなったために、評価を早期に放棄する見込み客もいます。(後者は多くの場合、構成の誤りが原因で発生します。たとえば、すべてのクラスがプリコンパイルされているわけではありません。このような問題が発生した場合は、当社のエンジニアに連絡してください。)

弊社のWebサイトにもいくつか性能比較の事例がありますが( #1#2 )、もちろんアプリが速くなったユーザーのものです。;)

2014 年 12 月 15 日更新:注意事項: Excelsior JET 10 の時点で、64 ビット バージョンはパフォーマンスの点で 32 ビット バージョンに遅れをとっています。前者はゼロから構築された新しいコンパイラ コアに基づいているためです。最適化があまり実装されていません。私たちはこの状況を逆転させるために懸命に取り組んでいますが、現時点では、パフォーマンスが重要であり、大きなヒープや 64 ビットとの統合の必要性など、64 ビット バージョンを使用する正当な理由がない場合は、ネイティブ ライブラリ、または OS X をターゲットにする必要性から、実証済みの真の 32 ビット バージョンに固執します。

于 2012-07-19T03:36:26.910 に答える