计算化学公社

标题: AMD7742 CentOS 7 VASP 5.4.4编译翻车经验总结 [打印本页]

作者
Author:
Epikur    时间: 2021-11-19 16:52
标题: AMD7742 CentOS 7 VASP 5.4.4编译翻车经验总结
    其实编译VASP5.4.4已经没啥好说的,社长的教程,刘博士的视频照着做都应该没有问题。
    我的问题主要出在使用oneapi上,最开始直接下载了当时最新的oneapi 2021.3,编译很顺利,运行vasp_std正常出结果,但是mpirun的时候没有报错,没有scf输出,直接卡住了。

    接下来想找旧一些版本的oneapi来重新编译,没有在官网上找到历史版本的下载接口,好在知乎上有人记录了wget 2021.1版本,重新下载Oneapi 2021.1,当时看起来一切正常,任务能跑。稍微让我有点疑虑的有几点,一是OUTCAR中的计算时间user time 和system time居然是相当的,二是不同核数并行的耗时差不多,总任务耗时和超算的E5-2690 V4对比差不太多,没有再详细对比。

    使用了一段时间后,一运行vasp就出现segmentation fault报错,各种ulimit操作都用了也毫无办法。请教了专家,在编译的时候FFLAGS 加了heap-arrays 64重新编译,然后可以恢复运行,这时候用vasp_gam做了一些计算,发现在vasp_gam得到的结果中,system time居然是远低于user time的,就此又咨询了一些高人,才真正意识到编译的有问题,机器的性能根本没有发挥出来。

    接下来用各种编译器重新编译,包括Oneapi 2021.4,2017和2019版本的parallelstudio,Oneapi的问题仍然是不进行电子scf计算。使用2017编译,在一开始parse icpc的时候直接报错跑去调用gcc了,更换2019也有同样的问题,高人指点下把GXX_PARS = icpc 后面加上 -ansi,然后顺利编译,新的vasp_std运算的system time也正常了。Makefile.include在Make file.include.intel的基础上只修改了以下内容,不知道为何,-xhost编译会报错,-xcore-avx2能够顺利编译。


FFLAGS     = -assume byterecl -w -heap-arrays 64
OFLAG      = -O2 -xcore-avx2
OBJECTS    = fftmpiw.o fftmpi_map.o fft3dlib.o fftw3d.o $(MKLROOT)/interfaces/fftw3xf/libfftw3xf_intel.a
CXX_PARS   = icpc -ansi






作者
Author:
biogon    时间: 2021-11-19 17:14
本帖最后由 biogon 于 2021-11-20 11:35 编辑

之前oneapi21.3编vasp5.4.4不管是8352Y还是7502上编出来的都是有一样的问题,属于根本不能用,后来编vasp6就没这些破事了
作者
Author:
Epikur    时间: 2021-11-19 17:21
biogon 发表于 2021-11-19 17:14
之前oneapi21.3编vasp5.4.4不管是8352Y还是7542上编出来的都是有一样的问题,属于根本不能用,后来编vasp6 ...

关键是21.1编出来还能跑,我才知道编译,能运行和编译对了不是一回事儿
作者
Author:
pwzhou    时间: 2021-11-19 19:28
vasp和intel编译器版本之间的兼容简直就是一个灾难,记得最好选用vasp这个版本出来之前的intel编译器版本,用最新版的出不出问题纯看运气。一旦知道哪个版本好用,以后就一直用这个版本就是了。我到现在编译vasp 5还是用的intel 2015u3。
作者
Author:
abin    时间: 2021-11-19 19:29
2015, 2016年发布的代码,
凭啥要支持后来新出来的编译器?

Intel手册有讲xHost是做啥的?

虽然都是x86处理器,两者支持的指令集还是有差异的,
尤其是采用intel工具。

intel又没说,俺家的工具,
在竞品上,能100%可用。


作者
Author:
ShangChien    时间: 2021-11-20 19:11
我在5950x上也使用oneapi编译过vasp5.4和6.1,也是不报错且不出电子部。所以楼主最后还是用2019版的intel编译器吗?
作者
Author:
Epikur    时间: 2021-11-21 09:55
ShangChien 发表于 2021-11-20 19:11
我在5950x上也使用oneapi编译过vasp5.4和6.1,也是不报错且不出电子部。所以楼主最后还是用2019版的intel编 ...

应该是2019,2018,2017都行
作者
Author:
z9527567    时间: 2021-11-26 12:59
biogon 发表于 2021-11-19 17:14
之前oneapi21.3编vasp5.4.4不管是8352Y还是7502上编出来的都是有一样的问题,属于根本不能用,后来编vasp6 ...

我21.1编译vasp6.1还是各种吐核
作者
Author:
vantasyoscar    时间: 2021-12-4 17:01
想问一下OUTCAR中的user time和system time是什么意思呢?为什么这两个相同就代表有一点问题呢?感激不尽
作者
Author:
zblxyrz    时间: 2022-1-17 16:40
请问楼主,我也是7742,按照楼主的方法编译,我发现最多只能使用32核跑,再多就会不出电子步,看OUTCAR发现是停在“serial   3D FFT for wavefunctions”这一句,请问您是否遇到过这种问题?
作者
Author:
Epikur    时间: 2022-2-22 13:37
zblxyrz 发表于 2022-1-17 16:40
请问楼主,我也是7742,按照楼主的方法编译,我发现最多只能使用32核跑,再多就会不出电子步,看OUTCAR发现 ...

没有,换个intel全家桶试试?现在解决了吗?
作者
Author:
zblxyrz    时间: 2022-2-27 20:50
Epikur 发表于 2022-2-22 13:37
没有,换个intel全家桶试试?现在解决了吗?

还没有,请问您linux用的什么版本?
作者
Author:
Epikur    时间: 2022-3-17 09:27
zblxyrz 发表于 2022-2-27 20:50
还没有,请问您linux用的什么版本?

用的是centos7.6




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