计算化学公社

标题: 关于slurm脚本调用CPU核数的疑惑 [打印本页]

作者
Author:
121089576    时间: 2025-7-15 23:22
标题: 关于slurm脚本调用CPU核数的疑惑
本人在使用超算算Gaussian,超算中心给的官方slurm脚本是:
“#!/bin/bash
#SBATCH -J g16 #任务名称
#SBATCH -N 1 #节点数
#SBATCH --ntasks-per-node=16 #每个节点核心数”
他们把--ntasks-per-node直接定义为调用的CPU核数。我很奇怪为什么没有设置--cpus-per-task。

因为
“--ntasks-per-node=16”表示在单个节点上启动‌16个进程‌,每个进程默认占用1核;
“--ntasks-per-node=1
   --cpus-per-task=16”则表示在单个节点上启动‌1个进程‌,该进程调用16核。

虽然都是总共调用16核,但是我觉得这两种方式对计算应该有影响吧?随后我咨询了超算平台的技术支持人员,他们说这对计算任务的效率基本不影响。
请教一下大家怎么看这个?


作者
Author:
KazusaT    时间: 2025-7-16 00:13
本帖最后由 KazusaT 于 2025-7-16 00:18 编辑

我不太清楚slurm的调度策略,但linux上一个task可以拥有所属进程的内存空间和计算资源,并且在自己的机器上跑Gaussian时用top看一下就会发现他是多个线程、每个线程单核,所以应该没有影响
作者
Author:
abin    时间: 2025-7-16 09:55
https://gitee.com/hpc4you/hpc/tree/master/slurm_scripts

这有例子, 自己阅读理解.




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