Python 是Scipy';s distance.cdist函数只能是单线程还是可以使其成为多线程?
Scipy的distance.cdist函数是单线程还是可以使其成为多线程 我已经在我的计算机上测试了它,两边都有非常大的矩阵((1000000100)和(10100)),并且只使用了一个CPU。我的设置如下,这表明我已安装BLAS:Python 是Scipy';s distance.cdist函数只能是单线程还是可以使其成为多线程?,python,multithreading,numpy,scipy,Python,Multithreading,Numpy,Scipy,Scipy的distance.cdist函数是单线程还是可以使其成为多线程 我已经在我的计算机上测试了它,两边都有非常大的矩阵((1000000100)和(10100)),并且只使用了一个CPU。我的设置如下,这表明我已安装BLAS: >>> import scipy >>> scipy.__config__.show() openblas_info: library_dirs = ['/usr/local/lib'] language = f
>>> import scipy
>>> scipy.__config__.show()
openblas_info:
library_dirs = ['/usr/local/lib']
language = f77
libraries = ['openblas']
openblas_lapack_info:
library_dirs = ['/usr/local/lib']
language = f77
libraries = ['openblas']
blas_opt_info:
library_dirs = ['/usr/local/lib']
language = f77
libraries = ['openblas']
lapack_opt_info:
library_dirs = ['/usr/local/lib']
language = f77
libraries = ['openblas']
blas_mkl_info:
NOT AVAILABLE
我想这取决于度量(当然还有您的BLAS设置)。检查您的openblas是否是用openmp编译的(或者只是用一些大矩阵乘法进行目视检查)。那就说说你的标准吧。除了线性代数中一些更复杂的算法(LAPACK和co.)之外,除了
numpy.dot
之外,没有多少算法是并行的。后者用于公制sqeuclidean
中,例如,您应该看到效果。其他指标,如余弦,在我看来并不平行。