计算化学公社

标题: 高斯软件并行效率再测(2017.1) [打印本页]

作者
Author:
ggdh    时间: 2017-1-2 23:52
标题: 高斯软件并行效率再测(2017.1)
本帖最后由 ggdh 于 2017-1-3 09:33 编辑

之前小卒兄在2015年初发表了经典的高斯软件并行效率实测,时间如白驹过隙,匆匆而过,转眼两年过去了。cpu已经从E5-2600v2 系列升级到E5-2600v4 系列,单节点cpu数量也从当时的20多核升级到了40多核。是时候更新一波评测了。

主要内容:
1)计算速度和频率的关系
2)计算速度和核数的关系
3)巅峰对决高频vs多核
4)td和freq的并行效率

测试环境:
硬件:E5-2699 V4 *2; 内存:64GB,2400MHz; 硬盘:三星950Pro 三星(SAMSUNG) 950 PRO 512G M.2;  主板:超微X10dai
软件:CentOs7 x64, Gaussian 09 E.01
系统:Gaussview自带C60分子,不优化,关键词为:# b3lyp/6-311g(d) int=ultrafine nosymmetry
system: 1080 basis functions,  1920 primitive gaussians,  1140 cartesian basis functions

1)计算速度和频率的关系
E5-2699 V4,22核,2.2G主频率,单核睿频3.6G,全核睿频2.6G。不懂睿频的可以先看看百度百科
本次测试中,限制cpu最大频率。从1.2G到3.6G,每隔0.2G测一次。在2核并行和20核并行的条件下分别测试。结果如下
(, 下载次数 Times of downloads: 175)

重要结论:
1.计算速度和频率是线性关系。而且这种线性关系和并行核数多少没有关系。
2.2核并行时,频率上限设到3.4G以后,速度达到平台。20核并行时,频率上限设到2.6G以后,速度达到平台。说明2核下睿频可到3.4G,20核下睿频可到2.6G。


2)计算速度和核数的关系
由于睿频的存在,如果单纯考察cpu数和计算速度的关系,由于cpu数越少,频率越高,这样无法“单纯的”考察并行效率,因此在这次测试中,我还做了一组数据,就是限制cpu最大频率为全核睿频频率。从而保证cpu频率不会随并行核数多少发生变化。最后结果如下。
(, 下载次数 Times of downloads: 171)
重要结论:
1.考虑睿频的影响后,Gaussian的实际并行效率提高了不少。并行效率跟核的数量有较好的线性关系,随着并行核数的增多效率线性下降,线性公式为:q=1.015-n*0.0067, 其中q为相对于2核的并行效率,n为并行核数。可以看到44核并行后,并行效率相当于2核的0.7倍,理解为44核并行后每核相当于2核并行时的0.7个核
2. 根据并行效率同核数的线性关系,以及之前的频率同计算速度的线性关系,可以推算出某个cpu的计算速度的公式为s=n*(1.015-n*0.0067)*f;其中s为计算速度,n为cpu核数,f为cpu的全核睿频的频率,另外,根据这个公式推断单节点并行核数大概在75的时候达到最大速度。双路在E5-2600V5还达不到这个并行核数。


3)E5-2600V4巅峰对决高频vs多核
买机器的时候,老板还拿出E5-2689V4,10核,频率3.1GHz 全核睿频3.7GHz给我测试。这是2600V4系列中频率最高的cpu。而2699V4,22核,频率2.2GHz,全核睿频2.6GHz,这是2600V4系列中核心最多的cpu。
各位看官猜一猜,2699 vs 2689,最多核 vs 最高频,到底时谁获胜呢?(当然这里不考虑隐藏boss 2679V4,200的TDP无疑是2600V4系列中的最强U!)

首先根据我们上面提出的公式进行cpu速度估算
E5-2699V4 双路:S=44*(1.015-44*0.0067)*2.6=82.39
E5-2689V4 双路:S=20*(1.015-20*0.0067)*3.7=65.19
看来是E5-2699获胜。

下面看看实际测试结果。(这里在购机的地方测的,不能详细测,只能用一个比较小的系统做简单测试)
E5-2689V4:
40 X Intel(R) Xeon(R) CPU E5-2689 v4 @ 3.10GHz detected
system: 620 basis functions,  1002 primitive gaussians,   710 cartesian basis functions
Number of cores     execution time      number of SCF cycles
10                  338.85              11                  
20                  186.16              11           

