Python 强制numpy使用OpenBlas
基本上,我需要将两个(10^6 x 10^6)整数元素数组相乘,但我无法使用numpy.dot。 在查看其他帖子时,我发现如果我将矩阵的类型切换为float32或更大,如果我安装了openblas(我已经安装了openblas),dot操作会更快。 事实上,我把我的数组tipe改成了float32,它实际上运行得快多了 所以我的问题是,假设numpy真的在使用OpenBlas,有没有办法强迫numpy使用OpenBlas库,这样我仍然可以把我的矩阵作为int类型 在这里,我让你我的numpy配置,如果它有任何帮助Python 强制numpy使用OpenBlas,python,numpy,openblas,Python,Numpy,Openblas,基本上,我需要将两个(10^6 x 10^6)整数元素数组相乘,但我无法使用numpy.dot。 在查看其他帖子时,我发现如果我将矩阵的类型切换为float32或更大,如果我安装了openblas(我已经安装了openblas),dot操作会更快。 事实上,我把我的数组tipe改成了float32,它实际上运行得快多了 所以我的问题是,假设numpy真的在使用OpenBlas,有没有办法强迫numpy使用OpenBlas库,这样我仍然可以把我的矩阵作为int类型 在这里,我让你我的numpy配置
np.__config__.show()
blas_mkl_info:
NOT AVAILABLE
blis_info:
NOT AVAILABLE
openblas_info:
libraries = ['openblas', 'openblas']
library_dirs = ['/usr/local/lib']
language = c
define_macros = [('HAVE_CBLAS', None)]
blas_opt_info:
libraries = ['openblas', 'openblas']
library_dirs = ['/usr/local/lib']
language = c
define_macros = [('HAVE_CBLAS', None)]
lapack_mkl_info:
NOT AVAILABLE
openblas_lapack_info:
libraries = ['openblas', 'openblas']
library_dirs = ['/usr/local/lib']
language = c
define_macros = [('HAVE_CBLAS', None)]
lapack_opt_info:
libraries = ['openblas', 'openblas']
library_dirs = ['/usr/local/lib']
language = c
define_macros = [('HAVE_CBLAS', None)]
我认为OpenBlas不支持整数。这项研究似乎没有被合并,而且是实验性的。虽然英特尔的MKL似乎有这个功能,但我对numpy使用它的能力表示怀疑(因为将有一个更复杂的后端机制,取决于BLAS的可用性)。谢谢!我明白我应该继续像现在这样工作吗?使用numpy.dot并将数组定义为float32?我认为OpenBlas不支持整数。这项研究似乎没有被合并,而且是实验性的。虽然英特尔的MKL似乎有这个功能,但我对numpy使用它的能力表示怀疑(因为将有一个更复杂的后端机制,取决于BLAS的可用性)。谢谢!我明白我应该继续像现在这样工作吗?使用numpy.dot并将数组定义为float32?