计算化学公社

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

[硬件评测] A100还是4090? VASP的GPU性能测试及调优策略

[复制链接 Copy URL]

34

帖子

1

威望

751

eV
积分
805

Level 4 (黑子)

本帖最后由 二分音符 于 2024-8-9 00:03 编辑

A100还是4090? VASP的GPU性能测试及调优策略
0 前言
       之前读了熵增焓减对各种GPU平台MD性能的详细测试,受益良多。最近正好手上同时有些高性能集群的CPU、A100、4090资源,所以做一期第一性原理软件VASP在各平台的表现对比。做起来后才发现比预想的要复杂很多,欢迎各位讨论指正。

1 测试平台
       本文选用的硬件平台:


       本文目标是对比A100与4090的表现,CPU平台作为baseline参考。很遗憾无法保证CPU、内存频率以及软件版本的统一,这主要是由于集群选择有限以及编译软件权限限制,因此带来的误差请谅解。

2 测试体系
       本文选取了一大一小两种MOF材料的静态自洽计算(一步计算DOS)作为对比


       没有限制电子步长,只限制电子步能量收敛标准,但是最后跑出来的电子步数都是一样的(个别case会有41步和40步差别,可以忽略)。其中大体系用了单G点和2*2*2 K点,ISMEAR均为0,小体系K点为3*3*13,ISMEAR为-5。纯泛函的电子步收敛标准1e-5 eV,针对大体系单G点还做了杂化泛函HSE06计算,电子步收敛标准是1e-4 eV。由于只是为了对比硬件,所以都没有考虑自旋极化。详情见附件INCAR参数。

3 精度对比
       精度测试肯定是最重要的,长期来一直有观点认为单精度达不到第一性原理要求+众所周知的游戏卡不擅长双精度计算,所以很多人都优先选用A100等专业显卡来加速VASP计算。这里对比纯CPU、游戏卡4090、专业显卡A100计算出的的能量以及DOS曲线。
       能量选取的OUTCAR最后输出的free energy (eV):


       以CPU为标准,A100和4090的误差都满足电子步收敛标准,也远超过了常用的1 meV/atom的要求,其中A100和4090之间更是几乎完全一样,只有杂环泛函结果在小数点后第八位有差别。
      
       大体系单G点的HSE06计算DOS对比:


       小体系高K点的纯泛函计算DOS对比:


       对比各平台的DOS结果,也是基本上一模一样,少许毛糙峰值有差别是正常现象,峰的位置只在E - E_fermi > 5 eV位置有小许差别,当然这部分本来也不是DFT擅长的区间。4090与A100的对比更是几乎完全重合(没有单独作图放一起)。
       综合自洽能量计算结果与DOS结果,可以放心认为4090平台完全能得到准确的能量与DOS结果.

4 速度对比
       先放结果,使用各个平台的最优方案,以CPU性能为100%,测试结果如下:


       cpu time(单位:s):

       :以上数据于2024.5.1经熵增焓减提示修改。
       由于各个平台收敛电子步数一样,所以取用离子步时间为标准,也就是OUTCAR中LOOP+ cpu time。
       可以得到以下结论:(1)大体系下,4卡GPU能达到450核CPU的水平,但是小体系高K点表现不足。(2)A100在大体系高K点和杂化泛函任务性能远超4090,其他体系差别不大。(3)GPU平台对于杂化泛函任务表现优异。(4)对于单G点体系,4卡并行的性能不到单卡的3倍,如果想节约卡时,显存也足够的话可以优先单卡计算。

5 调优策略
       首先声明,各个平台的软硬件配置都不同,所以自己计算时要先做自己的测试。以下经验只是笔者针对上述平台的调优经验,供参考。

       CPU平台的并行策略已经有大量工作整理了,只放结论。(1)单G点任务,应选择vasp_gam而非vasp_std, KPAR=1, NPAR=节点数 或者 节点数*2。(2)多K点任务,KPAR=2,NPAR=节点数*2 或者 节点数*4。(3)如果内存不足,降低KPAR或者提高NPAR。

       GPU平台只能NCORE=1,调优主要考虑的是KPAR、openmp以及vasp版本问题。

       对于多K点任务,KPAR对比结果如下:(单位:秒)


        所以在显存足够时,应该把KPAR设为GPU数。
       :以上数据于2024.5.1经熵增焓减提示增加。

       经过测试发现,多线程openmp在4090平台完全不影响结果,在A100平台甚至会让速度倒退,所以提交任务时有必要添加export OMP_NUM_THREADS=1。

       对于大体系单G点任务,vasp_std与vasp_gam结果如下:(单位:秒)
       纯泛函

       杂化泛函

       出乎意料的是,对于纯泛函任务,A100节点的vasp_gam表现不如vasp_std,笔者不明白原因,欢迎讨论。对于其他任务类型,应该优先选择vasp_gam。

