看来我的numpy库正在使用4个线程,而设置OMP_NUM_THREADS=1并没有阻止它.
numpy.show_config() 给我这些结果:
atlas_threads_info:
libraries = ['lapack', 'ptf77blas', 'ptcblas', 'atlas']
library_dirs = ['/usr/lib64/atlas']
define_macros = [('ATLAS_INFO', '"\\"3.8.4\\""')]
language = f77
include_dirs = ['/usr/include']
blas_opt_info:
libraries = ['ptf77blas', 'ptcblas', 'atlas']
library_dirs = ['/usr/lib64/atlas']
define_macros = [('ATLAS_INFO', '"\\"3.8.4\\""')]
language = c
include_dirs = ['/usr/include']
atlas_blas_threads_info:
libraries = ['ptf77blas', 'ptcblas', 'atlas']
library_dirs = ['/usr/lib64/atlas']
define_macros = [('ATLAS_INFO', '"\\"3.8.4\\""')]
language = c
include_dirs = ['/usr/include']
openblas_info:
NOT AVAILABLE
lapack_opt_info:
libraries = ['lapack', 'ptf77blas', 'ptcblas', 'atlas']
library_dirs = ['/usr/lib64/atlas']
define_macros = [('ATLAS_INFO', '"\\"3.8.4\\""')] …Run Code Online (Sandbox Code Playgroud) 我有一个使用大量 numpy 和 numpy.linalg 函数的脚本,经过一番研究后发现,据说它们会自动使用多线程。尽管如此,我的 htop 显示始终仅显示一个用于运行我的脚本的线程。
\n我是多线程新手,现在我不知道如何正确设置它。
\n我主要利用numpy.linalg.svd
这是输出numpy.show_config()
openblas64__info:\n libraries = ['openblas64_', 'openblas64_']\n library_dirs = ['/usr/local/lib']\n language = c\n define_macros = [('HAVE_CBLAS', None), ('BLAS_SYMBOL_SUFFIX', '64_'), ('HAVE_BLAS_ILP64', None)]\n runtime_library_dirs = ['/usr/local/lib']\nblas_ilp64_opt_info:\n libraries = ['openblas64_', 'openblas64_']\n library_dirs = ['/usr/local/lib']\n language = c\n define_macros = [('HAVE_CBLAS', None), ('BLAS_SYMBOL_SUFFIX', '64_'), ('HAVE_BLAS_ILP64', None)]\n runtime_library_dirs = ['/usr/local/lib']\nopenblas64__lapack_info:\n libraries = ['openblas64_', 'openblas64_']\n library_dirs = ['/usr/local/lib']\n language = c\n define_macros = [('HAVE_CBLAS', None), ('BLAS_SYMBOL_SUFFIX', '64_'), ('HAVE_BLAS_ILP64', None), ('HAVE_LAPACKE', None)]\n runtime_library_dirs …Run Code Online (Sandbox Code Playgroud)