计算化学公社
标题: 性能翻倍?RTX4090科学计算之经典MD模拟全面测试 [打印本页]
作者Author: Entropy.S.I 时间: 2022-10-31 17:16
标题: 性能翻倍?RTX4090科学计算之经典MD模拟全面测试
本帖最后由 Entropy.S.I 于 2022-11-1 03:40 编辑
性能翻倍?RTX4090科学计算之经典MD模拟全面测试
0 写在前面
这次测试最初的目的是证明用何种性能级别的CPU可在运行GPU加速GROMACS(简称GMX)时榨干最新顶级消费级GPU——NVIDIA GeForce RTX 4090,但某日笔者建议一些bilibili UP主测试该GPU运行“生产力”软件的发言被不学无术/不懂装懂者群起而攻之,遂决定亲自上阵,在最初的测试计划中引入一些额外内容,对RTX 4090进行迄今全网最具系统性的分子动力学(MD)模拟性能测试。由于中文互联网上与GPU加速MD相关的benchmark文章较少,本文的讨论将不会局限于RTX 4090本身,会做一些扩展讨论。
NVIDIA官方对相关软件已经进行了
一些测试,但其测试只针对极度昂贵的数据中心GPU产品,以展示多GPU并行性能和其GPU节点对CPU节点的替代能力为主要目的;且笔者发现,其在使用不同软件运行STMV模型的测试中所用具体参数大相径庭,无法实现不同程序间的公平对比。因此,笔者特意在本次测试中使用了一些公平的模型和参数。此外,本次测试仅考虑单GPU运行的使用场景,因为这是实际使用中的大多数状态,且RTX 4090不具备NVLink,使用多GPU并行意义不大。
1 测试平台
硬件平台(由于51972暂时不能提供RTX 3090Ti,故用ROG STRIX RTX 3090额外超频150MHz并将功耗上限设为480W以模拟RTX 3090Ti):
(, 下载次数 Times of downloads: 71)
软件环境:Ubuntu22.04.1 LTS Desktop; Linux version 5.15.0-52-generic; GNU 11.2; CUDA Tookit 11.8; NVIDIA GPU Driver 520.56.06
2 测试程序信息及相应模型参数
本次测试涉及GMX、AMBER、NAMD3、LAMMPS共4款MD软件,基准数据集和测试脚本在SI中(tar.bz2)。GMX、AMBER、NAMD3所用各模型主要参数如下表:
(, 下载次数 Times of downloads: 67)
其中,A和A-2为表面活性剂在油-水界面的slab模型;B为体相的表面活性剂胶束模型;B-TI为模拟单个表面活性剂(134原子)从胶束中解耦过程的Δ
G的热力学积分(TI)模拟的某个λ窗口模拟;4个STMV开头的模型均为STMV(烟草花叶病毒卫星病毒,经典的benchmark专用模型,近20年来被广泛用于HPC性能测试)在水环境中的模型,后3个是相应程序此前已公开报道的测试所用的模型与参数;benchPEP-h为若干小肽链在水环境中的模型。A、A-2、B、B-TI均选自笔者此前研究工作,与5月发布的
HPC benchmark报告所用模型完全相同。
值得一提的是,STMV-AMBER测试中额外使用了AMBER官方benchmark文件包中的优化版参数进行测试,即所谓“Boost”设置,具体机制是通过手动指定合适的“skin_permit”参数以减少pair list的频繁更新引起的性能下降,根据AMBER开发组的说法,将此参数设为0.75可在多数体系中获得8-12%的性能提升,并兼顾模拟的“安全性”,但此功能未在公平版mod中启用。
10月11日笔者在
BB空间发布“预告”后,有网友要求增加LAMMPS测试,但实际上笔者一开始特意将LAMMPS排除在测试列表外,因为其主攻固体材料模拟,力场基本与另3款软件不兼容,故无法与另3款软件横向对比;此外,其GPU加速功能对GPU的双精度浮点性能需求高,较不适合用来测试双精度浮点性能孱弱的游戏GPU。不过既然网友已明确提出需求,又考虑到RTX 4090的双精度浮点性能已超过1 TFLOPS,有一定测试价值,遂将LAMMPS加入测试列表。LAMMPS测试所用文件即为NVIDIA网站上公布的
测试所用的文件,3个任务分别为LJ 2.5、EAM、Tersoff。经过测试,目前使用RTX 4090运行ReaxFF/C任务有bug,故放弃ReaxFF/C。也有网友提出希望测试VASP,但此软件是纯商业软件,笔者个人未购买使用许可,故无法进行测试,Material Studio同理(建议自发抵制VASP、MS这类溢价软件,尤其是MS)。本次测试所用的4款经典MD软件是当前最主流的,参考
2021年计算化学公社论坛“你最常用的计算化学程序和DFT泛函”投票结果统计。
GROMACS 2022.3根据
笔者博客上公布的流程编译CUDA版本;AMBER22根据
笔者博客上公布的流程编译串行+CUDA版本,因为不测试多GPU并行,所以不编译MPI版本,也不启用NCCL;NAMD3直接使用官网提供的Alpha13预编译版本(NAMD_3.0alpha13_Linux-x86_64-multicore-CUDA-SingleNode.tar.gz,NVIDIA最新的测试也使用了此版本);LAMMPS版本为23Jun2022_update1,使用cmake预设文件“basic.cmake”和“kokkos-cuda.cmake”进行编译(“kokkos-cuda.cmake”中“Kokkos_ARCH_PASCAL60”改为“Kokkos_ARCH_AMPERE86”,未选择针对Ada Lovelace架构优化是因为目前没有相关选项),同时额外指定编译REAXFF包(-D PKG_REAXFF=on)。
3 发挥RTX4090的最大性能——选择合适的CPU
GMX的开发遵循硬件资源利用率最大化的原则,因此近些年来其GPU加速一直采用CPU+GPU的方案,运行MD模拟时需要CPU参与部分计算工作,CPU-GPU的任务分配在一定程度上可人工调节,以获得最优效率。在最新的版本中,GMX最多可将非键相互作用、成键相互作用、PME、坐标/速度/力更新和约束计算完全offload到GPU上运行(GPU-resident模式,须在mdrun命令中添加“-bonded gpu -update gpu”),但域分解(domain decomposition)、对搜索(pair search)、一些特殊力的计算以及特殊算法仍必须使用CPU执行。值得一提的是,只有当CPU资源严重匮乏时,采用GPU-resident模式才能快于使用CPU计算成键相互作用(
J. Chem. Phys. 2020, 153, 134110 Fig. 10),而“CPU资源严重匮乏”对于不同模型并无确定的分界点,因此本次测试将分别记录以这两种方式运行GMX的性能数据。
近些年来,GPU性能增速飞快,CPU的性能开始表现出不足,例如2020年9月发布的NVIDIA GeForce RTX 3090,若用来运行GPU加速GMX,须配合同期的高端CPU——AMD Ryzen R9 5900X才能发挥出大部分性能。而RTX 4090的理论性能相较于RTX 3090翻倍有余,CPU性能的瓶颈将更为明显,因此,非常有必要研究如何让RTX 4090在GROMACS任务中发挥最大性能。
AMBER、NAMD3、LAMMPS这3款MD软件的GPU加速模块均采用了“纯GPU”方案,这与GMX不同。采用这种方案的程序在运行时仅会占用1个CPU线程,几乎所有计算都在GPU上完成。但CPU单核性能对这类MD任务运行速度的影响依然值得考虑。
本次测试使用了4款典型的CPU,其中,AMD Ryzen R9 7950X和intel Core i9 13900K都是最新的顶级MSDT平台CPU,特点是单核性能都非常强,多核性能也不弱;AMD EPYC 7R32是计算化学公社社长卢天老师(
@sobereva)近期推荐的一型高性价比服务器CPU,适合计算密集型应用,具有48颗Zen2核心;intel XEON Platinum 8369B是近期intel阵营的高性价比服务器CPU,具有32颗Sunny Cove核心,在GMX测试中最多同时使用了2颗此CPU(64核),不使用8375C是因为此CPU遭到了奸商扫货,价格暴涨。
测试使用shell脚本自动运行,详见SI。在GMX测试中,STMV-NPT、STMV-GMX和benchPEP-h的性能数据并非直接取自mdrun运行日志,而是扣除Write traj.项的Wall time后重新计算。因为这3个模型模拟过程中不写轨迹,但GPU计算完成后会花较长时间写gro文件,而mdrun运行日志给出的性能数据包含了这一耗时。在运行时间较长的生产模拟中这一耗时可忽略不计,而在benchmark任务中理应扣除这一耗时。
(, 下载次数 Times of downloads: 74)
图1展示了GMX运行各模型MD模拟的速度与所使用的CPU核数之间的关系。A和A-2模型中有大量成键项数量与原子数比值很大的分子(即烷烃和表面活性剂,其原子数占总原子数的60%),因此成键相互作用使用CPU计算与使用GPU计算的性能差异很明显,在图中直观地表现为两条曲线的交叉角度很大。其中A-2模型的cutoff更小,非键相互作用计算量更少,进一步突出了上述差异。在1250万原子的benchPEP-h模型的测试中,通过检查nvidia-smi dmon性能监控日志可发现,如果使用CPU计算成键相互作用,RTX 4090运行此模型时会出现间歇性的低时钟占用率、低功耗状态,且PCIe实时数据传输速率一直维持在近10GB/s,峰值可达20GB/s;而若采用GPU-resident模式,可以观察到GPU间歇性“熄火”的状况有一定改善,且PCIe数据传输量也有所减少;图1也显示对于该模型采用GPU-resident模式的模拟速度完全快于使用CPU计算成键相互作用。总之,对于大多数体系,只要CPU资源不是极度匮乏,都建议把成键相互作用放在CPU上计算(在mdrun命令中添加“-update gpu”,不添加“-bonded gpu”);而对于主观估计为CPU资源极度匮乏(例如使用服务器CPU搭配多块高性能GPU),或体系中成键项数量与原子数比值很大且使用了较小cutoff,或体系极度庞大(近千万原子级别)的情况,应当尝试采用GPU-resident模式,观察其速度是否更快。
7R32作为4款CPU中多核理论性能最强者,运行GPU加速GMX却最慢,其原因是GPU加速GMX时CPU部分的计算是纯OpenMP并行,这种并行模式在高并行度下并行效率低,且对CPU核心间通信延迟很敏感,而7R32的理论单核性能较差,其多核理论性能靠核心数量支撑,且CPU本身采用小芯片设计,48个CPU核心分布在6个CCD上,跨CCD延迟较高。
8369B虽然理论单核性能没有比7R32高很多,但它是单Die设计,核心间通信延迟很低,所以运行GPU加速GMX时其表现明显优于7R32(部分项目略低于之是因为受到客观条件限制,8369B使用了机架式平台,散热较差,RTX 4090高负载下的Boost频率比7R32所用的塔式平台低50MHz)。
7950X的表现比8369B更好,主要原因是其单核理论性能极强,达到了7R32、8369B的2倍以上,然而,7950X仍稍弱于13900K。
13900K采用了混合架构,P-Core与E-Core的性能差异极大,线程绑定的OpenMP并行在这种CPU上会使线程间有明显的负载不均衡问题,最终导致无法发挥出CPU的完整性能。从图1中也可发现,8-9核处普遍有一断层,但是,从第12核左右开始,混用P-Core与E-Core的速度就会反超使用8个P-Core的速度,intel Raptor Lake相较于前代Alder Lake增加E-Core数量、增大E-Core缓存、优化P-Core与E-Core间延迟是有明显益处的。13900K也是4款CPU中表现最好者。此外,从图中还可看出,24核稍慢于23核,因此,在使用13900K时,建议留一个E-Core供系统进程和GPU驱动使用,这也是GMX手册所建议的。
综上,在GPU加速GMX这一应用场景中对CPU的需求有以下特征:首先,需要单核性能与多核性能都强的CPU,相同理论多核性能下,单核越强、核数越少越好;其次,核心间通信延迟对CPU性能发挥有很大负面影响。
(, 下载次数 Times of downloads: 70)
图2展示了4款CPU配合RTX 4090运行GMX、AMBER、NAMD3和LAMMPS的性能,0%基准线是7950X。前2幅小图是图1的另一种表现形式,从中可以发现,对于GMX,CPU多核性能对不以GPU-resident模式运行MD任务的速度有很大影响,但对GPU-resident模式影响较小。从后4幅小图中可以发现,CPU单核性能对4款MD软件运行MD任务的速度均有影响,其中对GMX和AMBER的影响很明显,而对NAMD3和LAMMPS的影响相对小一些。
再谈谈采购建议。若使用RTX 4090加速GMX,当下最佳搭档CPU是intel Core i9 13900KF,如果采购时发现AMD Ryzen R9 7950X及其主板的价格远低于前者,也可买之。如果预算较低,打算选4080 16GB、3090Ti级别的GPU,推荐13700KF,不推荐7900X。暂不推荐任何服务器CPU,尤其是AMD EPYC CPU,若已有这类CPU,可在此基础上添加多块RTX 4090,为每块RTX 4090保留8-16核,以GPU-resident模式运行MD模拟。采购用于搭配RTX 4090运行AMBER、NAMD3或LAMMPS的CPU时,单核性能同样是首要关注因素,但不必选13900K,用13600KF配2块RTX 4090即可。
4 RTX4090实际性能是否“翻倍”?
RTX 4090的理论性能是RTX 3090Ti的2倍,这一次的性能提升可能是十多年来NVIDIA消费级GPU性能提升最大的一次,非常有必要测试并对比两者用于GPU加速经典MD模拟时的实际性能。此外,实际做研究时,在系统稳定的前提下计算速度越快越好,能效并不重要,超频是可行的操作,笔者自己跑生产模拟时也会对硬件进行一些保守的超频,所以有必要测试保守超频的收益。
(, 下载次数 Times of downloads: 70)
图3展示了RTX 4090和超频150MHz且功耗上限提升至600W的RTX 4090相较于RTX 3090Ti在各MD任务下的性能提升百分比,数据在3号和4号硬件平台(13900K平台)上测得。从图中可以发现,RTX 4090运行经典MD模拟的性能并没有实现普遍的“翻倍”,在不同模型、不同软件下的表现各不相同,超频收益普遍较明显。
对于GMX,当成键相互作用在CPU上计算时,不同模型的表现差异非常大,其中A-2模型极低的提升幅度显然是由于CPU性能有严重瓶颈,benchPEP-h模型提升幅度较低是因为CPU-GPU通信有明显瓶颈,这些都已在第3节有所讨论。从图1中可以知道,上述2个模型以GPU-resident模式运行速度明显更快,在实际生产模拟中必然会以GPU-resident模式运行,故可忽略图3第1幅小图中的这2个模型。当GMX以GPU-resident模式运行时,不同模型的表现差异显著缩小。对于GMX和AMBER来说,几个STMV模型基本实现了“翻倍”,其中AMBER的STMV-NPT模型提升幅度高达108.65%。作为“纯GPU”程序,AMBER和NAMD3下各个模型的提升幅度均达到了70%以上;AMBER的上限更高,且超频收益与超频幅度相符;而NAMD3下没有任何模型实现“翻倍”,超频的收益也不大。对于LAMMPS,LJ 2.5和EAM两个任务中RTX 4090性能实现“翻倍”,Tersoff任务离“翻倍”还有较大距离。而对比
NVIDIA公布的测试结果,RTX 4090运行LAMMPS的性能(具体数据见SI)仍明显不如A100,甚至不如V100,这显然是因为RTX 4090无FP64执行单元,双精度浮点性能太弱。总之,以上结果体现了模型大小以及MD程序本身的设计对RTX 4090性能发挥的重要影响,实际上,模型大小的影响在一定程度上是软件优化的问题。
此外,通过检查nvidia-smi dmon性能监控日志还可发现,在测试运行过程中,全程显存占用率不超过60%,对GMX而言甚至不超过40%,所以显存不存在瓶颈,这否定了此前一些人关于“显存瓶颈”的猜想。需注意,显存占用率和显存使用量不同,前者是指在采样周期内GPU读写显存的时间百分比。
结合本节和第3节内容可得出结论:当前,制约RTX 4090的性能在GMX、AMBER、NAMD3和LAMMPS中发挥的主要瓶颈是CPU单核性能以及软件优化,对于GMX,CPU多核性能、CPU核间通信延迟以及CPU-GPU通信能力是次要瓶颈;当前,RTX 4090运行经典MD模拟的性能相较于RTX 3090Ti总体上有62~109%的提升,在使用合适的软件和模型的情况下,确实可实现“翻倍”,超频150MHz后实际提升幅度为1~6%。如今Ada Lovelace架构刚刚上市,并无针对性优化,预计在将来几个月,随着几款MD软件以及编译器和驱动层面对于Ada Lovelace架构的优化,RTX 4090运行MD模拟的性能还会有进一步提升。
5 GMX、AMBER、NAMD3速度对比
图4选取了在3号和4号硬件平台(13900K平台)上测得的数据,以在单CPU线程、GPU-resident模式下运行GMX的速度为100%基准;“max perf.”指的是图1中相应曲线最高点的数值,即充分利用13900K CPU资源后能达到的最高性能。从图4中可发现,虽然GMX的GPU-resident模式未彻底将MD计算转移到GPU,但其只用1个CPU线程来与AMBER公平对比时并无明显弱势,而GMX充分利用CPU资源后,性能还有巨幅提升,最终远超AMBER;此外,NAMD3的性能明显弱于GMX和AMBER。综上,当前还是最推荐广大研究者使用GMX和AMBER做经典MD模拟,这2款软件性能都不错(根据NVIDIA的测试,后者多GPU并行效率极高),且在功能方面可以互补,足以胜任绝大部分研究工作。
(, 下载次数 Times of downloads: 67)
6 特别篇:一些老数据
SI中提供了一些以前的测试数据(xlsx)。这些数据仅供参考,不在此作仔细讨论,但有一点应当注意:评估一款NVIDIA GPU加速MD模拟的性能不应只关注FP32,也应该看其他部分,例如Tensor Core。数据显示GTX 1080Ti加速MD模拟的性能不如RTX 4000,这是因为Turing架构(SM75)引入了Tensor Core,导致FP32只有7 TFLOPS的RTX 4000比FP32有11 TFLOPS的GTX 1080Ti还强。从Ampere架构(SM86)到Ada Lovelace架构(SM89)未改变SM中各类执行单元的比例,所以RTX 40系列相较于RTX 30系列FP32性能翻倍基本相当于MD模拟整体性能翻倍。至于采购建议,若预算极低,需要购买二手老GPU,极不推荐没有Tensor Core的NVIDIA GPU。
SI
致谢
本次测试所用的硬件由bilibili UP主
@51972和庚子计算(济南庚子矩阵云科技有限公司)远程赞助,同时感谢他们专业且高效的协作,使本次测试得以顺利完成。
推荐阅读
碎碎念
为什么不写成正式的论文投稿到学术期刊?
1. 投稿论文需经过漫长的同行评议阶段,而本文具有时效性,如果投稿论文,等到论文发表,文中很多内容将会过时。
2. 拒绝水论文。这篇benchmark文章如果写成正式的论文,只有核心期刊或末流SCI的水平,这不符合笔者个人现在应当有的水平。
3. 做研究应当在一定程度上遵循实用主义。本次测试的目的是让大家直观地了解软硬件的性能和特点,为采购硬件、选择软件提供参考,这种目的用格式开放的网络图文来传播会更高效、实用。
(, 下载次数 Times of downloads: 54)
(, 下载次数 Times of downloads: 28)
作者Author: FUcreature 时间: 2022-10-31 17:55
太刺激了,但个人又很不喜欢大小核,不知道牙膏会不会良心发现出一个纯大核的13代
作者Author: 牧生 时间: 2022-10-31 18:33
本帖最后由 牧生 于 2023-1-9 15:13 编辑
等我6149 CPU + 1080ti GPU + 3090 GPU退役的时候,不知道又有什么高端产品出现了
只是不知道机箱还能不能塞进那么大尺寸的GPU
今天在autodl租用一天的4090,跑15万原子的体系,大约240 ns/day,GPU占用约70%,用了-update gpu。。
(, 下载次数 Times of downloads: 54)
(, 下载次数 Times of downloads: 68)
我自己办公室的6149 CPU (16个线程)+3090, 跑这个体系,大约130 ns/day。
如果autodl的CPU更好一点,估计还能再快点。
作者Author: naoki 时间: 2022-10-31 19:04
打算买的3个GPU节点都是4090*2+7R32*2,现在准备重新考虑下CPU了
作者Author: xptracy 时间: 2022-10-31 19:19
本帖最后由 xptracy 于 2022-10-31 19:24 编辑
如果是win系统跑是win10还是11好? GROMACS (2019.3 GPU版)跟最新的差多少
作者Author: xptracy 时间: 2022-10-31 19:30
13700K+4090 跟7950x+4090 比选哪个更好?
作者Author: KiritsuguPapa 时间: 2022-10-31 19:42
庚子计算的人来了 谢谢楼主的测试报告
对于个人用户和小课题组,推荐用13900KF这种消费级平台配合4090,速度最快,安装最新的桌面版Ubuntu系统还可以直接登录远程桌面登录上去使用图形界面 很方便。
服务器CPU的好处是可以配多块GPU。对于服务器平台,实际的使用场景不会是一台服务器只带一个GPU,而通常是一个服务器配2-4张GPU。如果一台64核服务器配2张或4张GPU,则应考察一个GPU配合32核或16核的速度(以下只讨论GROMACS):
A A-2 B B-TI STMV-NPT benchPEP-h
16c 104.462 100.064 302.448 199.739 37.326 3.387
32c 120.007 139.615 310.255 210.264 40.533 3.484
64c 125.183 175.098 305.268 178.326 41.601 3.399
可以看到除了A和A-2体系对CPU需求很高之外(楼主贴中有说明),其它体系在使用到16核时距离满速就很近了。这样子一台8369B可以带4个GPU,每个GPU用16核。当然,楼主测试16核的时候,同一CPU的另外16核都是空闲状态,这样睿频可以跑得更高一些;如果跑满CPU,那么同样的16核CPU性能会比楼主测试的结果略低(楼主对32核的测试没有这个问题,因为是用满了一颗CPU)。因为GPU是通过PCIe与两颗CPU中的一颗直连的,所以用到32核就可以说是“满配”了,再用更多的核就涉及与另一颗CPU的通信了,一般来说不会再有提升甚至反而下降(A和A-2体系比较特殊)。
1台多GPU服务器相比2-4台桌面机 整体性能弱一些 价格上也稍微便宜一点。但主要是更省空间 可以做集群方便管理。例如假设有100万预算,都搞桌面机的话差不多要30台机器,太占地方了。且因为PCIe被显卡占了,没法增加其他的外围设备做集群,基本只能每台机器单独连接使用,会出现一些机器在排队,一些机器又在空闲的情况。所以对于任务量大/使用人数多、预算高(几十万上百万)的大课题组,可以考虑服务器平台配多个GPU,多台机器做成集群统一使用。如果同时有如高斯、ORCA等CPU计算软件的使用需求,就更是需要使用服务器平台了。
作者Author: Entropy.S.I 时间: 2022-10-31 19:53
本帖最后由 Entropy.S.I 于 2022-10-31 19:55 编辑
7950X。看图1,13900K 16核的位置就相当于13700K,总体上比7950X稍弱一些。13900K首发是4899,现在涨到5699了……
作者Author: Entropy.S.I 时间: 2022-10-31 20:01
完全不建议用Windows系统跑MD
作者Author: zhouoh 时间: 2022-11-1 00:10
不知道13代大小核对Gaussian之类的支持如何, 可以的话13900K+D5感觉会比较有性价比
作者Author: sobereva 时间: 2022-11-1 05:36
纯靠CPU计算的情况不建议用大小核的CPU。如果机子确实同时要兼顾Gaussian,我建议用7950X
作者Author: dexyu 时间: 2022-11-1 07:52
本帖最后由 dexyu 于 2022-11-1 07:57 编辑
"8-9核处普遍有一断层,但是,从第12核左右开始,混用P-Core与E-Core的速度就会反超使用8个P-Core的速度"
如果用intel12/13代,但关小核,CPU计算影响不知如何,是停留在测试中8核断层?或是反而不如?
作者Author: 冰释之川 时间: 2022-11-1 08:54
哈哈,原来切丝啪啪是庚子计算的人啊……
作者Author: fhh2626 时间: 2022-11-1 10:49
本帖最后由 fhh2626 于 2022-11-1 10:57 编辑
做MD效率测试强烈建议加上OpenMM,毕竟是现代MD软件的标杆
作者Author: alanmei 时间: 2022-11-1 11:37
有一个问题是 我记得Linux 5.16才开始支持大小核来着,5.15不会有奇怪的调度问题吗?
作者Author: Entropy.S.I 时间: 2022-11-1 11:42
线程绑定后不受系统层调度。Linux 5.18内核只是加入了类似于Win11的自动调度机制,不使用新内核对这次测试没有影响
作者Author: KiritsuguPapa 时间: 2022-11-1 13:40
就是做一点微小的工作
作者Author: Entropy.S.I 时间: 2022-11-1 14:55
本帖最后由 Entropy.S.I 于 2022-11-1 14:59 编辑
看了一下OpenMM的Benchmark,STMV模型是和AMBER官方测试一样的参数(0.9nm cutoff,4fs步长),但相同GPU下速度和AMBER比差远了。以后有空我也研究研究
(, 下载次数 Times of downloads: 41)
(, 下载次数 Times of downloads: 44)
(, 下载次数 Times of downloads: 41)
作者Author: 万里云 时间: 2022-11-1 15:00
但某日笔者建议一些bilibili UP主测试该GPU运行“生产力”软件的发言被不学无术/不懂装懂者群起而攻之
说是评测,不都是拿金主爸爸猫腻的KOL吗?看看现在多少人捧大小核的臭脚就知道了。
如果写过并行计算程序,就知道这种架构简直是灾难。计算过程中有大量的进程/线程间同步和数据交换,小核性能不如大核,该怎么整?
全分给大核让小核围观?那小核除了凑数,让买家觉得赚到外,还有什么意义?
不管大小一视同仁?那等着让小核把大核拖慢到同样的水平上?
根据计算量和性能提前预估?还嫌代码不够复杂?谁知道过几代还兴不兴这种架构了。
抛开这些技术细节不谈,你就看蓝厂在服务器cpu上用不用这种“先进”的架构就完了。
作者Author: Entropy.S.I 时间: 2022-11-1 16:23
正确的,这次小核有点用处,但不代表大小核混合架构本身是好东西。
作者Author: hxd_yi 时间: 2022-11-1 16:57
第一次看到内网的md测试结果比外网的早,牛!!!
作者Author: fhh2626 时间: 2022-11-1 22:09
不一样吧,OpenMM用的是很慢的LangevinMiddleIntegrator,Amber用的是毫无道理的Berendsen Thermostat
我个人的经验是当OpenMM和Amber都用Langevin integrator,或者Amber用资源消耗少一点的的Bussi thermostat的时候,OpenMM会略快一点,但基本是同一数量级
作者Author: Entropy.S.I 时间: 2022-11-1 22:44
刚刚用5950X+3080Ti测试了,AMBER官方参数(ntt=1)是36.34 ns/day,改成ntt=3, gamma_ln=5是34.45 ns/day,没有慢很多。
作者Author: sobereva 时间: 2022-11-2 07:59
导致FP32只有7 TFLOPS的RTX 4000比FP32有11 TFLOPS的GTX 1080Ti还强
这里的7 TFlops的数据是哪里的?RTX4000具体指什么?
RTX4090的FP32应当是83 TFlops。
作者Author: Entropy.S.I 时间: 2022-11-2 08:29
本帖最后由 Entropy.S.I 于 2022-11-2 08:37 编辑
是Quadro RTX 4000,TU106-400核心,和GeForce RTX 2070是同一个核心,频率低一些。这是英伟达给的Data Sheet:https://www.nvidia.com/content/dam/en-zz/Solutions/design-visualization/quadro-product-literature/quadro-rtx-4000-data-sheet-us-nvidia-830682-r6-web.pdf
(, 下载次数 Times of downloads: 38)
数据在第二个附件,不是这次统一测的数据
作者Author: fhh2626 时间: 2022-11-2 09:50
主要是LangevinMiddleIntegrator会比常见的积分器慢,换来部分积分精度的提升
不过在你这个大体系中Amber也可能比较有优势,他们的Pairlist算法据说比较先进
作者Author: LightSylvanas 时间: 2022-11-5 14:37
本帖最后由 LightSylvanas 于 2023-6-19 14:34 编辑
请问您用的哪个CUDA版本,驱动是哪个版本?我用4090编译出来的vasp和gromacs都报错cuFFT有问题
作者Author: Entropy.S.I 时间: 2022-11-5 16:31
最好再仔细看看,不要上来就问
作者Author: sss668800 时间: 2022-11-7 10:33
本帖最后由 sss668800 于 2022-11-7 11:02 编辑
非常感谢楼主,话说UP主51972首发评测4090时测试分子动力学软件,是不是没有和你合作?
因为51972评测4090的分子动力学部分,数据几乎是一带而过的,就一页数据。
这么多数据可以考虑和up主合作出一个视频,毕竟这方面需求会很旺盛(买4090的人很多会跑MD,极具参考价值)。
有一个问题,图3绿线是纯E-Core测试的吗?请问如何做到指定纯小核测试的?
PS:12代时候因为小核实在是对性能影响太大,很多人是直接在bios里面关闭小核,搭配3080跑GMX的。
你的图3全核测试,8-10核之间的断层是个很头疼的事情,如果是13700k这种U,说不定还不如直接关小核。
作者Author: LightSylvanas 时间: 2022-11-7 10:35
本帖最后由 LightSylvanas 于 2022-11-7 10:39 编辑
不好意思,之前没有仔细看。
我已发现问题...之前用的GROMACS2022.2,换成GROMACS2022.3后cuFFT不再报错。
但是VASP用oneapi+openACC编译后,mpirun -np 1 vasp_std仍然会报cuFFT的错误,我现在严重怀疑是vasp的版本没有跟上(尝试过6.3.0和6.3.2,都一样),不知您是否可以测试一下vasp的加速?
我测试的配置是7950x+4090.
作者Author: Entropy.S.I 时间: 2022-11-7 12:05
本帖最后由 Entropy.S.I 于 2022-11-7 12:10 编辑
我是看到51972的RTX4090首发评测做了MD测试,才主动联系他帮忙提供硬件。做视频就不是我的事情了,51972最近有其他项目在忙,大概率没时间给这个benchmark做视频。
你说的是图1吧?纯E-Core,通过gmx mdrun自带的-pinoffset和-pinstride指定就行了,例如用前8个E-Core,GPU-resident模式:gmx mdrun -v -deffnm md -ntmpi 1 -ntomp 8 -pin on -pinoffset 16 -pinstride 1 -bonded gpu -update gpu
12代带GPU跑GMX非常不合适,买来这么用的人都是大冤种。
13700K/KF完全不推荐,还不如3999的7950X,后者还能跑量化。
作者Author: sss668800 时间: 2022-11-7 15:37
明白了,非常感谢
作者Author: 喵星大佬 时间: 2022-11-7 16:56
本帖最后由 喵星大佬 于 2022-11-7 16:57 编辑
如果有空是不是可以加入LAMMPS相关的测试。这应该算是使用人数最多的MD软件了(看引用的话)。不知道LAMMPS的GPU加速怎么样,之前据说是结果不是很稳定
作者Author: Entropy.S.I 时间: 2022-11-7 17:04
本帖最后由 Entropy.S.I 于 2022-11-7 17:09 编辑
有LAMMPS测试啊,不过我不熟悉这软件,只简单跑了一下。4090跑ReaxFF/C还有Bug。另外,有公社的朋友说这软件GPU加速跑出来的结果(一些统计性质)和纯CPU计算对不上。
作者Author: 喵星大佬 时间: 2022-11-7 17:13
是我瞎了。。。后面图没仔细看
作者Author: Entropy.S.I 时间: 2022-11-7 17:16
建议仔细看全文…自我感觉这篇文章信息密度应该是比较高的…
作者Author: Acee 时间: 2022-11-9 12:15
服务器cpu+4090确实发挥不出最大的性能
作者Author: Sam_Wang 时间: 2022-11-11 21:28
即使性能再好,如果不能够调用资源,根本没有任何意义!所以,没有必要去追求高配置的硬件,炒作没有任何意义!
作者Author: Picardo 时间: 2022-11-27 08:27
请教一下,我看有人说7950问题很多,包括4条内存的时候开机自检极慢,我看有说400秒的,还有的人说有掉显卡驱动现象。前面那个等等还好,后面这个听起来挺吓人
作者Author: Entropy.S.I 时间: 2022-11-27 12:22
第一个问题更新BIOS即可解决。第二个问题属无稽之谈,GPU驱动与CPU无关;“掉驱动”在NVIDIA GPU上极少见,互联网上炒作的此种现象多为AMD GPU。
作者Author: Picardo 时间: 2022-11-27 13:48
了解,谢谢。等我装的时候看看13900和7950哪个性价比高
作者Author: tiantian365 时间: 2022-11-28 14:53
请教一下楼主,同时满足gaussian、ORCA和GMS的CPU选择AMD还是intel?AMD的话现阶段5950X+B550M性价比真的高;intel的话上铂金CPU+C621主板的性价比太低了。谢谢!
作者Author: Entropy.S.I 时间: 2022-11-28 21:02
本帖最后由 Entropy.S.I 于 2022-11-28 21:12 编辑
1. 是gmx不是gms
2. 7950X+B650性价比更高
3. 硬要把量化机子和经典MD机子凑成1台,选7950X+RTX 4090即可
4. 仔细阅读本文
作者Author: tiantian365 时间: 2022-11-29 10:11
非常感谢,懂了
作者Author: yihanxu 时间: 2022-12-22 14:39
老师我想请教一下,ReaxFF/C和ReaxFF是一回事吗?那如果RTX4090+Intel i7-13700KF,跑ReaxFF/C是不是也可以,只是不能用GPU加速而已?
作者Author: 二分音符 时间: 2023-1-6 14:49
问下13900K用的什么散热,性能完全释放了吗?
作者Author: sss668800 时间: 2023-1-18 10:52
接上面其他人问的,13900k和7950x在风冷情况下都会出现降频,影响性能。
即使用顶级360水冷,满载也是温度过95度的,如果是超过3天的任务,会不会降频影响性能。
Intel尽管有便宜的B760,但是降压设置有限(听说华硕B760还可以),不如Z790设置的好,而Z790得贵1000块钱,不知道值不值得。
另一个问题是,新发布的13900ks和7950x3d提升,不知道会不会明显。
我个人感觉13900ks无非频率进一步升级,可能提升有限。而7950x3d倒是有可能大幅度优化跨CCX的延迟问题,说不定能反超13900k和13900ks
作者Author: Entropy.S.I 时间: 2023-1-18 16:52
7950X和13900K都是360水冷。GPU加速GMX,CPU功耗远远达不到上限,CPU散热器基本不影响测试结果。
作者Author: 二分音符 时间: 2023-1-18 20:56
谢谢
作者Author: 二分音符 时间: 2023-1-18 20:58
感觉7950x3D的可能有调度问题,不过大小核都能用的话,可能这个问题也没想象那么大
作者Author: duzy 时间: 2023-2-3 14:42
请教一下楼主这个测试的gmx版本是什么版本,还有我想问RTX4090和任何版本的gmx都兼容吗
作者Author: Entropy.S.I 时间: 2023-2-3 17:57
请仔细阅读,确保每一句话都看清楚、理解
作者Author: 5撇到3撇 时间: 2023-2-3 23:09
本帖最后由 5撇到3撇 于 2023-2-3 23:11 编辑
刚才刷新出来了,阿里云网盘好慢
作者Author: xianzong_wang 时间: 2023-2-7 10:21
楼主,有个问题请教下,7R32和8369B的GPU resident模式应该也测试过吧,是不是比图里面所展示的速度快很多?而且8369B完全没有必要用64核吧。
作者Author: wwjie 时间: 2023-3-12 21:45
现在 RTX4090 24GB 价格多少钱?
作者Author: bbbSchweine 时间: 2023-4-28 11:34
amber22也有middleintegrator了,应该是加一个参数ischeme=1,在manual里也有写。不过这玩意目前只给出了NVT系综下较好的integrator,NPT还没说清楚呢。openmm里的实现好像是直接把NPT的控温步也给替换成这个了,这样能否提升采样效率没有系统测试过。
作者Author: ogrebit 时间: 2023-5-13 20:53
请问,用7950x,上2块4090应该选哪个主板?650E?670?670E?
作者Author: Entropy.S.I 时间: 2023-5-13 21:00
http://bbs.keinsci.com/thread-35988-1-1.html
1.1.1节
关键问题在于找不到合适的机箱,目前开源宇宙在做适配此方案的机箱,未开售。
最有性价比的做法仍然是用普通主板,配PCIe拆分线,并把GPU外置。
作者Author: ChemG 时间: 2023-6-15 16:23
请问老师,现在RTX 4070Ti的性能测评也出来了,接近RTX 3090Ti(单精度均为40TFLOPs左右,但显存和位宽更弱一些)。
1. 相比于RTX 3090Ti,RTX 4070Ti是否是更好的选择(价格和功耗都更低)。
2.是咬咬牙上RTX 4090,还是用价格和性能都差不多是RTX 4090一半的RTX 4070Ti呀?CPU是7950x,打算加一块儿显卡用于gromacs跑动力学。
谢谢老师
作者Author: Entropy.S.I 时间: 2023-6-15 16:58
4070Ti是今年1月初解禁的,不是现在。
1. 显然4070Ti合适;
2. 经济能力够就选4090,获得翻倍的单个模拟性能。
作者Author: ChemG 时间: 2023-6-15 19:57
非常感谢老师的解答,看过老师在论坛很多帖子和讨论,学到了很多东西,再次表示感谢
作者Author: luzujia 时间: 2023-9-13 22:37
如果不跑GMX,只跑lammps或者做机器学习的话,是不是配7R32也可以
作者Author: qczgzly 时间: 2023-9-21 08:55
请教楼主,7R32 * 2 和 7950X + RTX4090 这两种价格差不多的配置,哪个跑gmx的速度更快呢?
作者Author: Entropy.S.I 时间: 2023-9-21 12:39
后者快5倍以上。跑GMX没有GPU还想碰瓷4090,也太普信了
作者Author: Entropy.S.I 时间: 2023-9-21 12:50
lammps如果确认要用的力场/势支持GPU加速且不需要双精度,那么用4090;如果需要双精度,用2000多元一片的TITAN V,性能是4090的1.5-2倍。7R32勉强能捏着鼻子用,但改成单独配13600KF显然更好,后者只需要增加5000-7000元预算(根据不同的RAM和存储需求浮动)
作者Author: 子不语i 时间: 2023-10-7 18:36
老师好!想请教下您,采用卢老师推荐的AMD EPYC 7R32这个CPU,应该怎么配显卡呢?看到您的测试说配4090不行,淘宝商家推荐的4080,不知是否合适。这台机器主要做Gaussian和VASP,配显卡是想以后可能会做一些分子动力学,经费方面也不足以支撑买两台了。谢谢老师!
作者Author: Entropy.S.I 时间: 2023-10-7 22:44
本帖最后由 Entropy.S.I 于 2023-10-7 22:49 编辑
等以后想跑MD了再买专用机器,明年初会出现基于AD102核心的4080 Ti/Super,价格和4080相同。
现在省下来的钱买点别的实用的、降价慢的东西,比如显示器、SSD等。SSD已经开始大幅涨价了,未来几个月应该会越来越贵,可以趁现在赶紧屯一些致态7100,或者大容量、超高性能的如大普微J5110。HDD已经涨得非常高,如非刚需,现已不推荐买。
作者Author: 子不语i 时间: 2023-10-8 09:44
感谢老师指点,明白了!那我就先把电源加上1300W的,显卡等以后需要时再加上。
再次感谢您指点!
作者Author: Entropy.S.I 时间: 2023-10-8 14:14
我是让你以后买“专用机器”,而不是继续在这个单核性能一塌糊涂、让4090性能发挥连4080还不如的平台上继续擦屁股。
作者Author: ChemG 时间: 2023-10-18 22:05
请问老师如何看待网传的禁售RTX 4090的消息,对分子动力学模拟方面的硬件购置影响,以及有哪些高性价比的替代产品
作者Author: Entropy.S.I 时间: 2023-10-19 02:04
BIS文件原文:
https://www.bis.doc.gov/index.ph ... rules-final-js/file
(, 下载次数 Times of downloads: 48)
作者Author: 五月雨 时间: 2023-10-24 16:03
请问老师,两张显卡分别计算两个GMX任务,应该使用什么命令?
作者Author: Entropy.S.I 时间: 2023-10-24 16:53
-pin on -pinoffset [?] -pinstride 1 ntmpi 1 -ntomp [?] -gpu_id [0/1] -update gpu -bonded [cpu/gpu]
作者Author: 五月雨 时间: 2023-10-25 11:03
谢谢老师
作者Author: gauss98 时间: 2024-1-19 09:32
感谢博主测试,
问问有没有多卡性能测试?
6卡8卡4090 (D?) 的配置和测试
谢谢!
作者Author: Entropy.S.I 时间: 2024-1-19 17:40
搭平台成本过高,没测过,也没有必要测。多卡机器每块卡的CPU和通信资源都是独立的。
作者Author: wangyueda 时间: 2024-3-11 17:02
请问下楼主,我用您的测试集中的体系B在课题组服务器上跑,最高也只能跑91.220 ns/day,与您的最高性能300多ns/day差距较大是为啥?而且我的“-update gpu -bonded gpu”要比“-update gpu”速度快些(前者91.220 ns/day,后者76.52791.220 ns/day)。而且-ntomp=1要比-ntomp>1(8,12,16等)都快,请问下我的问题出在哪?谢谢楼主
我的机器参数:
CPU:AMD EPYC 7402 24-Core Processor
GPU: A100*8
gmx版本信息:
- gmx -version
- GROMACS version: 2022.6
- Precision: mixed
- Memory model: 64 bit
- MPI library: thread_mpi
- OpenMP support: enabled (GMX_OPENMP_MAX_THREADS = 128)
- GPU support: CUDA
- SIMD instructions: AVX2_256
- CPU FFT library: fftw-3.3.8-sse2-avx
- GPU FFT library: cuFFT
- RDTSCP usage: enabled
- TNG support: enabled
- Hwloc support: disabled
- Tracing support: disabled
- C compiler: /usr/bin/cc GNU 9.4.0
- C compiler flags: -mavx2 -mfma -pthread -Wno-missing-field-initializers -fexcess-precision=fast -funroll-all-loops -O3 -DNDEBUG
- C++ compiler: /usr/bin/c++ GNU 9.4.0
- C++ compiler flags: -mavx2 -mfma -pthread -Wno-missing-field-initializers -fexcess-precision=fast -funroll-all-loops -fopenmp -O3 -DNDEBUG
- CUDA compiler: /data/soft/cuda-sdk/12.1/bin/nvcc nvcc: NVIDIA (R) Cuda compiler driver;Copyright (c) 2005-2023 NVIDIA Corporation;Built on Tue_Feb__7_19:32:13_PST_2023;Cuda compilation tools, release 12.1, V12.1.66;Build cuda_12.1.r12.1/compiler.32415258_0
- CUDA compiler flags:-std=c++17;--generate-code=arch=compute_50,code=sm_50;--generate-code=arch=compute_52,code=sm_52;--generate-code=arch=compute_60,code=sm_60;--generate-code=arch=compute_61,code=sm_61;--generate-code=arch=compute_70,code=sm_70;--generate-code=arch=compute_75,code=sm_75;--generate-code=arch=compute_80,code=sm_80;--generate-code=arch=compute_86,code=sm_86;--generate-code=arch=compute_89,code=sm_89;--generate-code=arch=compute_90,code=sm_90;-Wno-deprecated-gpu-targets;--generate-code=arch=compute_53,code=sm_53;--generate-code=arch=compute_80,code=sm_80;-use_fast_math;-D_FORCE_INLINES;-mavx2 -mfma -pthread -Wno-missing-field-initializers -fexcess-precision=fast -funroll-all-loops -fopenmp -O3 -DNDEBUG
- CUDA driver: 12.20
- CUDA runtime: 12.10
复制代码
提交脚本:
- #!/bin/bash
- #An example.
- #SBATCH -J wyd-test
- #SBATCH -p normal # 使用指定的队列
- #SBATCH --qos=normalqos # 使用normal队列对应的QoS
- #SBATCH --gres=gpu:1 # 使用的GPU卡数
- gmx mdrun -pin on -ntmpi 1 -ntomp 1 -notunepme -bonded gpu -update gpu -v -deffnm B
复制代码
作者Author: Entropy.S.I 时间: 2024-3-12 10:11
本帖最后由 Entropy.S.I 于 2024-3-12 10:34 编辑
CPU烂得一蹋糊涂,这种情况下-bonded gpu更快不意外
http://bbs.keinsci.com/thread-39266-1-1.html
看最后一张图,价值不到3000的4060都比你们价值10万多的的A100快
作者Author: wangyueda 时间: 2024-3-12 10:32
好的谢谢楼主,所以我这速度(91.220 ns/day)差不多也是当前配置下的极限了对吧
作者Author: Entropy.S.I 时间: 2024-3-12 10:39
不一定,需要根据CPU架构仔细调优,尽可能减少核间延迟的影响。EPYC 7402每个CCX只有3核,只用3核6线程,把所有omp线程绑定到同一个CCX中可能比用更多核还快。对于这种核间延迟很烂的CPU,1个MPI Rank不建议用很多核
作者Author: wangyueda 时间: 2024-3-12 11:01
本帖最后由 wangyueda 于 2024-4-10 20:44 编辑
好的谢谢楼主,我再试试。
作者Author: Entropy.S.I 时间: 2024-3-12 12:05
外行可能会认为“有GPU就行”,殊不知在科学计算这种小领域,没什么程序能做到让CPU性能不拖累GPU,CPU往往会成为整个计算的瓶颈。底层的优化只有AI行业有充足的人力去做。
作者Author: tienan0412 时间: 2024-4-3 20:48
请问,4090D和4080如何选择?4090D能不能把贵出的价格值回来呢。
作者Author: zdworld 时间: 2024-10-6 15:02
13和14代intel缩缸之后性能对齐amd有优势吗
欢迎光临 计算化学公社 (http://bbs.keinsci.com/) |
Powered by Discuz! X3.3 |