计算化学公社

标题: G16-A03-AVX2在全电子SCF计算上慢于G09-E01-AVX [打印本页]

作者
Author:
wjc404    时间: 2024-2-14 22:27
标题: G16-A03-AVX2在全电子SCF计算上慢于G09-E01-AVX
最近在做一些重元素的计算时发现,Gaussian-16 A.03 版(AVX2)的SCF速度慢于Gaussian-09 E.01 版(AVX),在全电子计算上尤其明显,虽然两者的计算结果一样。
下表为Xe单原子体系的单点能计算耗时,使用B3LYP泛函,使用CPU单核和2GW内存,Gaussian-16的计算使用g09defaults关键词,计算机处理器为AMD的Ryzen-5950X。其中DKH4对时间的贡献可以忽略(去掉后时间减小很少)。详细的输入输出文件在附件中。
基组 哈密顿 g09-l502-迭代次数 g09-l502-耗时(秒) g16-l502-迭代次数 g16-l502-耗时(秒)
def2-QZVP 非相对论 9 1.1 9 1.9
sapporo-dkh3-tzp-2012 DKH4 9 1.9 9 10.2



作者
Author:
sobereva    时间: 2024-2-15 13:39
监控一下CPU占用率是否差不多,也看看情况更简单的HF的耗时情况
作者
Author:
wjc404    时间: 2024-2-15 16:38
sobereva 发表于 2024-2-15 13:39
监控一下CPU占用率是否差不多,也看看情况更简单的HF的耗时情况

谢谢社长的建议。
对于用g16跑sapporo-dkh3-tzp-2012基组的那组测试,尝试了HF(9轮收敛)以及BLYP(12轮收敛),结果(l502耗时)都是10秒左右。然后尝试读取上一次的初猜重跑,HF和BLYP都是1轮收敛但l502还需要9-10秒。在输出文件里看到了"Keep R1 ints in memory in symmetry-blocked form, NReq="这种内容,意识到双电子积分是预先算好的"in core"模式,而不是每轮都算的direct模式。在使用iop(5/5=4)强制关闭"in core"模式后,读取初猜1轮收敛的HF运算l502耗时降到了1秒以内。以上现象说明这个问题应来自于gaussian16特定版本在"in core"SCF模式下预计算积分时有性能上的BUG。
至于CPU核心的使用情况,我在测试时CPU状况是空闲的,且发现“使用%cpu来绑一个核”和“指定%nproc=1”耗时差异较小,故判断这不是主要矛盾。
作者
Author:
sobereva    时间: 2024-2-15 20:55
内存够大的机子用Gaussian算小体系会导致自动开incore,虽然原理上incore比direct快,但我发现此时往往并行效率极低,使得CPU空闲,实际速度反倒可能更慢。这是我建议监控CPU占用率的原因
担心出现这个情况就建议在default.route里写上-#- scf=noincore,这样所有计算总是避免用incore。

这个是我现在自己的机子Default.Route加的设置。由于机子的内存512GB比较大,算小体系很容易被incore捣蛋
-#- IOp(8/117=-99) IOp(7/127=-99) scf=noincore






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