OMP_NUM_THREADS=1 に設定しても、Numpy がまだ複数のスレッドを使用していることが判明した場合は、別のアプローチが必要です。 Numpy は数値計算に Basic Linear Algebra Subprograms (BLAS) ライブラリを使用している可能性が高く、これ自体が複数のスレッドを利用している可能性があります。
NumPy によって利用されるスレッドの数を制限するには、次のように設定できます。スクリプトを実行する前に環境フラグを設定します。次のように設定してみてください:
export MKL_NUM_THREADS=1 export NUMEXPR_NUM_THREADS=1 export OMP_NUM_THREADS=1
コード内のマルチスレッドの正確な原因を特定するのが難しい場合があることに注意することが重要です。他の回答で概説されているように、他のライブラリでもマルチスレッドが導入される可能性があります。これらの環境フラグは、すべての場合に有効かどうかはわかりませんが、出発点としては適しています。
以上がOMP_NUM_THREADS=1 が失敗した場合に NumPy スレッドの使用率を制限するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。