E5-2699V4:
88 X Intel(R) Xeon(R) CPU E5-2699 v4 @ 2.20GHz detected
system: 620 basis functions,  1002 primitive gaussians,   710 cartesian basis functions
Number of cores     execution time      number of SCF cycles
10                  386.38              11                  
20                  221.86              11                  
30                  160.60              11                  
40                  133.31              11                  
44                  129.61              11   

可以看到实际的测试结果差距比用公式预估的还要大

4)td和freq的并行效率
gaussian中除了scf以外,常见的耗时任务是td和freq。这里也一并做了测试,不过这里没有考虑睿频,所以就和没有考虑睿频效应的scf效率做对比。这里td和freq的耗时都减去了scf的耗时。
td关键词:# b3lyp/6-311g(d) td(nstates=10) int=ultrafine nosymmetry

freq关键词:# b3lyp/6-311g(d) freq int=ultrafine nosymmetry
体系和上面的scf保持一致
(, 下载次数 Times of downloads: 164)
测试做的比较粗糙,可以看到曲线不是很平滑,毕竟td和freq算的慢,没有精力反复测试。这里放个粗糙的结果仅供参考。
重要结论:
td的并行效率比scf低,freq的并行效率比td低,基本上到了30核以上freq和td的运算速度就不怎么增长了。

最后的话:
1.买u时要看全核睿频的大小。
2.根据本文中的公式s=n*(1.01-n*0.0067)*f估算单个cpu的运算能力。
3.体系越大,并行效率越高。(本文没有做测试,是之前某个测试的结论)
4.td以及freq的并行效率低于scf




作者
Author:
sobereva    时间: 2017-1-3 00:21
很好的测试。下面这句话里面的MHz应为GHz
“买机器的时候,老板还拿出E5-2689V4,10核,频率3.1MHz 全核睿频3.7MHz给我测试。这是2600V4系列中频率最高的cpu。
而2699V4,22核,频率2.2MHz,全核睿频2.6MHz,这是2600V4系列中核心最多的cpu。”

作者
Author:
dreamyeye    时间: 2017-1-3 08:15
如果用windows系统下的linux虚拟机,没有对睿频进行特殊设置,能自动睿频上去吗?
作者
Author:
ggdh    时间: 2017-1-3 08:46
sob 大侠看的真仔细。已改正。
我认为睿频是‘按需提升’。所以即使是虚拟机,也能够睿上去。

作者
Author:
978142355    时间: 2017-1-3 09:25
这个测试做的太漂亮了,顶顶顶。PS:请问一下,这个作图是用什么软件做的,感觉很漂亮。
作者
Author:
liyuanhe211    时间: 2017-1-3 14:30
978142355 发表于 2017-1-3 09:25
这个测试做的太漂亮了,顶顶顶。PS:请问一下,这个作图是用什么软件做的,感觉很漂亮。

Excel
作者
Author:
yezhonghua    时间: 2017-1-3 15:10
这个测试简直完美,非常喜欢,感谢无私分享
作者
Author:
Mirror    时间: 2017-1-3 15:14
这个测试做的真好,赞赞赞
作者
Author:
978142355    时间: 2017-1-3 18:29
liyuanhe211 发表于 2017-1-3 14:30
Excel

excel能做的这么好啊,涨知识了,谢谢Li老师。
作者
Author:
liyuanhe211    时间: 2017-1-3 18:46
978142355 发表于 2017-1-3 18:29
excel能做的这么好啊,涨知识了,谢谢Li老师。

默认的几乎就这样
作者
Author:
978142355    时间: 2017-1-3 18:57
liyuanhe211 发表于 2017-1-3 18:46
默认的几乎就这样

Li老师我的excel是2003版的,默认的和这个并不一样。是不是版本有影响呢?
作者
Author:
liyuanhe211    时间: 2017-1-3 19:07
978142355 发表于 2017-1-3 18:57
Li老师我的excel是2003版的,默认的和这个并不一样。是不是版本有影响呢?

Toooooooo old...
(, 下载次数 Times of downloads: 141)


作者
Author:
978142355    时间: 2017-1-3 20:05
liyuanhe211 发表于 2017-1-3 19:07
Toooooooo old...

