计算化学公社

 找回密码 Forget password
 注册 Register
Views: 1418|回复 Reply: 14
打印 Print 上一主题 Last thread 下一主题 Next thread

[VASP] 使用AOCC和AOCL编译vasp出错请教

[复制链接 Copy URL]

24

帖子

0

威望

174

eV
积分
198

Level 3 能力者

课题组新来了一台服务器EYPC3代(处理器是7B13),系统是ubuntu
这两天在网上找了三种方法编译vasp6.3.2但一直都失败了,心累
1.oneapi2023
2.aocc和aocl
3.spack

由于在网上看很多aocc和aocl编译vasp教程比较多,所以发这个帖子主要请教大佬aocc和aocl编译vasp问题,以下是编译步骤

1.官网下载aocc、aocl、这两个是3.2版本,openmpi4.1.4,这几个软件编译在opt/AMD的目录下

编译aocc

tar -xvf aocc-compiler-3.2.0.tar
cd aocc-compiler-3.2.0
./install.sh
source ../setenv_AOCC.sh

编译aocl

tar -zxvf aocl-linux-aocc-3.2.0.tar.gz
cd aocl-linux-aocc-3.2.0
./install.sh -t /opt/AMD

编译openmpi

tar -zxvf openmpi-4.1.4.tar.gz
cd openmpi-4.1.4
CC=clang CXX=clang++ FC=flang ./configure
make -j4
make install


将openmpi增加到环境变量

MPI_HOME=/usr/localexport PATH=${MPI_HOME}/bin:$PATHexport LD_LIBRARY_PATH=${MPI_HOME}/lib:$LD_LIBRARY_PATHexport MANPATH=${MPI_HOME}/share/man:$MANPATH

2.编译vasp
将安装包解压后,修改makefile.include,已贴上
make
出现错误如图



1697094783547.png (747.3 KB, 下载次数 Times of downloads: 35)

vasp make出现的错误

vasp make出现的错误

makefile.include

2.54 KB, 下载次数 Times of downloads: 5

24

帖子

0

威望

174

eV
积分
198

Level 3 能力者

2#
 楼主 Author| 发表于 Post on 2023-10-12 15:42:36 | 只看该作者 Only view this author
AMD服务器使用aocc和aocl编译vasp出错求指教

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

3#
发表于 Post on 2023-10-12 16:29:03 | 只看该作者 Only view this author
本帖最后由 abin 于 2023-10-12 16:31 编辑

https://pan.baidu.com/s/1r7PduYXqjn3kpS-ie0H8NQ?pwd=aknc
这里有.
我也不晓得我怎么搞成功的.

比较玄幻.


如果使用spack, 大致流程是:
  1. spack load aocc
  2. spack install vasp +scalapack +openmp +fftlib %aocc ^amdfftw ^amdblis threads=openmp ^amdlibflame ^amdscalapack ^openmpi fabrics=auto
复制代码
Ref: https://www.amd.com/zh-cn/develo ... ons/spack/vasp.html

bing.com for “AMD vasp spack” 就有结果呀.

当然了, 你是否搞得定spack是另外一回事情.

High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

24

帖子

0

威望

174

eV
积分
198

Level 3 能力者

4#
 楼主 Author| 发表于 Post on 2023-10-12 16:35:45 | 只看该作者 Only view this author
abin 发表于 2023-10-12 16:29
https://pan.baidu.com/s/1r7PduYXqjn3kpS-ie0H8NQ?pwd=aknc
这里有.
我也不晓得我怎么搞成功的.

这里面是?有教程嘛,能不能指点一下这个怎么用

1236

帖子

1

威望

3495

eV
积分
4751

Level 6 (一方通行)

5#
发表于 Post on 2023-10-12 16:57:52 | 只看该作者 Only view this author
你明明用的是gnu编译器,哪用aocc了

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

6#
发表于 Post on 2023-10-12 18:18:29 | 只看该作者 Only view this author
1030266769 发表于 2023-10-12 16:35
这里面是?有教程嘛,能不能指点一下这个怎么用