6 总结
       CPU节点的性能优势在高K点小体系,高内存也可以支持超大体系(数千原子)。GPU在杂化泛函任务有明显优势,相比4090,A100的优势在大体系(100+原子)多K点以及更大的显存。
       至于价格,目前CPU节点的价格在500-1000元/核(450核也就是22万-45万元),4卡4090节点含CPU价格在约15万元,A100(80G)单卡就要约12-15万元。租用的话,CPU机时约0.06元/核时(450核约27元/时),4090的4卡节点约10元/时,A100(40G)的4卡节点约30元/时。
       选购时第一步是要确定自己的任务需要多大的内存/显存,如果都是100-200原子的任务,那么4090是性价比最高的选择。如果是大量小体系任务(原子数<50),且不用做杂化泛函计算,CPU集群也不错。A100集群适合经费十分充裕的课题组,各方面都用的舒服,4张40G的节点大约可以跑500原子体系(考虑自旋)。

7 利益相关
       这个测试是笔者主动做的,计算资源来自不同平台的试用资源,除此以外没有其他利益声明。


-----------------------------------
2024.5.3   应论坛私信请求,更新了附件,包括4个测试case的详细输入文件。
2024.5.4   补充了cpu time的原始数据,方便其他测试对比。



case.zip

19.07 KB, 下载次数 Times of downloads: 83

评分 Rate

参与人数
Participants 13
威望 +1 eV +44 收起 理由
Reason
zmjsce + 3 好物!
饭米粒 + 2 谢谢
Graphite + 5 精品内容
JJ_yoo + 4 赞!
neosalius + 5 牛!
AIchaosuan666 + 5 赞!
ioktjg + 3 谢谢分享
yoki_610 + 3 好物!
asdf + 1 谢谢
上善溺水 + 3
Weldingspock + 5 精品内容
sobereva + 1
Entropy.S.I + 5 赞!

查看全部评分 View all ratings

846

帖子

16

威望

4632

eV
积分
5798

Level 6 (一方通行)

小屁孩

2#
发表于 Post on 2024-5-1 20:54:33 | 只看该作者 Only view this author
本帖最后由 Entropy.S.I 于 2024-5-1 20:57 编辑
但是小体系高K点表现不足

多K点,GPU加速的情况,应当将KPAR设为GPU数量,此时并行效率很好。

经过测试发现,多线程openmp在4090平台完全不影响结果,在A100平台甚至会让让速度倒退,所以提交任务时有必要添加export OMP_NUM_THREADS=1。

检查是否启用了FFTW的OpenMP?我近期也做了大量测试,结果表明在VASP的GPU加速中使用OpenMP并行后普遍有明显性能增益,对于某些case,将OMP_NUM_THREADS设置得特别大(达到GPU所对应CPU核数的数倍)有神奇的性能增益,且结果和CPU计算没有明显区别。
关于"在A100平台甚至会让速度倒退",这很大概率是因为没有做好线程/进程在CPU上的mapping,EPYC的架构决定了运行程序的时候必须做精准的mapping才能获得最佳性能(尤其是Rome)。


我的测试结果近期也会发布,规模应该会比你的大,关注的是CPU-GPU和GPU-GPU互联拓扑对最终计算性能的影响,以及CPU性能对最终计算性能的影响。但由于我个人不是VASP的资深用户,所以不会在科学方面做深入讨论,只是提供足够的数据和初步的讨论,希望届时各位资深用户可以来一起分析。


最后,现在我开发的8x V100 SXM2 16G NVLink的整机(做好硬件和固件调优)最终出货估计只需要不到4万CNY(公费),不过我无法决定价格,因为现在这个项目不是我运营。虽然4块V100跑VASP的性能普遍不如4块RTX 4090,但8块V100可以轻松超过4块RTX 4090
- 向着虚无前进 -

34

帖子

1

威望

751

eV
积分
805

Level 4 (黑子)

3#
 楼主 Author| 发表于 Post on 2024-5-1 21:13:35 | 只看该作者 Only view this author
Entropy.S.I 发表于 2024-5-1 20:54
多K点,GPU加速的情况,应当将KPAR设为GPU数量,此时并行效率很好。

十分感谢,加了KPAR后速度果然好特别多,我修改下原文数据。

fftw部分,我尝试了module load fftw/3.3.9-ompi-float,但结果并没有改变,可能需要双精度的,晚些再做测试。

mapping确实超出我的能力范围了,等大佬的文章发了再仔细学下。

846

帖子

16

威望

4632

eV
积分
5798

Level 6 (一方通行)

小屁孩

