请选择 进入手机版 | 继续访问电脑版
第9届北京科音分子动力学与GROMACS培训班将于4月17~20日于北京举办,请点击此链接查看培训详情,欢迎参加和相互转告!

计算化学公社

 找回密码
 现在注册!
查看: 1412|回复: 7

[VASP] Intel Parallel Studio 2020.4编译VASP 6.1.2

[复制链接]

104

帖子

0

威望

344

eV
积分
448

Level 3 能力者

发表于 2021-1-31 17:21:38 | 显示全部楼层 |阅读模式
本帖最后由 gog 于 2021-1-31 17:23 编辑

原贴在Redhat7.9服务器系统中,使用最新版 VTST-180,准确定位main.F、chain.F 添加或修改代码的行数并编译成功;生成的可执行文件支持OMP计算

本贴子基于未配置GPU的Intel志强(Xeon)铂金CPU、Redhat-7.9、 GCC-4.8.5、集成磁性材料计算的关键词、NEB插件,给出安装测试报告。具体步骤如下:

1、Intel parallel studio xe 2020.4编译和安装
切换到安装文件夹,输入 sh install_GUI.sh回车,具体组件,根据硬件情况和自己需求勾选,其中 ifort、mkl数学库和mpi并行库为必选项。
加载intel全家桶
source /**/intel/parallel_studio_xe_2020/psxevars.sh intel64
切换到fftw3xf文件夹,编译基于intel的fftw数学库
cd /**/intel/compilers_and_libraries_2020.4.304/linux/mkl/interfaces/fftw3xf
make libintel64
2、VASP编译
a.下载VTST脚本
http://theory.cm.utexas.edu/vtsttools/  此为外链。
  • 需要将这些文件复制到src目录中:

    • 因为src目录下存在chain.F,建议先备份chain.F(可选):
      cp src/chain.F src/chain.F-org
    • 将vtstcode-180目录下文件复制到src下:
      cp vtstcode-180/* src/
  • 修改src/main.F源码:
    将(第3450行)
    CALL CHAIN_FORCE(T_INFO%NIONS,DYN%POSION,TOTEN,TIFOR, &
         LATT_CUR%A,LATT_CUR%B,IO%IU6)
    变为(注意后两行):
    CALL CHAIN_FORCE(T_INFO%NIONS,DYN%POSION,TOTEN,TIFOR, &
          TSIF,LATT_CUR%A,LATT_CUR%B,IO%IU6)
    !     LATT_CUR%A,LATT_CUR%B,IO%IU6)
  • 修改编译配置src/.objects,在chain.o前(大概第92、93行)添加如下内容:注意 “\”后不能有空格
    bfgs.o dynmat.o instanton.o lbfgs.o sd.o cg.o dimer.o bbm.o \
    fire.o lanczos.o neb.o qm.o opt.o \


b.拷贝及修改编译脚本
切换到vasp安装文件夹,查看脚本。
拷贝arch下的intel_omp
cp ./arch/makefile.include.linux_intel_omp ./makefile.include
此贴使用支持omp的脚本编译,如需编译支持GPU的,复制./arch/makefile.include.linux_intel中 # GPU_Staff部分适当修改以匹配GPU型号。
修改makefile.include

计算优化级别
如果步进不算高,就使用默认即可,针对intel CPU, FFLAGS中添加 -heap-arrays 64
OFLAG 默认是 -O2,,步进比较高的CPU(市面步进最高的cpu,有step=7)可尝试到-O3级别,以支持avx2、avx512加速计算。


OBJECTS添加基于intel的级数展开与收敛的傅里叶变换FFTW数学库
OBJECTS    = fftmpiw.o fftmpi_map.o fft3dlib.o fftw3d.o \
             ${MKLROOT}/interfaces/fftw3xf/libfftw3xf_intel.a
输入 "shift+:" ".x!" 回车保存。

加载intel全家桶,输入which ifort / which mpiifort / which mpirun查看加载是否成功,$MKLROOT 检查MKLROOT路径


接着就是 make,如果之前有编译失败,记得 make veryclean。

最终,成功编译出与VASP5一样的vasp_std、vasp_gam、vasp_ncl(对应STD、GAMMA和NCL三个)。尽管没有进行GPU模块的设置,VASP-6.1依旧会自动尝试编译GPU并报错“cuda error”。

评分

参与人数 5eV +23 收起 理由
向地茶杯 + 3 谢谢
wypkdhd + 5
physics_xw + 5 谢谢分享
lsing + 5 好物!
lcq845402558 + 5 精品内容

查看全部评分

13

帖子

0

威望

195

eV
积分
208

Level 3 能力者

发表于 2021-2-5 12:43:59 | 显示全部楼层
使用GPU版本的makefile,并且cuda编译环境也没问题,编译vtst版本vasp_gpu仍然报错
经检查,.objects文件里,一共有两个地方可能插入bfgs.o dynmat.o instanton.o lbfgs.o sd.o cg.o dimer.o bbm.o fire.o lanczos.o neb.o qm.o opt.o \这些文件名列表,其中文中描述的第一个位置(就是93行附近),编译普通版本没问题,编译gpu版本报错,插入在第二个位置(SOURCE_GPU条目下,352行附近)编译就没问题了

14

帖子

1

威望

80

eV
积分
114

Level 2 能力者

发表于 2021-2-23 12:44:22 | 显示全部楼层
你好,请问我的编译器安装好之后,在安装vasp时候提示
/usr/include/c++/8/bits/stl_algobase.h(59): catastrophic error: cannot open source file "bits/c++config.h"
  #include <bits/c++config.h>
是什么意思?
求大神指导

104

帖子

0

威望

344

eV
积分
448

Level 3 能力者

 楼主| 发表于 2021-2-23 18:04:36 | 显示全部楼层
QH1995 发表于 2021-2-23 12:44
你好,请问我的编译器安装好之后,在安装vasp时候提示
/usr/include/c++/8/bits/stl_algobase.h(59): cata ...

请问用的哪个linux哪个版本?g++是不是没有安装哦?
检查下,没有就尝试
install gcc-c++

14

帖子

1

威望

80

eV
积分
114

Level 2 能力者

发表于 2021-2-23 22:00:09 | 显示全部楼层
gog 发表于 2021-2-23 18:04
请问用的哪个linux哪个版本?g++是不是没有安装哦?
检查下,没有就尝试
install gcc-c++

感谢,找到问题了。我用的是centos8系统,编译器是论坛里的Intel Parallel Studio XE 2019 Update 1 Linux。根据提示原因是c++config.h的路径没有找到,把路径放到环境变量里就行了。
具体方法是:
1. su root  #输入密码(我试过了root不root都行)
2. gedit ~/.bashrc  #打开环境变量
3. export CPLUS_INCLUDE_PATH=“/usr/include/c++/8/i686-redhat-linux:$CPLUS_INCLUDE_PATH"
#这个/usr/include/c++/8/i686-redhat-linux就是放c++config.h的路径,直接在图形界面里搜索一下c++config.h就行。还有就是输入的路径截止到bits/c++config.h之前就行了。

参考:https://blog.csdn.net/weixin_50987648/article/details/109035672

20

帖子

0

威望

506

eV
积分
526

Level 4 (黑子)

发表于 2021-2-25 09:16:19 | 显示全部楼层
感觉低版本的gcc配上高版本的intel编译器,编译出来的vasp计算速度并不是最优的。低版本的gcc4.85(centos7)用2015的intel编译器和intelmpi计算效果比较好。2018或者高版本的intel编译器,最好升级一下gcc,貌似升级到gcc7的版本,计算效果是最好的,并且优于2015intel+gcc4.85版本的。

104

帖子

0

威望

344

eV
积分
448

Level 3 能力者

 楼主| 发表于 2021-2-25 12:05:27 | 显示全部楼层
本帖最后由 gog 于 2021-2-28 22:03 编辑
kaypu 发表于 2021-2-25 09:16
感觉低版本的gcc配上高版本的intel编译器,编译出来的vasp计算速度并不是最优的。低版本的gcc4.85(centos7 ...
可以尝试用 oracle linux。linux内核5点多。默认gcc版本和ubuntu版本中的gcc版本更新节奏一致。

评分

参与人数 1eV +2 收起 理由
kaypu + 2 谢谢

查看全部评分

3

帖子

0

威望

227

eV
积分
230

Level 3 能力者

发表于 2021-3-2 15:49:18 | 显示全部楼层
on-the-fly 机器学习力场又鸽了,不知道哪个版本才能发布。
您需要登录后才可以回帖 登录 | 现在注册!

本版积分规则

手机版|北京科音自然科学研究中心|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )

GMT+8, 2021-4-11 18:58 , Processed in 1.694699 second(s), 26 queries .

快速回复 返回顶部 返回列表