Apabila anda menetapkan OMP_NUM_THREADS=1 namun mendapati Numpy masih menggunakan berbilang benang, pendekatan berbeza diperlukan. Kemungkinan Numpy menggunakan perpustakaan Subprogram Algebra Linear Asas (BLAS) untuk pengiraan berangka, yang mungkin menggunakan berbilang benang.
Untuk mengehadkan bilangan utas yang digunakan oleh NumPy, anda boleh menetapkan tertentu bendera persekitaran sebelum melaksanakan skrip anda. Cuba tetapkan yang berikut:
export MKL_NUM_THREADS=1 export NUMEXPR_NUM_THREADS=1 export OMP_NUM_THREADS=1
Perlu ambil perhatian bahawa sumber tepat berbilang benang dalam kod anda kadangkala sukar dikenal pasti. Perpustakaan lain, seperti yang digariskan oleh respons lain, mungkin juga memperkenalkan multithreading. Bendera persekitaran ini mungkin berkesan atau mungkin tidak dalam semua kes, tetapi ia adalah titik permulaan yang baik.
Atas ialah kandungan terperinci Bagaimana untuk Mengehadkan Penggunaan Benang NumPy Apabila OMP_NUM_THREADS=1 Gagal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!