计算化学公社

标题: CP2K并行速度缓慢,求助帮忙看下如何提速。 [打印本页]

作者
Author:
star2128    时间: 2023-4-3 08:49
标题: CP2K并行速度缓慢,求助帮忙看下如何提速。
    我的服务器是两个节点组的小集群,CPU是8375C*2 64核处理器,内存是256G的,CP2k版本是8.2的,这个是买服务器商家用toolchain直接给编译好的,用的cp2k的psmp版本,提交任务是用slurm队列提交的。管理员告诉我关了超线程了,所以提交脚本直接调用的是物理核心,OMP_NUM_THREADS=1,如图1所示。
    之前老听别人说cp2k计算如何快,但是我总感觉我的算的没有那么快。学生参加了第一届科音cp2k培训班,回来用cp2k复现MIL125.cif的2*2*2超胞单点能计算,计算方法用的GFN1-xTB,严格按照讲义用Multiwfn生成的inp文件。唯一不一样的是用的服务器不同,cp2k编译方式不同。发现速度远低于sob老师36核机子的计算速度(用时4分钟)。我后来测试了单节点16,32,64核,以及2节点128核,用时均远超4分钟,具体测试结果如图2。请各位帮忙看下,是否有速度提升空间,如何提速?万分感谢


作者
Author:
sobereva    时间: 2023-4-3 10:13
与其设OMP_NUM_THREADS=1,还不如直接用popt版
确保任务已经确实恰当并行了。可以监控CPU占用,或者看输出文件里显示的并行情况
也可能编译有问题,建议自己编译个2022.2或2023.1。8.1太老了


作者
Author:
star2128    时间: 2023-4-3 10:30
好的,我按照建议试试去。感谢
作者
Author:
abin    时间: 2023-4-3 10:47
“商家用toolchain直接给编译好”
也许没有针对处理器做编译优化? 猜测....
作者
Author:
star2128    时间: 2023-4-4 16:31
abin 发表于 2023-4-3 10:47
“商家用toolchain直接给编译好”
也许没有针对处理器做编译优化? 猜测....

版本问题,更新2023版cp2k后,速度是8.2版本的4倍多
作者
Author:
star2128    时间: 2023-4-4 16:45
sobereva 发表于 2023-4-3 10:13
与其设OMP_NUM_THREADS=1,还不如直接用popt版
确保任务已经确实恰当并行了。可以监控CPU占用,或者看输出 ...

太感谢了,按照建议更新到2023版后,速度提升很显著,之前480s算完,现在100秒左右算完。我现在又有一个新问题了,我用命令mpirun -np 8 -x OMP_NUM_THREADS=8 cp2k.psmp -i cp2k.inp命令行运行任务,此时OMP_NUM_THREADS是生效的,并且测试不同的np/OMP_NUM_THREADS组合,4/16,8/8,16/4,32/2,64/1的用时分别是128s,118s,109s,105s,102s和100s。我用slurm脚本提交任务,OMP_NUM_THREADS无论设置成几,最终运行效果都和OMP_NUM_THREADS=1是一模一样的。请帮忙看下slurm脚本应该怎么写,才能让它生效啊?我感觉如果算原子数小的体系,OMP_NUM_THREADS=1肯定不是最优的。
任务提交脚本就是我这篇帖子中的图1。谢谢啦
作者
Author:
paramecium86    时间: 2023-4-4 18:46
star2128 发表于 2023-4-4 16:45
太感谢了,按照建议更新到2023版后,速度提升很显著,之前480s算完,现在100秒左右算完。我现在又有一个 ...

我这里测下来的结果(7B13*2)来看就是OMP设置成1最快 即使是H2O-32这种20多秒完成的任务也还是纯的mpi运行更快,也就是直接用popt就是最快的了。
作者
Author:
abin    时间: 2023-4-4 19:05
star2128 发表于 2023-4-4 16:45
太感谢了,按照建议更新到2023版后,速度提升很显著,之前480s算完,现在100秒左右算完。我现在又有一个 ...

https://gitee.com/hpc4you/hpc/tree/master/doc
这里的PDF中,
Slurm 自我修养章节看一下,
自己动手。
作者
Author:
abin    时间: 2023-4-4 19:07
paramecium86 发表于 2023-4-4 18:46
我这里测下来的结果(7B13*2)来看就是OMP设置成1最快 即使是H2O-32这种20多秒完成的任务也还是纯的mpi运 ...

ssmp
多节点并行的时候,会有点用。

单机跑,没有多大差异。

官方说,OMP THREAD =1
ssmp == popt
作者
Author:
乐平    时间: 2023-4-4 19:14
abin 发表于 2023-4-4 19:05
https://gitee.com/hpc4you/hpc/tree/master/doc
这里的PDF中,
Slurm 自我修养章节看一下,

链接里有 4 个 pdf 文件,要看哪一个呢? 还是说这 4 个版本都要看?
作者
Author:
abin    时间: 2023-4-4 20:21
乐平 发表于 2023-4-4 19:14
链接里有 4 个 pdf 文件,要看哪一个呢? 还是说这 4 个版本都要看?

Ctrl + F
自我修养

作者
Author:
star2128    时间: 2023-4-4 21:54
abin 发表于 2023-4-4 19:05
https://gitee.com/hpc4you/hpc/tree/master/doc
这里的PDF中,
Slurm 自我修养章节看一下,

好的,学习学习




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