SCALAのAOTコンピレーションまたはネイティブコードコンピレーション?
-
28-10-2019 - |
質問
私のSCALAアプリケーションは、整数と2倍の大きな配列で簡単な操作を実行する必要があり、パフォーマンスはボトルネックです。さまざまなベンチマークを通じて彼らの結果を観察することができますが、特定の最適化がキックイン(エスケープ分析など)に正確に指を置くのに苦労しました。 SCALAアプリケーションのAOTコンピレーションを行いたいので、特定の最適化を確認または実施(または実装)することができます...または可能であればネイティブコードにコンパイルすることができます。違いを生みます。
私の質問:SCALAの代替編集方法はどのようなものですか? LLVM、VMKIT、SOOT、GCJなどのツールに興味があります。この時点でSCALAで正常に使用しているのは誰ですか?
解決 2
私自身の質問に答えるために、JVMを除いてScalaの代替バックエンドはありません。 .NETバックエンドは長い間開発されてきましたが、そのステータスは不明です。 LLVMバックエンドもまだ使用の準備ができておらず、その将来が何であるかは明確ではありません。
他のヒント
GCJは、JVMクラスをネイティブコードにコンパイルできます。このブログは、Scalaコードで行われたテストについて説明しています。 http://lampblogs.epfl.ch/b2evolution/blogs/index.php/2006/10/02/scala_goes_native_al most?blog=7
所属していません StackOverflow