我通过运行以下命令安装了英特尔 MKL 库:
# keys taken from https://software.intel.com/en-us/articles/installing-intel-free-libs-and-python-apt-repo
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS-2019.PUB
apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS-2019.PUB
sudo sh -c 'echo deb https://apt.repos.intel.com/mkl all main > /etc/apt/sources.list.d/intel-mkl.list'
sudo apt-get update && sudo apt-get install intel-mkl-64bit
我将此添加到
~/.bashrc
:
source /opt/intel/bin/compilervars.sh intel64
source /opt/intel/mkl/bin/mklvars.sh intel64
如果我尝试使用 Intel MKL 编译 R,它不起作用:
cd R-3.4.2
source /opt/intel/mkl/bin/mklvars.sh intel64
MKL="-Wl,--no-as-needed -lmkl_gf_lp64 -Wl,--start-group -lmkl_gnu_thread -lmkl_core -Wl,--end-group -fopenmp -ldl -lpthread -lm"
./configure --prefix=/opt/R/R-3.4.2-intel-mkl --enable-R-shlib --with-blas="$MKL" --with-lapack
make && sudo make install
错误信息:
/home/pacha/R-3.4.2/bin/exec/R: error while loading shared libraries: libmkl_gf_lp64.so: cannot open shared object file: No such file or directory
但它可以使用 OpenBLAS 进行编译:
cd R-3.4.2
./configure --prefix=/opt/R/R-3.4.2-openblas --enable-R-shlib --with-blas --with-lapack
make && sudo make install
它适用于 Ubuntu 17.04+,但不适用于 16.04,就像其他问题一样 使用 mkl,加载共享库时出错:libmkl_intel_lp64.so
老问题,但我最终找到了一种添加到我的博客中的方法https://pacha.dev/blog/2018/04/21/r-multi-threaded-线性-algebra-ubuntu/index.html#r -链接到-mkl。