额。。。。。。。。。。。。我懂了,谢谢Li老师的解答。
作者
Author:
dreamyeye    时间: 2017-1-3 20:56
本帖最后由 dreamyeye 于 2017-1-3 21:03 编辑
ggdh 发表于 2017-1-3 08:46
sob 大侠看的真仔细。已改正。
我认为睿频是‘按需提升’。所以即使是虚拟机,也能够睿上去。

谢谢。这帖子写的像一篇论文,前面写了已有工作的局限,中间写了实验条件和方法,后面是实验结果,最后给出了拟合的经验公式。

作者
Author:
gauss98    时间: 2017-1-13 21:40
好文要顶!d=====( ̄▽ ̄*)b

是不是算gaussian的时候CPU实际运行都是在全核睿频?
这样主频和全核睿频到底看哪个?
谢谢

作者
Author:
sobereva    时间: 2017-1-14 05:32
gauss98 发表于 2017-1-13 21:40
好文要顶!d=====( ̄▽ ̄*)b

是不是算gaussian的时候CPU实际运行都是在全核睿频?


全核睿频
主频标的是不开TB的时候的基准频率。

作者
Author:
shi891018    时间: 2017-2-7 13:13
谢谢分享~!!
作者
Author:
yjcmwgk    时间: 2017-2-7 14:49
用2699的土豪~抱大腿
作者
Author:
ggdh    时间: 2017-2-7 16:22
yjcmwgk 发表于 2017-2-7 14:49
用2699的土豪~抱大腿

小卒。等你上E5-26XX V5 拉
作者
Author:
stecue    时间: 2017-3-25 07:25
sobereva 发表于 2017-1-14 05:32
全核睿频
主频标的是不开TB的时候的基准频率。

那既然全核可以睿频,这个基准频率又是什么意思呢?难道说睿频不能长时间运行,时间一长,温度一高,就降到基准频率上了?
作者
Author:
gauss98    时间: 2017-3-25 12:18
很好很好的测试
很好很好的测试了相对并行效率
但是。。。。。。。。
为什么不顺便把绝对时间给出来呢? 不是每个人都有机会测试 2699v4的
大家可以拿绝对时间跟其它的CPU相比较

或者测试通用的test397分子,跟其它网站相比较

测2689的时候,给出了绝对时间,但是没有给出具体分子和计算条件
别的人也没法跟自己的机器比较

作者
Author:
ggdh    时间: 2017-3-26 13:23
gauss98 发表于 2017-3-25 12:18
很好很好的测试
很好很好的测试了相对并行效率
但是。。。。。。。。

受教了。请问测试test397分子是通用的做法么。为啥会取这个分子呢。这个分子有啥来头?我看好像是个多肽。。。
作者
Author:
rtransformation    时间: 2017-3-26 19:22
978142355 发表于 2017-1-3 18:57
Li老师我的excel是2003版的,默认的和这个并不一样。是不是版本有影响呢?

看起来跟wps似的。哈哈哈哈哈哈
作者
Author:
978142355    时间: 2017-3-26 20:34
rtransformation 发表于 2017-3-26 19:22
看起来跟wps似的。哈哈哈哈哈哈

真的是office2003………………………………
作者
Author:
gauss98    时间: 2017-3-26 21:05
本帖最后由 gauss98 于 2017-3-26 21:08 编辑

test397 是很多厂商用来测试高斯性能的标准算例

以前是作为大体系来测试的,现在计算机性能增加了,也有直接对该分子扩大基组到631g**或者用该分子进行优化和频率计算了
作者
Author:
lzy0702    时间: 2017-4-15 05:33
内存带宽不同会产生很大影响吗?比如DDR4 2133和DDR4 2400或者更高到DDR4 3000
作者
Author:
sobereva    时间: 2017-4-15 05:34
lzy0702 发表于 2017-4-15 05:33
内存带宽不同会产生很大影响吗?比如DDR4 2133和DDR4 2400或者更高到DDR4 3000

不会
瓶颈不再内存
作者
Author:
Sally-L    时间: 2024-10-26 00:21
"这里td和freq的耗时都减去了scf的耗时",请问为什么不能直接用td和freq的耗时计算并行效率?
作者
Author:
Huschein    时间: 2024-10-26 05:57
我个人认为其实还差了一个比较core number和atom number之间的线性关系。个人猜测对于某些小体系,16 core是上限,但是大体系上限可能更高?




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