计算化学公社

标题: 超算上使用GPU版Gromacs(2018.3),cpu/gpu怎么分配比较合适 [打印本页]

作者
Author:
jimulation    时间: 2020-7-28 13:42
标题: 超算上使用GPU版Gromacs(2018.3),cpu/gpu怎么分配比较合适
本帖最后由 jimulation 于 2020-7-28 19:57 编辑

我的体系约50万个原子,模拟50ns。之前在广州超算cpu结点(2692 v2)72核运行需2周,打算在gpu结点(28核gold-6132的cpu,+4块V100的gpu)进行测试,下面是任务提交的脚本内容。

#!/bin/bash
yhrun -N 1 -n 24 -p gpu_v100 gmx_mpi mdrun -s 0703.tpr -v -deffnm 0703 -ntomp 1 -gpu_id 0123 -nb gpu -bonded gpu -pme cpu

提交后,下面是输出到log文件中片段:
——————————————————
Domain decomposition grid 2 x 6 x 2, separate PME ranks 0
PME domain decomposition: 2 x 12 x 1
...
Using 24 MPI processes
Using 1 OpenMP thread per MPI process
On host gpu47 4 GPUs selected for this run.
Mapping of GPU IDs to the 24 GPU tasks in the 24 ranks on this node:
  PP:0,PP:0,PP:0,PP:0,PP:0,PP:0,PP:1,PP:1,PP:1,PP:1,PP:1,PP:1,PP:2,PP:2,PP:2,PP:2,PP:2,PP:2,PP:3,PP:3,PP:3,PP:3,PP:3,PP:3
PP tasks will do (non-perturbed) short-ranged and most bonded interactions on the GPU
——————————————————
看了此帖中的介绍http://bbs.keinsci.com/thread-13861-1-1.html,有个不明白的地方,想请教大家:我设置的是24个ranks,且短程非键作用、键结作用都放在gpu上计算,而PME放在cpu上计算,从log输出来看,pme的ranks数为0,意思是不是cpu上计算的内容不计入ranks?只有gpu上的才算?

求指教,谢谢!






作者
Author:
jimulation    时间: 2020-7-28 21:28
自顶一个~
还有一个问题求教大家,我对比了"-n 4 -ntomp 6 -nb gpu -pme gpu -npme 1 -bonded gpu "和"-n 4 -ntomp 6 -nb gpu -pme gpu -npme 1 -bonded cpu",发现前者的pme/f达到1.5左右,后者只有0.3左右。为什么会有这么大的差别呢?我的理解是,把bonded作用放到cpu上计算,那么gpu上只计算短程nonbonded作用,计算量会降低,而pme任务仍然是在1块gpu上计算,这样pme/f应该要升高才对?




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