通过PIP安装Scipy和MKL

2024-04-28 17:07:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用PIP安装Scipy和MKL来加速性能。我的操作系统是Ubuntu 64位的。使用这个question中的解决方案,我创建了一个文件.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=

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

ImportError: libmkl_rt.so: cannot open shared object file: No such file or directory

我也用

export LD_LIBRARY_PATH=/opt/intel/composer_xe_2013_sp1/mkl/lib/intel64

但问题还是一样。

有人知道怎么解决这个问题吗?我不想手动安装Scipy,所以任何人都会给我一些提示来修复它。


Tags: 文件includelibscipylibsdirsoptcomposer
3条回答

英特尔已经发布了Numpy、Scipy和Scikit learn to 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

More information available here

我用Python 3.6.2安装了Win10 64Bit,我通过http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy安装了scipy

我遵循以下步骤:

  • 步骤1:如果您有任何以前版本的numpy,请卸载, pip卸载numpy
  • 步骤2:使用 MKL(数学内核库)从下面的链接, http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy
  • 步骤3:将下载的文件复制到另一个位置并启动命令 从那个位置提示。
  • 第4步:运行这个命令, pip安装-U numpy-1.13.1+mkl-cp36-cp36m-win_amd64.whl
  • 步骤5:现在从下载scipy库, http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy
  • 步骤6:将下载的文件复制到numpy所在的相同位置 复制的。
  • 步骤7:在命令提示符下运行这个命令, pip安装scipy-0.19.1-cp36-cp36m-win_amd64.whl

完成!

问这个问题已经两年了。

现在linux的numpy/scipy控制盘使用了为avx2编译的openblas,因此您可以在不构建包的情况下获得更好的性能。您可能需要升级pip才能安装控制盘:

pip install --upgrade pip
pip install numpy scipy

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

相关问题 更多 >