4#
发表于 Post on 2024-5-1 21:41:33 | 只看该作者 Only view this author
二分音符 发表于 2024-5-1 21:13
十分感谢,加了KPAR后速度果然好特别多,我修改下原文数据。

fftw部分,我尝试了module load fftw/3.3 ...

另外,NSIM也会影响性能,一般的经验是在VRAM足够的情况下NSIM越大越好,但有少量体系例外(届时我会指出,由各位资深用户分析)。NSIM默认值是4,有时job跑OOM,减小NSIM的值可能就不会OOM(比如1080原子的UKHPC-TiO2纯泛函计算,在8x V100 SXM2 16G节点上需要手动设置NSIM=2才不会OOM)
- 向着虚无前进 -

4

帖子

0

威望

33

eV
积分
37

Level 2 能力者

5#
发表于 Post on 2024-5-4 21:33:54 | 只看该作者 Only view this author
本帖最后由 zhaohs 于 2024-5-4 21:35 编辑

另外,需要注意的是:正如这里所指出的,当前,并不是所有job类型都可以在GPU上运行的。比如:所有基于RPA的job(包括GW)目前都不能基于GPU运行。

34

帖子

1

威望

751

eV
积分
805

Level 4 (黑子)

6#
 楼主 Author| 发表于 Post on 2024-5-5 16:45:56 | 只看该作者 Only view this author
zhaohs 发表于 2024-5-4 21:33
另外,需要注意的是:正如这里所指出的,当前,并不是所有job类型都可以在GPU上运行的。比如:所有基于RPA ...

这也确实,如果有些特殊要求还是得先自己测试。官方原文是:
Most features of VASP have been ported to GPU using OpenACC, with the notable exception of everything involving the RPA: GW and ACFDT. This is work in progress.

让我惊讶的是这个回复里VASP官方也强调双精度问题,但根据本文测试影响很小,不知道官方有没有做过类似测试,还是给计算卡带货。

4

帖子

0

威望

33

eV
积分
37

Level 2 能力者

7#
发表于 Post on 2024-5-13 17:16:28 | 只看该作者 Only view this author
让我惊讶的是这个回复里VASP官方也强调双精度问题,但根据本文测试影响很小,不知道官方有没有做过类似测试,还是给计算卡带货。

按照vasp官方开发人员的一贯严谨性和学术及商业中立性,我觉得他们这么说的依据应该是基于他们所做的大量测试整体的表现而言。毕竟如果论系统性测试,人家肯定是做的最深入广泛的。

4

帖子

0

威望

33

eV
积分
37

Level 2 能力者

8#
发表于 Post on 2024-5-14 15:10:19 | 只看该作者 Only view this author
就此问题,我在这里进行了询问,看他们是否有相关解释和例证。

290

帖子

7

威望

3187

eV
积分
3617

Level 5 (御坂)

石墨

9#
发表于 Post on 2024-5-14 17:05:15 | 只看该作者 Only view this author
zhaohs 发表于 2024-5-14 15:10
就此问题,我在这里进行了询问,看他们是否有相关解释和例证。

前面看着还好,最后VASP的来个未经允许发布基准测试被警告,
镜像空间计算模拟

34

帖子

1

威望

751

eV
积分
805

Level 4 (黑子)

10#
 楼主 Author| 发表于 Post on 2024-5-16 00:43:52 | 只看该作者 Only view this author
zhaohs 发表于 2024-5-13 17:16
按照vasp官方开发人员的一贯严谨性和学术及商业中立性,我觉得他们这么说的依据应该是基于他们所做的大量 ...

据我所知VASP的GPU加速有部分是NVIDIA团队开发的。

在官方的回复中,提到了可能GPU-GPU通讯、带宽等才是瓶颈所在。我的测试中也没能控制同样的CPU对比计算卡和游戏卡,所以有可能是CPU瓶颈,也可能是我选择的case瓶颈不在FP64。

但是我觉得我选用的几种体系以及任务类型都是最常用的(结构优化任务没有详细对比,但根据我平时的使用体验与静态自洽任务相近),如果这些任务上拉不开差距,那对于消费者而言也没有充足的理由因为FP64选择A100。

34

帖子

1

威望

751

eV
积分
805

Level 4 (黑子)

11#
 楼主 Author| 发表于 Post on 2024-5-16 00:54:43 | 只看该作者 Only view this author
Graphite 发表于 2024-5-14 17:05
前面看着还好,最后VASP的来个未经允许发布基准测试被警告,
I remind you that publishing benchmarks without prior authorization from the VASP company infringes on the license agreement. I would urge you not to link to such websites in the future.


很遗憾得知官方的这一态度,我不清楚publishing指的是在任何公开论坛还是在VASP论坛,如果这会造成严重的法律后果的话,我可能不得不删掉这个帖子。