教程,上面写了呀!

我提供的百度分享,如何用,里面有文字说明呀!
不想看文字,也有图片说明呀……
阅读一下就晓得了
High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

24

帖子

0

威望

174

eV
积分
198

Level 3 能力者

7#
 楼主 Author| 发表于 Post on 2023-10-12 20:40:24 | 只看该作者 Only view this author
biogon 发表于 2023-10-12 16:57
你明明用的是gnu编译器,哪用aocc了

是我下载错了嘛,安装包不是aocc-compiler3-.2.0嘛, 我的makefile是在您的基础上改的

24

帖子

0

威望

174

eV
积分
198

Level 3 能力者

8#
 楼主 Author| 发表于 Post on 2023-10-12 20:46:02 | 只看该作者 Only view this author
abin 发表于 2023-10-12 18:18
教程,上面写了呀!

我提供的百度分享,如何用,里面有文字说明呀!

好的谢谢,看到了

24

帖子

0

威望

174

eV
积分
198

Level 3 能力者

9#
 楼主 Author| 发表于 Post on 2023-10-12 21:09:50 | 只看该作者 Only view this author
biogon 发表于 2023-10-12 16:57
你明明用的是gnu编译器,哪用aocc了

我也挺好奇,configure openmpi的时候加了CC=clang CXX=clang++ FC=flang,make完的时候mpicc后还是显示的gcc,这是为什么

1236

帖子

1

威望

3495

eV
积分
4751

Level 6 (一方通行)

10#
发表于 Post on 2023-10-13 12:01:32 | 只看该作者 Only view this author
1030266769 发表于 2023-10-12 20:40
是我下载错了嘛,安装包不是aocc-compiler3-.2.0嘛, 我的makefile是在您的基础上改的

你仔细看报错,报错都是gfortran不是flang,不知道你怎么改的,编译器也没设环境变量吧

15

帖子

0

威望

131

eV
积分
146

Level 2 能力者

11#
发表于 Post on 2024-1-5 16:52:37 | 只看该作者 Only view this author
我也是两种方法都遇到报错,使用spack是找不到vasp@6.4.2,使用aocc和aocl是在编译openmpi的时候出现 C and C++ compilers are not link compatible.  Can not continue。太折磨了,编译这个vasp

15

帖子

0

威望

131

eV
积分
146

Level 2 能力者

12#
发表于 Post on 2024-1-5 17:18:11 | 只看该作者 Only view this author
abin 发表于 2023-10-12 16:29
https://pan.baidu.com/s/1r7PduYXqjn3kpS-ie0H8NQ?pwd=aknc
这里有.
我也不晓得我怎么搞成功的.

请问测试过这个吗,都一样能用吗

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

13#
发表于 Post on 2024-1-5 21:46:54 | 只看该作者 Only view this author
短耳鸮 发表于 2024-1-5 17:18
请问测试过这个吗,都一样能用吗

你要测试什么?
又在问,什么能不能用?
High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

12

帖子

0

威望

932

eV
积分
944

Level 4 (黑子)

14#
发表于 Post on 2024-1-21 11:28:30 | 只看该作者 Only view this author
本帖最后由 yurainingak 于 2024-1-22 11:48 编辑

我也是遇到这个问题,按照论坛里面的步骤编译的,总是出现关于gfortran的错误:
gfortran: error: unrecognized command line option ‘-fno-fortran-main’; did you mean ‘-fcx-fortran-rules’?
/work/home/acwstluj3z/soft/openmpi4.1.4-amd/bin/mpif90 -ffree-form -ffree-line-length-none -w -fno-fortran-main -Mbackslash -march=native -O2 -I/work/home/acwstluj3z/soft/AMD/4.1.0/aocc/include  -c mpi_shmem.f90
gfortran: error: unrecognized command line option ‘-fno-fortran-main’; did you mean ‘-fcx-fortran-rules’?
gfortran: error: unrecognized command line option ‘-Mbackslash’; did you mean ‘-fbackslash’?

