Intel OneAPI(含 MKL)安装笔记(Linux 和 WSL2)

                     

贡献者: addis

预备知识 Lapack 笔记

   如果要旧的 icc/icpc1 以及 mkl,可以先用 oneAPI BASE 只安装 mkl(intel gdb,python 可能也有用),然后再安装 oneAPI HPC 中的 DPC++ 编译器(MPI 可能也有用)。 装错了有没关系,可以随时添加或者删除组件。安装的 GUI 界面可以通过 X11 传输,所以远程 ssh 也有 GUI 安装。如果系统不支持 GUI 会自动切换到 TUI。

   也可以通过命令行选项进行非交互的安装,详见这里。运行以下命令后,会把安装包解压到当前目录,当前目录的文件系统必须支持 symbolik link。

# 安装 MKL
sudo sh ./l_BaseKit_p_*.sh -a --silent --action install \
    --eula accept --components intel.oneapi.lin.mkl.devel
# 安装 icpc 和 MPI
sudo sh ./l_HPCKit_p_*.sh -a --silent --action install \
    --eula accept --components \
    intel.oneapi.lin.dpcpp-cpp-compiler-pro:intel.oneapi.lin.mpi.devel

   安装目录是 /opt/intel/,安装完以后需要在 ~/.bashrc 中加上 source /opt/intel/oneapi/setvars.sh,这样每次打开 bash 就会自动添加环境变量。重启 terminal,如果 icpc --version 输出版本号,就说明可以正常用了。

   注意在编程中,分配内存时,对齐可以让 SIMD 优化得更好。MKL 提供自己版本的 malloc,也可以用 STL 的对齐机制(std::align)。

1. oneAPI BASE

2. oneMKL

3. oneAPI HPC


1. ^ 注意 icc/icpc (Intel C++ Compiler Classic) 将在 2023 年被淘汰,被 oneAPI DPC++/C++ Compiler 代替,命令是 icx/icpx,编译选项有略微的差异。

                     

© 小时科技 保留一切权利