IronPythonの起動時間がとても遅いのはなぜですか?
-
06-07-2019 - |
質問
私はしばらくの間IronPythonを使用していますが、私の開発を本当に妨げているのは、起動に耐え難いほど遅いということです。私は言語とその働き方が大好きですが、コードの実行を開始するまで20秒以上待たなければならないのはイライラします。
掘り下げましたが、問題は import
ingではなく、その段階の前にあるようです。
ありがとう。
解決
これは2.6で修正中です。今日ベータ1をダウンロードすると、おそらく大幅に改善されます起動時間。
問題は、通常、ほとんどの時間はコードのJITに費やされることです。 64ビットが遅いため、64ビットマシンを使用している場合に特に顕著です。 2.6では、実際に最初に実行されるまでコンパイルを遅らせ、必要に応じて1回または2回だけ解釈し、実行時に生成する多くのコードをIronPython.dllに移動しました。あまりにもngenの恩恵を受ける。アプリが大きくなればなるほど、これらのすべての変更から得られる改善が大きくなります。
IronPythonのインストール時にngenオプションをチェックしなかった場合は、「ngen install ipy.exe」を実行して、コマンドラインからngenオプションに戻ることができます。 ngen.exeは、C:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ ngen.exeにあります。64を使用している場合は、C:\ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 \ ngen.exeビットマシン。ただし、管理者のコマンドプロンプトである必要があります。これは、安定版で今日いくつかの利点を提供します。 64ビットを使用している場合は、チェックボックスをオンにした場合でもこれを行う必要があります。64ビットでngenが正しく動作するのを妨げるバグがあります。