問題タブ [numba]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2869 参照

python-3.x - Numba: 抑圧する方法

numba コードでこのエラーが発生し続けます。

私のnumbaコードは以下です。エラー メッセージを非表示にするにはどうすればよいですか?

0 投票する
0 に答える
62 参照

python - Numba が @autojit 関数を標準出力に出力しないようにしますか?

私は 5 つの入れ子になった for ループ関数 (3D フィルターによる画像の畳み込み) を持っており、それをスピードアップする必要があり、numba の @autojit デコレーターを非常に喜んで使用しました。私が持っている唯一の不満は、関数が初めて呼び出されたときです.numbaはautojitを実行しますが、jitされた関数の内部表現であると思われるものを標準出力に出力します。これは、スクロールするのに数秒かかる場合があります。

これを無効にする方法を知っている人はいますか?うまく動作し、高速で、エラーをスローしませんが、少し面倒です。

0 投票する
1 に答える
293 参照

python - 単体テストのセットアップ フェーズで numba をコンパイルできますか?

私は numba を使用して、autojit デコレーターを使用して Python コードの一部を高速化しました。テストに合格し、%timeit はコードが実際に高速化されていることを示しています。

最初の実行が遅いのは、numba がコードをコンパイルしているためだと思います。理にかなっています。しかし、一連のテストを実行すると、実行速度が非常に遅くなり、変更前の 10 個のテストが約 10 秒、同じテストが 117 秒で完了しました。numba は、テストごとに別々に、何度も何度もコンパイルする必要があるようです。

これを避けることはできますか?関数内で 1 つの簡単なテストを実行しようとしましたsetUpが、すべてのテストで関数が 1 回コンパイルされる可能性があると考えましたが、実行時間は大幅に変わりませんでした。

0 投票する
1 に答える
809 参照

python - NumPy RandomState をインスタンス化しようとすると Numba エラーが発生する

Numba でスピードアップしたいクラスがあります。このクラスは、特定のシードを使用して NumPy の RandomState のインスタンスを作成するだけで、各インスタンスに「乱数ジェネレーター」を使用します (したがって、後で作業を複製できます)。Numba の autojit を使用すると、「通常の」Python では発生しない奇妙なエラーが発生します。

幸いなことに、この動作は非常に簡単に再現できます。エラーを説明する簡単な例を次に示します。

Ubuntu 13.10 で Anaconda ディストリビューションを使用しています。

何かご意見は?

編集:NumPysの「numpy.random.RandomState」の代わりにPythonの標準「random.Random」を使用するだけの回避策を見つけました

例:

これは私の当面のアプリケーションで機能します(他の問題がすぐに発生しましたが、万歳)。

ただし、この修正は、numpy.random.RandomState を使用する必要があることがわかっている将来のアルゴリズムでは機能しません。だから私の質問はまだ残っています - 元のエラー、および/または Numba で numy.random.RandomState を使用するための回避策に関する洞察を持っている人はいますか?

0 投票する
1 に答える
248 参照

python - numba を試すためのラッパー

numbaこのラッパーは、利用可能性 (「インポートできますか?」) とユーザー設定 (「numba_enabled()True を返しますか?」)に応じて numba を使用するかどうかに応じて作成しました。

これは、numba の有無にかかわらずテストを実行したいテストに特に役立ちます。

問題: ラッパーが原因で、そうでなければ機能する関数がこのエラーをスローします。

ラッパーをオーバーライドしてを設定try_numba_autojit = numba.autojitすると、エラーは発生しません。*args は numba が気に入らないことをしている可能性があると結論付けています。

pdb で、引数を手動で解凍しようとしました。

同じエラーが発生します。

try_numba_autojitnumba を動揺させないように推奨される関数の定義はありますか?

0 投票する
1 に答える
351 参照

python - Python/Numba で配列にアクセスすると奇妙な結果が生じる

numpy を numba で使用しようとしていますが、int に変換された float インデックスを使用して float の numpy 配列にアクセスまたは値を設定しようとすると、奇妙な結果が得られます。この基本機能で確認してください。

結果:

テーブルに 1.0 ではなく 1.875 が表示されるのはなぜですか? これは基本的な例ですが、大きな配列で作業しているため、多くのエラーが発生します。index をnp.int32に変換し、 @numba.jit("void(f8[:,::1],f8[:,::1])")@numba.jit("void(f8 [:,::1],i4[:,::1])")それは正常に機能していますが、なぜこれが機能しないのかを理解していただきたいと思います。Python から C++ への型の解析中に問題がありますか?

助けてくれてありがとう