环境变量AOCC和AOCL以及openmpi都设置好了.
vasp官方论坛里也有类似的提问:

https://www.vasp.at/forum/viewtopic.php?t=18794

后来还是结合上面vasp官方论坛里面的信息解决了:不要加载系统自带的mpi,一般可以用module list看当前加载了哪些;用module unload卸载掉;
只有用mpif90 -v 命令得到的信息里面提到mpi是用AMD aocc编译的才可以。


30

帖子

0

威望

361

eV
积分
391

Level 3 能力者

15#
发表于 Post on 2024-5-18 00:17:21 | 只看该作者 Only view this author
本帖最后由 ginlpein 于 2024-5-18 00:32 编辑
yurainingak 发表于 2024-1-21 11:28
我也是遇到这个问题,按照论坛里面的步骤编译的,总是出现关于gfortran的错误:
gfortran: error: unrecog ...

您好,请问您能贴一下您安装完的机子使用“mpif90 -show”和“mpif90 -v”的输出情况吗?
我是在Rocky 9.3的白板系统上安的,应该不存在自带的mpi系统,甚至没有module, gcc , gfortran。(甚至gcc和gfortran我是在openmpi编译过程中提示需要我才yum安装的)(因为没有module所以也没法module list和module unload)

我的现状和你之前的问题相近,环境变量配置完成以后,“which mpif90”和论坛链接里提到的“mpif90 -show”的输出信息都是成功指向aocc编译好的openmpi ,但是唯独"mpif90 -v“输出指向了gfortran的安装位置,不知道这该咋调整?希望您不吝赐教
  1. $ which mpif90
  2. /opt/openmpi-5.0.3/bin/mpif90

  3. $ mpif90 -show
  4. gfortran -I/opt/openmpi-5.0.3/include -I/opt/openmpi-5.0.3/lib -L/opt/openmpi-5.0.3/lib -Wl,-rpath -Wl,/opt/openmpi-5.0.3/lib -Wl,--enable-new-dtags -lmpi_usempif08 -lmpi_usempi_ignore_tkr -lmpi_mpifh -lmpi

  5. $ mpif90 -v
  6. Using built-in specs.
  7. COLLECT_GCC=/opt/rh/gcc-toolset-12/root/usr/bin/gfortran
  8. COLLECT_LTO_WRAPPER=/opt/rh/gcc-toolset-12/root/usr/libexec/gcc/x86_64-redhat-linux/12/lto-wrapper
  9. OFFLOAD_TARGET_NAMES=nvptx-none
  10. OFFLOAD_TARGET_DEFAULT=1
  11. Target: x86_64-redhat-linux
  12. Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/opt/rh/gcc-toolset-12/root/usr --mandir=/opt/rh/gcc-toolset-12/root/usr/share/man --infodir=/opt/rh/gcc-toolset-12/root/usr/share/info --with-bugurl=https://bugs.rockylinux.org/ --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --enable-libstdcxx-backtrace --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl=/builddir/build/BUILD/gcc-12.2.1-20221121/obj-x86_64-redhat-linux/isl-install --enable-offload-targets=nvptx-none --without-cuda-driver --enable-offload-defaulted --enable-gnu-indirect-function --enable-cet --with-tune=generic --with-arch_64=x86-64-v2 --with-arch_32=x86-64 --build=x86_64-redhat-linux --with-build-config=bootstrap-lto --enable-link-serialization=1
  13. Thread model: posix
  14. Supported LTO compression algorithms: zlib zstd
  15. gcc version 12.2.1 20221121 (Red Hat 12.2.1-7) (GCC)
复制代码
上面是我探查mpif90版本的三个命令的输出信息,感觉指向后续不一样?不知道这环境变量设置算不算生效?


本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2024-11-24 17:26 , Processed in 0.245327 second(s), 24 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list