计算化学公社

 找回密码 Forget password
 注册 Register
Views: 311|回复 Reply: 0
打印 Print 上一主题 Last thread 下一主题 Next thread

[并行运算] 求助:CP2K 2025.1的OpenMP并行模式不起作用

[复制链接 Copy URL]

39

帖子

0

威望

270

eV
积分
309

Level 3 能力者

跳转到指定楼层 Go to specific reply
楼主
本帖最后由 stishovite 于 2025-6-16 14:39 编辑

这两天更新到了cp2k 2025.1,编译过程一切顺利,但MPI+OpenMP的运行模式中,OpenMP选项不起作用了。
例如96物理核单路工作站,用mpirun -np 48 -x OMP_NUM_THREADS=2 cp2k.psmp h2o.inp | tee h2o.out,本来可以调用全部的96核,但现在只能调用48核。

输出信息显示,cp2k.psmp识别出了MPI+OpenMP的混合模式,但仍然只调用了一半的核心数。
  1. GLOBAL| Total number of message passing processes 48
  2. GLOBAL| Number of threads for this process                                    2
复制代码


目前,我增加了--cpus-per-proc 参数(告诉 mpirun:为每一个MPI进程都预留2个CPU核心。),暂时可以调用全部的物理核。
  1. mpirun -np 48 --cpus-per-proc 2 -x OMP_NUM_THREADS=2 cp2k.psmp h2o.inp | tee h2o.out
复制代码


但感觉很别扭,不如原来直接用-x OMP_NUM_THREADS=2方便,也不清楚对计算效率有什么影响。


因此,请问大家这个奇怪问题可能的原因及解决办法还有哪些?


补充:OpenMPI是通过cp2k 2025.1 toolchain编译的5.0.6版本。

本版积分规则 Credits rule

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

GMT+8, 2025-8-12 21:02 , Processed in 0.149368 second(s), 20 queries , Gzip On.

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