计算化学公社

标题: VASP6的Makefile文件修改 [打印本页]

作者
Author:
dali    时间: 2023-5-31 12:03
标题: VASP6的Makefile文件修改
本帖最后由 dali 于 2023-5-31 18:15 编辑

如今VASP 6编译成功很容易,但编译过程以及编译环境版本的不同可能会对编译出的VASP 6计算速度有很大影响。总结大家的编译过程大体都相同,但对makefile.include.intel文件修改有以下3点不同,请问大家哪种好?
1. 原makefile文件的OBJECTS =fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o
1.1 在这一行后加入编好的libfftw3xf_intel.a路径,
例如OBJECTS= fftmpiw.o fftmpi_map.o fft3dlib.o fftw3d.o /opt/intel/oneAPI/2021.2/mkl/latest/interfaces/fftw3xf/libfftw3xf_intel.a
1.2 不修改这一项。
请问这两种方式有什么区别?哪个更好?

2. 原makefile文件的FFLAGS =-assume byterecl -w和OFLAG = -O2
2.1 将 -xHOST加入到FFLAGS =-assume byterecl -w 之后
2.2 将-xHOST加入到OFLAG =-O2 之后。
请问这两种方式有什么区别?哪个更好?

3. 原makefile文件的MKLROOT?= /path/to/your/mkl/installation
3.1 将 = 后的路径删除,变为MKLROOT ?=
3.2 不修改这一项。
请问这两种方式有什么区别?哪个更好?
谢谢大家!!!


作者
Author:
Weldingspock    时间: 2023-6-1 21:25
针对于2,如果是intelcpu,两项后面加-xHOST可以增加15%左右运算速度,OFLAG=-O2也可以改成O3,看你cpu最高支持什么指令集
作者
Author:
dali    时间: 2023-6-3 11:44
Weldingspock 发表于 2023-6-1 21:25
针对于2,如果是intelcpu,两项后面加-xHOST可以增加15%左右运算速度,OFLAG=-O2也可以改成O3,看你cpu最高 ...

感谢解答,vasp wiki官网是在FFLAGS =-assume byterecl -w后加的-xHOST,sob老师的帖子是在OFLAG =-O2后加的-xHOST,请问这两个真的可以同时加-xHOST编译吗?
作者
Author:
snljty2    时间: 2023-6-3 13:53
Weldingspock 发表于 2023-6-1 21:25
针对于2,如果是intelcpu,两项后面加-xHOST可以增加15%左右运算速度,OFLAG=-O2也可以改成O3,看你cpu最高 ...

慎用Intel编译器的-O3,参考http://bbs.keinsci.com/thread-23645-1-1.html的讨论,甚至有可能出现编译不报错,运行也不报错,但是结果就是不对的情况。
作者
Author:
Weldingspock    时间: 2023-6-3 14:17
dali 发表于 2023-6-3 11:44
感谢解答,vasp wiki官网是在FFLAGS =-assume byterecl -w后加的-xHOST,sob老师的帖子是在OFLAG =-O2后 ...

可以的
作者
Author:
Aletyx    时间: 2023-6-3 21:02
dali 发表于 2023-6-3 11:44
感谢解答,vasp wiki官网是在FFLAGS =-assume byterecl -w后加的-xHOST,sob老师的帖子是在OFLAG =-O2后 ...

FFLAG是对于fortran编译器的编译参数,OFLAG是优化参数。一般来说只要支持就能添加这个选项,具体效果可以自己测试。
作者
Author:
乐平    时间: 2023-6-3 23:18
对于 3,其实就是指定 Intel MKL 的路径。

如果你调用了 Intel MKL,建议还是写上完整路径,虽然编译的过程中系统自己可以找到它。
  1. MKLROOT ?= 你自己系统里MKL的绝对路径,也就是从根目录开始写起
复制代码

作者
Author:
dali    时间: 2023-6-5 20:56
乐平 发表于 2023-6-3 23:18
对于 3,其实就是指定 Intel MKL 的路径。

如果你调用了 Intel MKL,建议还是写上完整路径,虽然编译的 ...

感谢解答,请问对于第1项,需要在OBJECTS后加入libfftw3xf_intel.a路径吗?谢谢!




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