根据MKL BLAS文档"所有矩阵 - 矩阵运算(3级)都是针对密集和稀疏BLAS的线程." http://software.intel.com/en-us/articles/parallelism-in-the-intel-math-kernel-library
我用MKL BLAS制作了Scipy.使用下面的测试代码,我看到了预期的多线程加速,用于密集但非稀疏的矩阵乘法.Scipy是否有任何更改以启用多线程稀疏操作?
# test dense matrix multiplication
from numpy import *
import time
x = random.random((10000,10000))
t1 = time.time()
foo = dot(x.T, x)
print time.time() - t1
# test sparse matrix multiplication
from scipy import sparse
x = sparse.rand(10000,10000)
t1 = time.time()
foo = dot(x.T, x)
print time.time() - t1
Run Code Online (Sandbox Code Playgroud) multithreading blas scipy sparse-matrix matrix-multiplication