计算化学公社

标题: cp2k.popt进行并行时并行异常的问题 [打印本页]

作者
Author:
名字长的厉害    时间: 2022-10-12 16:23
标题: cp2k.popt进行并行时并行异常的问题
lz使用mpirun -np 16 cp2k.popt进行并行测试时,发现程序像是运行了16个副本,所有文本都输出16次。
但是当SCF收敛时,其他的进程会相应的终止,在一次迭代后16个进程还剩下4个
请问老师知道这是什么问题吗?是mpi的不兼容还是toolchain里的哪几个包没有装影响了并行?

另外lz使用cp2k.ssmp对这个脚本进行测试的时候是可以正常运行的,但是离子步只能占用一个线程,SCF时才能把cpu跑满,这是脚本的问题吗?
inp,xyz和显示输出的log见附件

作者
Author:
Doria    时间: 2022-10-12 21:51
你运行了toolchain/install/setup了吗?
作者
Author:
名字长的厉害    时间: 2022-10-13 07:38
Doria 发表于 2022-10-12 21:51
你运行了toolchain/install/setup了吗?

运行了,我把source setup写进了bashrc
作者
Author:
highlight    时间: 2022-10-13 08:57
发现程序像是运行了16个副本,所有文本都输出16次。

估计就是重现了这个问题 http://bbs.keinsci.com/thread-30322-1-1.html
作者
Author:
sobereva    时间: 2022-10-13 13:15
通常是CP2K和MPI库编译问题,或者当前活动状态的MPI和实际编译CP2K用的MPI库不符,导致没并行成功
作者
Author:
名字长的厉害    时间: 2022-10-13 14:23
sobereva 发表于 2022-10-13 13:15
通常是CP2K和MPI库编译问题,或者当前活动状态的MPI和实际编译CP2K用的MPI库不符,导致没并行成功

应该是的,多谢sob老师,
我重新编译了一下,使用了toolchain自动安装的mpi而不是系统的mpi,离子步从五分钟左右缩短到大概10s
另外,看起来cp2k的离子步应该是纯mpi并行而不是openmp并行,所以ssmp效率低下




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