通过PIP用MKL安装Scipy

tnd*_*oan 21 python linux pip scipy intel-mkl

我正在使用PIP安装Scipy和MKL来加速性能.我的操作系统是Ubuntu 64位.使用此问题的解决方案,我创建了一个文件.numpy-site.cfg

[mkl]
library_dirs=/opt/intel/composer_xe_2013_sp1/mkl/lib/intel64/
include_dirs=/opt/intel/mkl/include/
mkl_libs=mkl_intel_lp64,mkl_intel_thread,mkl_core,mkl_rt
lapack_libs=
Run Code Online (Sandbox Code Playgroud)

这个文件帮助我成功安装Numpy和MKL.但是,使用相同的上述文件,安装Scipy会提示错误

ImportError: libmkl_rt.so: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我也用

export LD_LIBRARY_PATH=/opt/intel/composer_xe_2013_sp1/mkl/lib/intel64
Run Code Online (Sandbox Code Playgroud)

但问题仍然是一样的.

有谁知道如何解决这个问题?我不想手动安装Scipy所以任何人都给我一些提示来解决它.

小智 9

英特尔一直在发布Numpy,Scipy和Scikit等软件包,并向PyPI学习.这些轮子是在与英特尔MKL连接时构建的,包括各种优化.

如果你想要使用英特尔MKL构建的Scipy:

#Remove existing Numpy and/or Scipy:
pip uninstall numpy scipy -y
#Install scipy built with Intel MKL:
pip install intel-scipy
Run Code Online (Sandbox Code Playgroud)

更多信息请点击此处

  • 截至 2019 年 3 月,这不适用于 Python 3.7。Pip 在存储库中找不到“intel-scipy”。 (3认同)

Pra*_*bhu 6

我有Win3 64Bit和Python 3.6.2我已经通过http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy安装了scipy

我按照以下步骤:

  • 第1步:卸载如果你有任何以前版本的numpy,pip uninstall numpy
  • 步骤2:从下面的链接下载numpy的-1.13.1 + MKL-CP36-cp36m-win_amd64.whl与MKL(数学内核库), http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy
  • 步骤3:将下载的文件复制到另一个位置,然后从该位置启动命令提示符.
  • 第4步:运行此命令,pip install -U numpy-1.13.1 + mkl-cp36-cp36m-win_amd64.whl
  • 第5步:现在从http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy下载scipy库
  • 步骤6:将下载的文件复制到复制numpy的相同位置.
  • 第7步:在CMD提示符下运行此cmd,pip install scipy-0.19.1-cp36-cp36m-win_amd64.whl

完成!

  • 那是为了窗户.花花公子. (4认同)

rsc*_*hn2 5

距离提出这个问题已经过去了 2 年。

现在有适用于 linux 的 numpy/scipy 轮子使用为 avx2 编译的 openblas,因此您无需构建软件包即可获得更好的性能。您可能需要升级 pip 才能安装 Wheel:

pip install --upgrade pip
pip install numpy scipy
Run Code Online (Sandbox Code Playgroud)

如果您需要 MKL,那么您可以安装AnacondaIntel Distribution for Python。他们使用 conda 而不是 pip 来管理包,但它们是免费的,并且分发包含所有依赖项(包括 MKL)的包。