2017-12-27 56 views
-1

最後の日は、Pythonを実行可能なC/C++プログラムにコンパイルするツールであるNuitkaを使いこなしていました。PyPyとNuitka

(PyPyと比較して)Nuitkaのスピード上の利点はありませんでした。 Nuitkaの意味は何ですか?何か不足していますか?

答えて

3

NuitkaとPyPyの目標は大きく異なります。

Nuitka PythonプロジェクトをPython C-APIを使用してCにコンパイルしています(AOT)。このようにして、Cythonに似ています。これはまだ若いプロジェクトですが、驚くほどのpython言語仕様との完全な互換性を実現しています。次のステップは、gcc -O3のようにコンパイラプロセスの最適化を有効にすることです。 Nuitkaは、Pythonコードを実行可能ファイルに変換するために使用されます。次に、オリジナルのPythonコードの不明瞭さのレベルで、実行可能ファイルを「出荷」します。

PyPy組み込みコードを実行中のジャストインタイム(JIT)コンパイルを行います。実行中のコードをトレースし、ホットスポットを特定し、プログラムのホットセクションのより速いバージョンを生成します。それも、python言語仕様との完全な互換性を持っています。それはあなたのPythonコードを前もって変換しないので、最終的な製品としてあなたのPythonコードを "出荷"します。

私は両方のプロジェクトが実行速度を向上させ続けると思っていますが、それらは非常に異なるニーズをターゲットにしています。

関連する問題