Lorsque vous définissez OMP_NUM_THREADS=1 et que vous constatez pourtant que Numpy utilise toujours plusieurs threads, une approche différente est nécessaire. Il est probable que Numpy utilise la bibliothèque BLAS (Basic Linear Algebra Subprograms) pour les calculs numériques, qui peuvent elle-même utiliser plusieurs threads.
Afin de limiter le nombre de threads utilisés par NumPy, vous pouvez définir certains indicateurs d'environnement avant d'exécuter votre script. Essayez de définir ce qui suit :
export MKL_NUM_THREADS=1 export NUMEXPR_NUM_THREADS=1 export OMP_NUM_THREADS=1
Il est important de noter que la source exacte du multithreading dans votre code peut parfois être difficile à identifier. D'autres bibliothèques, comme indiqué dans d'autres réponses, peuvent également introduire le multithreading. Ces indicateurs environnementaux peuvent être efficaces ou non dans tous les cas, mais ils constituent un bon point de départ.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!