做这个测试的初衷是最近想做大规模计算筛选,同时看到了国内外很多的类似工作都没有充分调优,浪费了千万元量级的计算资源,以及对应的电力环境等损失。实话实说,我不理解为什么会有这样的合同条款。并不忍心放弃分享这个测试结果。

@sobereva 希望社长能够提供指点。

5万

帖子

99

威望

5万

eV
积分
112348

管理员

公社社长

12#
发表于 Post on 2024-5-16 02:02:03 | 只看该作者 Only view this author
二分音符 发表于 2024-5-16 00:54
很遗憾得知官方的这一态度,我不清楚publishing指的是在任何公开论坛还是在VASP论坛,如果这会造成严 ...

我认为这样的帖子是有益于广大研究者的,作为论坛管理员,我是很支持发表这样帖子的。倘若测试有什么不合理的地方,都可以公开讨论,不让别人测试是不合适的(除非购买程序的license上确实已写明了、做了提前告知)。一般用户使用比较流行的硬件设备做常见规模体系测试得到的结论,比起某些官方用一些非主流或者不接地气的硬件和测试体系做的所谓的careful的测试更有实际价值。

对于VASP官方是什么意思,我不清楚情况,我也不是VASP的用户。你觉得有必要的话可以设个阅读权限,免得可以被没注册论坛或者在论坛里level不够的人也看到。
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取北京科音培训的最新消息、避免错过网上有价值的计算化学文章!
欢迎加入人气非常高、专业性特别强的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大的量子化学波函数分析程序)
ResearchGate:https://www.researchgate.net/profile/Tian_Lu
Money and papers are rubbish, get a real life!

34

帖子

1

威望

751

eV
积分
805

Level 4 (黑子)

13#
 楼主 Author| 发表于 Post on 2024-5-16 14:02:21 | 只看该作者 Only view this author
sobereva 发表于 2024-5-16 02:02
我认为这样的帖子是有益于广大研究者的,作为论坛管理员,我是很支持发表这样帖子的。倘若测试有什么不合 ...

感谢社长,我已对帖子做相应修改。

我翻阅了和代理商签订的合同、VASP官方的email、VASP PORTAL、以及网上能检索到的资料,只找到了这个Terms of Use,不确定是不是官方所说的License Agreement。从中没有找到任何关于benchmark的限制条款。如果可能,希望有人能给予法律方面的支持,或者帮忙提供License Agreement的细节资料。

为了避免不必要的麻烦,还是对帖子做了相应修改。

之前其实也参加过社长的CP2K培训班,但是出于惯性还是继续用的VASP,这次经历让我坚定改用CP2K等其他第一性原理软件了。

339

帖子

0

威望

4997

eV
积分
5336

Level 6 (一方通行)

14#
发表于 Post on 2024-5-16 17:54:27 来自手机 | 只看该作者 Only view this author
二分音符 发表于 2024-5-16 14:02
感谢社长,我已对帖子做相应修改。

我翻阅了和代理商签订的合同、VASP官方的email、VASP PORTAL、以及 ...

VASP组的行为越来越不像一个学术组,隔壁Wien2K组就完全跟VASP是天壤之别,从一开始到现在一直就是学术400欧,真是便宜。速度不比VASP差多少,而且还是更精确FPLAPW,而且还有官方的GUI,还是蛮好用的。只可惜不知道为啥,在天朝学术流行度越来越低。这次论坛的投票可见一斑,其实现在FPLAPW一点也不慢了,双路9654算个300-500原子晶胞也没啥问题……

5万

帖子

99

威望

5万

eV
积分
112348

管理员

公社社长

15#
发表于 Post on 2024-5-16 19:57:03 | 只看该作者 Only view this author
chrinide 发表于 2024-5-16 17:54
VASP组的行为越来越不像一个学术组,隔壁Wien2K组就完全跟VASP是天壤之别,从一开始到现在一直就是学术40 ...

哪怕只收费1元,而且不是像淘宝买东西那样秒支付,都会严重阻碍程序的流行
AMBER之前基本是象征性的收费,现在干脆直接免费下载了,甚至都不用注册。与其赚鸡毛蒜皮的钱,倒不如免费公开,早点让程序流行起来、发挥应有的价值,倒时候还能赚很多引用,更容易申请经费,实际收益大得多。

一个程序如果没有较多的用户刚性需求,又是收费的,基本不太可能从0开始流行起来。
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取北京科音培训的最新消息、避免错过网上有价值的计算化学文章!
欢迎加入人气非常高、专业性特别强的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大的量子化学波函数分析程序)
ResearchGate:https://www.researchgate.net/profile/Tian_Lu
Money and papers are rubbish, get a real life!

本版积分规则 Credits rule

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

GMT+8, 2024-11-22 22:15 , Processed in 0.582604 second(s), 32 queries , Gzip On.

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