计算化学公社

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

[GPU加速] openacc编译的GPU加速vasp多个任务只占用同一个cpu的问题

[复制链接 Copy URL]

9

帖子

0

威望

171

eV
积分
180

Level 3 能力者

本帖最后由 gaozx 于 2024-5-21 16:01 编辑

问题:多个GPU加速VASP任务同时跑,只会占用同一个CPU

通过slurm作业系统sbatch命令提交或者mpirun方式直接运行结果都一样,同时调用任意数量的GPU,cpu占用都是对的,当两个或者两个以上单卡GPU加速的任务同时运行,只会占用CPU0,多个任务平均分配CPU0的性能,例如,两个单卡GPU加速的任务同时运行,各占用CPU0的50%的性能。

机器配置:
7048GR准系统
处理器:2637 v4 * 2
内存:ddr4 16g * 4
显卡:P100 * 4
编译方式:nvidia_hpc_sdk + intel mkl,makefile.include见附件
openacc_intelmkl_makefile.include (3.6 KB, 下载次数 Times of downloads: 3) slurm.conf (1.85 KB, 下载次数 Times of downloads: 0) gres.conf (172 Bytes, 下载次数 Times of downloads: 1)

slurm提交作业脚本:
#!/bin/bash
#SBATCH -o vasp.out
#SBATCH -J opt
#SBATCH -p node01
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --gres=gpu:1

#intel_oneapi_2024
source /opt/intel/oneapi_2024/setvars.sh intel64 > /dev/null

#nv-hpcsdk
export LD_LIBRARY_PATH=/opt/nvidia/hpc_sdk/Linux_x86_64/23.9/cuda/12.2/targets/x86_64-linux/lib:$LD_LIBRARY_PATH
export PATH=/opt/nvidia/hpc_sdk/Linux_x86_64/23.9/compilers/bin:$PATH
export MANPATH=/opt/nvidia/hpc_sdk/Linux_x86_64/23.9/compilers/man:$MANPATH
export MANPATH=/opt/nvidia/hpc_sdk/Linux_x86_64/23.9/comm_libs/mpi/man:$MANPATH
export LD_LIBRARY_PATH=/opt/nvidia/hpc_sdk/Linux_x86_64/23.9/compilers/lib:$LD_LIBRARY_PATH
export PATH=/opt/nvidia/hpc_sdk/Linux_x86_64/23.9/comm_libs/openmpi4/bin:$PATH
export LD_LIBRARY_PATH=/opt/nvidia/hpc_sdk/Linux_x86_64/23.9/compilers/extras/qd/lib:$LD_LIBRARY_PATH

export OMP_NUM_THREADS=1

mpirun -np 1 /opt/vasp/openacc_vasp.6.4.2/vasp_std



同时跑两个调用单卡GPU的任务,两个任务占用同一个CPU核心



跑一个调用两张P100显卡的任务,一个任务正常占用两个CPU核心

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

2#
发表于 Post on 2024-5-21 15:51:08 | 只看该作者 Only view this author
修改 gres.conf

具体看slurm手册.
High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

9

帖子

0

威望

171

eV
积分
180

Level 3 能力者

3#
 楼主 Author| 发表于 Post on 2024-5-21 15:58:49 | 只看该作者 Only view this author
abin 发表于 2024-5-21 15:51
修改 gres.conf

具体看slurm手册.

感谢回复!不通过slurm作业系统提交,直接mpirun也存在同样的问题。

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

4#
发表于 Post on 2024-5-21 16:05:09 | 只看该作者 Only view this author
gaozx 发表于 2024-5-21 15:58
感谢回复!不通过slurm作业系统提交,直接mpirun也存在同样的问题。

你又没有手动指定处理器,
凭啥自动分派?
High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

5#
发表于 Post on 2024-5-21 16:13:36 | 只看该作者 Only view this author
本帖最后由 abin 于 2024-5-21 16:17 编辑

另外,
请查阅硬件配置.

4个GPU,
有两个在第一颗处理器上;
另外两个GPU在第二颗处理器上.

你可能需要手动指定GPU和cpu_core之间的绑定;
或者修改slurm配置, 指定GPU和cpu_core之间的绑定关系.



另外, 如果你的主板, 还接驳有其他的PCIe设备, 这个机器的PCIe通道, 可能数量不足呢.
High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

本版积分规则 Credits rule

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

GMT+8, 2024-11-23 08:27 , Processed in 0.167788 second(s), 24 queries , Gzip On.

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