计算化学公社

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

[CP2K] AMD9654使用toolchain方法编译CP2K后提示不支持avx512

[复制链接 Copy URL]

28

帖子

0

威望

1046

eV
积分
1074

Level 4 (黑子)

跳转到指定楼层 Go to specific reply
楼主
硬件:双路AMD EPYC 9654
系统:Rocky Linux release 9.3
软件版本:gcc 11.4;cmake 3.26.5;openmpi 4.1.1
按照社长CP2K第一性原理程序在CentOS中的简易安装方法帖子中使用toolchain工具编译CP2K-2024.1(--with-sirius=no --with-openmpi=system --with-plumed=install --with-intel=no --with-cmake=system),编译过程都顺利,运行任务也没报错,但是提示当前编译的版本不支持AVX512指令集:
  1. *** HINT in environment.F:920 :: The compiler target flags (x86_sse4)     ***
  2. *** used to build this binary cannot exploit all extensions of this CPU   ***
  3. *** model (x86_avx512). Consider compiler target flags as part of FCFLAGS ***
  4. *** and CFLAGS (ARCH file).                                               ***
复制代码
请教大家,如何编译才能启用avx512呢?是否跟gcc版本有关系呢?

85

帖子

0

威望

735

eV
积分
820

Level 4 (黑子)

2#
发表于 Post on 2024-6-13 18:15:59 | 只看该作者 Only view this author
OpenBLAS没有为 EPYC 9004 优化过。

28

帖子

0

威望

1046

eV
积分
1074

Level 4 (黑子)

3#
 楼主 Author| 发表于 Post on 2024-6-14 09:15:15 | 只看该作者 Only view this author
喝杯热水 发表于 2024-6-13 18:15
OpenBLAS没有为 EPYC 9004 优化过。

那是不是就没办法了?

85

帖子

0

威望

735

eV
积分
820

Level 4 (黑子)

4#
发表于 Post on 2024-6-14 10:10:27 | 只看该作者 Only view this author
ggshining 发表于 2024-6-14 09:15
那是不是就没办法了?

你可以尝试把数学库换成AMD的AOCL

353

帖子

1

威望

1973

eV
积分
2346

Level 5 (御坂)

5#
发表于 Post on 2024-6-14 10:15:32 | 只看该作者 Only view this author
ggshining 发表于 2024-6-14 09:15
那是不是就没办法了?

数学库用Intel OneAPI MKL试试,不要加--with-intel=no。或者你们是有商业用途限制,不能用Intel OneAPI嘛?用AOCL试试也行。

85

帖子

0

威望

735

eV
积分
820

Level 4 (黑子)

6#
发表于 Post on 2024-6-14 15:37:58 | 只看该作者 Only view this author
snljty2 发表于 2024-6-14 10:15
数学库用Intel OneAPI MKL试试,不要加--with-intel=no。或者你们是有商业用途限制,不能用Intel OneAPI ...

oneAPI编译CP2K我记得是有问题的。CP2K在官网上明确写了不支持oneAPI
https://www.cp2k.org/dev:compiler_support
同时楼主用的是EPYC,如果想用oneAPI编译还需要搞点特殊trick才能激活AVX2,更别说AVX512了。

28

帖子

0

威望

1046

eV
积分
1074

Level 4 (黑子)

7#
 楼主 Author| 发表于 Post on 2024-6-14 16:44:17 | 只看该作者 Only view this author
喝杯热水 发表于 2024-6-14 10:10
你可以尝试把数学库换成AMD的AOCL

看了toolchain里的help,用AMD的数学库只能--with-acml,acml应该是AMD以前的数学库名称,toolchain没有给aocl的选项,装了aocl用--with-acml也识别不出来,google上找了半天也没找到怎么能用上aocl的库,有成功的先例吗

185

帖子

1

威望

4133

eV
积分
4338

Level 6 (一方通行)

8#
发表于 Post on 2024-6-14 16:54:42 | 只看该作者 Only view this author
直接指定试试
--target-cpu              Compile for the specified target CPU (e.g. haswell or generic), i.e.
                          do not optimize for the actual host system which is the default (native)

85

帖子

0

威望

735

eV
积分
820

Level 4 (黑子)

9#
发表于 Post on 2024-6-15 15:16:28 | 只看该作者 Only view this author
本帖最后由 喝杯热水 于 2024-6-15 15:17 编辑
ggshining 发表于 2024-6-14 16:44
看了toolchain里的help,用AMD的数学库只能--with-acml,acml应该是AMD以前的数学库名称,toolchain没有 ...

在amd官网,给了使用spack基于AOCL编译CP2K的模式,你可以参考一下?
https://www.amd.com/zh-cn/develo ... lications-cp2k.html

85

帖子

0

威望

735

eV
积分
820

Level 4 (黑子)

10#
发表于 Post on 2024-6-15 15:26:45 | 只看该作者 Only view this author
(当然如果你只是想消除这个warning的话,你把那几个makefile里面加一句 -march=native -mtune=native,就不会出现这个warning,当然,也不会有什么性能增益。

328

帖子

0

威望

1916

eV
积分
2244

Level 5 (御坂)

11#
发表于 Post on 2024-6-16 09:04:40 | 只看该作者 Only view this author
喝杯热水 发表于 2024-6-15 15:16
在amd官网,给了使用spack基于AOCL编译CP2K的模式,你可以参考一下?
https://www.amd.com/zh-cn/develo ...

spack经常断网掉线。另外,很多组件不支持spack。toolchain方法,确实好,兼容 intel CPU,非常ok。AMD的,很少有人能懂。

28

帖子

0

威望

1046

eV
积分
1074

Level 4 (黑子)

12#
 楼主 Author| 发表于 Post on 2024-6-16 22:04:40 | 只看该作者 Only view this author
我试过oneapi2023和intel2018的MKL都成功编译了,感觉比opnBlas快点,但是这个warning还在。

本版积分规则 Credits rule

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

GMT+8, 2024-11-24 09:01 , Processed in 0.219263 second(s), 21 queries , Gzip On.

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