背景介绍

组里的服务器安装的是 Centos7的系统,在2020年的时候 Centos 项目与红帽联合宣布将全部投资转向Centos stream , Centos7 将会在2024年6月30日停止维护。并且组里之前安装 VASP 是依赖于 Intel Parallel Studio ,但是现在 Intel 也不继续更新这个软件了,转而去开发 Intel oneAPI 。 再加上我以后从事的工作和这个很相关,因此就想着自己先试着安装一下看看,以这篇文章记录一下自己的安装过程,估计以后应该会用得到。

软件的安装

相关的软件

软件下载

由于我手头没有服务器,组里的服务器我也没有权限去动,所以只能在虚拟机里面搞一搞了。相应的软件可以在官网上进行下载,由于 VASP 是收费的软件,因为版权原因,这里就不提供了,需要的话可以评论区说一下。

开始安装

  1. Virtual Box 和 Centos8 stream 的安装很简单,可以参考这篇知乎文章:win10虚拟机Oracle VM VirtualBox安装和使用教程和之前的文章:虚拟机安装Centos8 stream以及网络配置,最小化安装即可。

  2. 安装一些 Linux 的软件。

    yum install gcc
    yum install gcc-c++
    yum install make
    yum install tar
    yum install rsync
  3. 对于这两个 Intel 软件 ,我这里分别下载的是:l_BaseKit_p_2024.0.1.46_offline.sh 和 l_HPCKit_p_2024.0.1.38_offline.sh 。

  4. 首先安装 l_BaseKit_p_2024.0.1.46_offline.sh,输入命令:

    sh l_BaseKit_p_2024.0.1.46_offline.sh

    按照提示一步一步安装就行。

  5. 安装 l_HPCKit_p_2024.0.1.38_offline.sh,同上。

    sh l_HPCKit_p_2024.0.1.38_offline.sh

    安装成功后在 /opt 下面会出现 intel 文件夹。

  6. 执行以下命令设置环境变量

    source /opt/intel/oneapi/setvars.sh

    会出现一下信息:

  7. 执行以下命令生成 libfftw3xf_intel.a 。

    cd /opt/intel/oneapi/mkl/2024.0/share/mkl/interfaces/fftw3xf
    source /opt/intel/oneapi/setvars.sh
    make libintel64

  8. 解压 VASP 我这里的版本是 6.3.0

    tar -zxvf vasp.6.3.0.tgz
  9. 复制生成 makefile.include

    cd vasp.6.3.0
    cp arch/makefile.include.intel makefile.include
  10. 修改 makefile.include

    MKLROOT    ?=        #直接设置为空,之前设置好了环境变量了,可以使用 echo $MKLROOT 查看环境变量
    CC_LIB = icx
    CXX_PARS = icpx
  11. 修改后保存,之后直接安装。

    make all

    大概等个半个小时就可以安装成功了。

  12. 每次登陆都要添加 oneAPI 的环境变量,配置好 VASP的环境变量。

    vi ~/.bashrc
    添加 :
    export PATH=/opt/vasp.6.3.0/bin/:$PATH
    source /opt/intel/oneapi/setvars.sh
    source ~/.bashrc

测试 VASP

  1. 准备好输入文件后启动 VASP。
    mpirun -np 2 vasp_std
  2. 出现了相应的结果,表明安装成功!
  3. 注意如果是非 root 用户安装, intel 文件夹将会出现在 /home/用户名/ 下面,剩下的安装方法都是一样的。

参考