计算化学公社

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

[ORCA] ORCA在slurm任务系统里的资源分配

[复制链接 Copy URL]

28

帖子

0

威望

178

eV
积分
206

Level 3 能力者

跳转到指定楼层 Go to specific reply
楼主
由于近期敝校计算中心把大部分nodes从PBS搬到slurm,只留了一些年久失修的老机器在PBS。因此我也只能在slurm下使用orca了。
事实证明搬迁工作十分顺利,由于不提供openmpi2.0.2,我尝试了2.1.1(ifortran编译的),运行十分顺利。

我有一个问题:slurm的脚本语句有些不同,对于orca来说,.sh文件需要设定 任务数 (ntasks-per-node)才能实现并行。那么cpus-per-task是什么意思呢?设定这个值对orca的运行速度是否有影响?

175

帖子

0

威望

5467

eV
积分
5642

Level 6 (一方通行)

2#
发表于 Post on 2018-1-18 20:57:07 | 只看该作者 Only view this author
例如,可能用到的地方如下:
# Set the number of cores available per process
# if the $SLURM_CPUS_PER_TASK variable is not zero length
if [ ! -z  $SLURM_CPUS_PER_TASK ] ; then
    export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK
else
    # $SLURM_CPUS_PER_TASK is a zero length
    # The default value is a core per task
    export OMP_NUM_THREADS=1
fi

357

帖子

0

威望

2071

eV
积分
2428

Level 5 (御坂)

真 掘墓者

3#
发表于 Post on 2018-1-19 08:23:30 | 只看该作者 Only view this author
本帖最后由 kyuu 于 2018-1-19 08:34 编辑

#SBATCH --nodes=1  节点数
#SBATCH --ntasks=12 CPU数量(并行任务数量)
#SBATCH --cpus-per-task=1 多线程,不需要,设成1
另:Orca并行需要使用全路径
圣诞刨坟忙

28

帖子

0

威望

178

eV
积分
206

Level 3 能力者

4#
 楼主 Author| 发表于 Post on 2018-1-23 23:39:55 | 只看该作者 Only view this author
kyuu 发表于 2018-1-19 08:23
#SBATCH --nodes=1  节点数
#SBATCH --ntasks=12 CPU数量(并行任务数量)
#SBATCH --cpus-per-task=1 多 ...

谢谢您!请问ntasks是怎么设置呢,像PBS里一样大于PAL数就行了嘛

357

帖子

0

威望

2071

eV
积分
2428

Level 5 (御坂)

真 掘墓者

5#
发表于 Post on 2018-1-24 11:27:05 | 只看该作者 Only view this author
Charles_Gao 发表于 2018-1-23 23:39
谢谢您!请问ntasks是怎么设置呢,像PBS里一样大于PAL数就行了嘛

You should declare the same number of cores in slurm as the PAL number in your input file
圣诞刨坟忙

581

帖子

0

威望

1700

eV
积分
2281

Level 5 (御坂)

6#
发表于 Post on 2021-3-12 21:08:15 | 只看该作者 Only view this author
kyuu 发表于 2018-1-24 11:27
You should declare the same number of cores in slurm as the PAL number in your input file

老师打扰了,下边的slurm脚本orca计算单个节点可以运行,但是跨节点的时候总是一个节点在算,其他节点top都没有计算进程,如何简单的修改下边的slurm脚本可以跨节点运行呀?

#!/bin/bash
#
#SBATCH --nodes=3               # allocate 1 nodes for the job
#SBATCH --ntasks-per-node=3     # allocate 20 cores for the job
#SBATCH --time=72:00:00
#SBATCH -o output.%J.out # the file to write stdout for job
#SBATCH -e output.%J.err # the file to write stderr for job
#SBATCH --job-name=a.inp

input=a.inp

jobname=$(echo "${input%.*}")

# start
export PATH=$PATH:/home/guojd/openmpi313/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/guojd/openmpi313/lib
export PATH=$PATH:/home/guojd/orca421
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/guojd/orca421
export RSH_COMMAND="ssh -x"

scratch="/tmp/$USER/$SLURM_JOB_ID"

if [ ! -d $scratch ]; then
    mkdir -p $scratch
fi

export GAUSS_SCRDIR=$scratch

# run Gaussian 09
time /home/guojd/orca421/orca $input 2>&1 | tee $jobname.out

if [ -f $scratch/*.chk ]; then
    cp $scratch/*.chk $SLURM_SUBMIT_DIR
fi

rm -rf $scratch

2425

帖子

1

威望

6196

eV
积分
8641

Level 6 (一方通行)

7#
发表于 Post on 2021-3-12 21:16:04 | 只看该作者 Only view this author
498746012 发表于 2021-3-12 21:08
老师打扰了,下边的slurm脚本orca计算单个节点可以运行,但是跨节点的时候总是一个节点在算,其他节点top ...

orca部分计算,
读写硬盘很厉害。
你这个脚本,想弄死谁呀?

你要了三个机器,
每个机器跑三个核心。
为什么如此喜欢奇数的方案呢?

slurm和orca均有说明如何用各种调度器。
或者搜索,orca+slurm。
High-Performance Computing for You
为您专属定制的高性能计算解决方案

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

581

帖子

0

威望

1700

eV
积分
2281

Level 5 (御坂)

8#
发表于 Post on 2021-3-12 23:24:07 | 只看该作者 Only view this author
本帖最后由 498746012 于 2021-3-12 23:26 编辑
abin 发表于 2021-3-12 21:16
orca部分计算,
读写硬盘很厉害。
你这个脚本,想弄死谁呀?

谢谢老师,情况是这样的,我的计算一个节点用一个核所有内存都用上但是还是内存不够,所以通过多个节点并行来达到所需要的内存

本版积分规则 Credits rule

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

GMT+8, 2026-2-21 16:14 , Processed in 0.252651 second(s), 20 queries , Gzip On.

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