计算化学公社

 找回密码 Forget password
 注册 Register

关于CP2K提交任务时的并行核数指定问题

查看数: 4688 | 评论数: 11 | 收藏 Add to favorites 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2023-2-26 12:35

正文摘要:

各位前辈好,我在编译完成CP2K(2023版本)之后,提交任务使用如下命令: $./cp2k-2023.1/exe/local/cp2k.popt test.inp |tee test.out 然后是可以在算了,但是查看后台进程发现: 这个CPU只有100%。 机器是 ...

回复 Reply

943436427 发表于 Post on 2023-11-16 17:37:49
本帖最后由 943436427 于 2023-11-16 17:44 编辑
啊不错的飞过海 发表于 2023-11-16 17:32
那直接export OMP_NUM_THREADS=1之后 mpirun -n 36 /home/room/software/cp2k-2023.2/exe/local/cp2k.psm ...
这个方法也可以非常感谢!
用这个方法之后我的运存占用低了很多从原本接近200GB的使用变成30GB上下的占用,运算速度看起来快了非常多。
这个方法是更好的方法。
943436427 发表于 Post on 2023-11-16 17:33:32
本帖最后由 943436427 于 2023-11-16 17:36 编辑
啊不错的飞过海 发表于 2023-11-16 17:32
那直接export OMP_NUM_THREADS=1之后 mpirun -n 36 /home/room/software/cp2k-2023.2/exe/local/cp2k.psm ...

是同一个我是用他脚本安装的
如果我用mpirun -np 4 占用就成这样了

202311161735418197..png (15.05 KB, 下载次数 Times of downloads: 16)

202311161735418197..png
啊不错的飞过海 发表于 Post on 2023-11-16 17:32:09
943436427 发表于 2023-11-16 17:29
我的输入文件里没有OMP_NUM_THREADS

那直接export OMP_NUM_THREADS=1之后 mpirun -n 36 /home/room/software/cp2k-2023.2/exe/local/cp2k.psmp -o al2cu.out -i al2cu.inp&应该就能获得一个正常的占用。你用的mpi和编译cp2k时候的是一个吧?
943436427 发表于 Post on 2023-11-16 17:29:13
本帖最后由 943436427 于 2023-11-16 17:34 编辑
啊不错的飞过海 发表于 2023-11-16 17:21
不是,是作为环境变量定义。删去输入文件里的OMP_NUM_THREADS,执行export OMP_NUM_THREADS=1,然后执行 ...

我的输入文件里没有OMP_NUM_THREADS
不过我将输入改为mpirun -np 3  /home/room/software/cp2k-2023.2/exe/local/cp2k.psmp -o al2cu.out -i al2cu.inp &
占用就变成百分之五十了
我查看了使用情况两个pmsp分别占用35个核多一点剩下一个pmsp占用1个核

202311161734084680..png (12.77 KB, 下载次数 Times of downloads: 14)

202311161734084680..png
啊不错的飞过海 发表于 Post on 2023-11-16 17:21:09
943436427 发表于 2023-11-16 17:04
OMP_NUM_THREADS这个是放在inp文件中吗?我加了这个之后反而无法运行了。
使用mpirun --map -by -np 71 ...

不是,是作为环境变量定义。删去输入文件里的OMP_NUM_THREADS,执行export OMP_NUM_THREADS=1,然后执行你的mpirun。
943436427 发表于 Post on 2023-11-16 17:04:55
本帖最后由 943436427 于 2023-11-16 17:27 编辑
啊不错的飞过海 发表于 2023-11-16 16:57
有的版本的mpi会在不显式定义OMP_NUM_THREADS时画蛇添足地把OMP并行核数设为物理核心数,可能是这个导致 ...

OMP_NUM_THREADS这个是放在inp文件中吗?我加了这个之后反而无法运行了。
使用mpirun --map -by -np 71 /home/room/software/cp2k-2023.2/exe/local/cp2k.psmp -o al2cu.out -i al2cu.inp &
mpirun -np 72 --map -by /home/room/software/cp2k-2023.2/exe/local/cp2k.psmp -o al2cu.out -i al2cu.inp

mpirun -np 72 --hostfile nodes --map-by node /home/room/software/cp2k-2023.2/exe/local/cp2k.psmp -o al2cu.out -i al2cu.inp也不行




啊不错的飞过海 发表于 Post on 2023-11-16 16:57:06
943436427 发表于 2023-11-16 16:32
老师您好我想请问一下就是我不管用的是mpirun -np 36 /home/room/software/cp2k-2023.2/exe/local/cp2k.p ...

有的版本的mpi会在不显式定义OMP_NUM_THREADS时画蛇添足地把OMP并行核数设为物理核心数,可能是这个导致的。
指定OMP_NUM_THREADS或给mpi加--map-by关键字可以凑合解决这一问题。
943436427 发表于 Post on 2023-11-16 16:32:53
乐平 发表于 2023-2-26 20:24
你只用了 mpirun 但是没有指定用多少核并行啊

老师您好我想请问一下就是我不管用的是mpirun -np 36 /home/room/software/cp2k-2023.2/exe/local/cp2k.psmp -o al2cu.out -i al2cu.inp
还是mpirun -np 72 /home/room/software/cp2k-2023.2/exe/local/cp2k.psmp -o al2cu.out -i al2cu.inp
我的cpu占用都是百分之百,服务器配置是72个物理核心双线程。
sobereva 发表于 Post on 2023-2-27 02:57:57
CP2K第一性原理程序在CentOS中的简易安装方法
http://sobereva.com/586http://bbs.keinsci.com/thread-21608-1-1.html
再测试popt版。假设用4核通过MPI方式并行,就执行:mpirun -np 4 cp2k.popt test.inp |tee test.out。在top中看到会有4个cp2k.popt在运行,占用率皆接近100%。
乐平 发表于 Post on 2023-2-26 20:24:26
本帖最后由 乐平 于 2023-2-26 20:26 编辑
社会主义小战士 发表于 2023-2-26 12:50
OK,已经可以并行跑了。
原来需要使用如下命令:
$mpirun /path/to/cp2k.popt test.in

你只用了 mpirun 但是没有指定用多少核并行啊

  1. mpirun -np 36 /path/to/cp2k.popt -i test.in -o test.out
复制代码

社会主义小战士 发表于 Post on 2023-2-26 12:50:41
OK,已经可以并行跑了。
原来需要使用如下命令:
$mpirun /path/to/cp2k.popt test.in

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2026-2-20 12:43 , Processed in 0.175097 second(s), 25 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list