计算化学公社

标题: Intel Parallel Studio 2020.4编译VASP 6.1.2 [打印本页]

作者
Author:
gog    时间: 2021-1-31 17:21
标题: Intel Parallel Studio 2020.4编译VASP 6.1.2
本帖最后由 gog 于 2021-1-31 17:23 编辑

转载:https://mp.weixin.qq.com/s/TZJdiBrrqcfP2IWK33XRQQ
原贴在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/  此为外链。

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”。


作者
Author:
binarec    时间: 2021-2-5 12:43
使用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行附近)编译就没问题了
作者
Author:
QH1995    时间: 2021-2-23 12:44
你好,请问我的编译器安装好之后,在安装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>
是什么意思?
求大神指导
作者
Author:
gog    时间: 2021-2-23 18:04
QH1995 发表于 2021-2-23 12:44
你好,请问我的编译器安装好之后,在安装vasp时候提示
/usr/include/c++/8/bits/stl_algobase.h(59): cata ...

请问用的哪个linux哪个版本?g++是不是没有安装哦?
检查下,没有就尝试
install gcc-c++
作者
Author:
QH1995    时间: 2021-2-23 22:00
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
作者
Author:
kaypu    时间: 2021-2-25 09:16
感觉低版本的gcc配上高版本的intel编译器,编译出来的vasp计算速度并不是最优的。低版本的gcc4.85(centos7)用2015的intel编译器和intelmpi计算效果比较好。2018或者高版本的intel编译器,最好升级一下gcc,貌似升级到gcc7的版本,计算效果是最好的,并且优于2015intel+gcc4.85版本的。
作者
Author:
gog    时间: 2021-2-25 12:05
本帖最后由 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版本更新节奏一致。
作者
Author:
dmh1998dmh    时间: 2021-3-2 15:49
on-the-fly 机器学习力场又鸽了,不知道哪个版本才能发布。
作者
Author:
speedxyl    时间: 2021-7-24 19:05
非常不错,学习了。
作者
Author:
Miles    时间: 2022-6-3 17:38
kaypu 发表于 2021-2-25 09:16
感觉低版本的gcc配上高版本的intel编译器,编译出来的vasp计算速度并不是最优的。低版本的gcc4.85(centos7 ...

您好,请问有Intel parallel studio xe 2017的安装包吗,linux版的
作者
Author:
kaypu    时间: 2022-6-24 15:02
Miles 发表于 2022-6-3 17:38
您好,请问有Intel parallel studio xe 2017的安装包吗,linux版的

https://downloadly.ir/     这个网站上下载的学习版,需要梯子
作者
Author:
xinlixi    时间: 2022-6-24 21:35
太感谢




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3