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,编译选项有略微的差异。


致读者: 小时百科一直以来坚持所有内容免费,这导致我们处于严重的亏损状态。 长此以往很可能会最终导致我们不得不选择大量广告以及内容付费等。 因此,我们请求广大读者热心打赏 ,使网站得以健康发展。 如果看到这条信息的每位读者能慷慨打赏 10 元,我们一个星期内就能脱离亏损, 并保证在接下来的一整年里向所有读者继续免费提供优质内容。 但遗憾的是只有不到 1% 的读者愿意捐款, 他们的付出帮助了 99% 的读者免费获取知识, 我们在此表示感谢。

                     

友情链接: 超理论坛 | ©小时科技 保留一切权利