Maison  >  Article  >  développement back-end  >  Comment limiter l'utilisation des threads NumPy en cas d'échec de OMP_NUM_THREADS=1 ?

Comment limiter l'utilisation des threads NumPy en cas d'échec de OMP_NUM_THREADS=1 ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-19 12:49:02876parcourir

How to Limit NumPy Thread Utilization When OMP_NUM_THREADS=1 Fails?

Limiter le nombre de threads dans NumPy

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn