Job scheduling - qsub

用qsub脚本语言在集群上进行简单的作业调度。

先看一个简单的qsub脚本样例 exp.pbs

#!/bin/bash
#PBS -s /bin/bash
#PBS -l nodes=1:ppn=12
#PBS -q gpu

cd /public/home/qing/code/Refiner
export PATH=/public/home/qing/code/Qing/build/bin:$PATH
export LD_LIBRARY_PATH = /public/home/qing/code/Qing/build/bin:$LD_LIBRARY_PATH

(time correspond -kd 15.0 -falloff 45.0 -max_bbox_dist 10.0 )

整个脚本分为3个部分:
1)资源说明

#PBS -s /bin/bash                         --> -s 运行脚本bash
#PBS -l nodes=1:ppn=12                    --> -l 运行当前脚本需要节点数目1,该节点上线程数12
#PBS -q gpu                               --> -q 队列,该集群上只有一种队列gpu

2)工作目录

cd /public/home/qing/code/Refiner
export PATH=/public/home/qing/code/Qing/build/bin:$PATH
export LD_LIBRARY_PATH = /public/home/qing/code/Qing/build/bin:$LD_LIBRARY_PATH

由于用到一些别的库并没有在 bash.profile里,因此需要额外export

3)程序运行

(time correspond -kd 15.0 -falloff 45.0 -max_bbox_dist 10.0 )

time 即 统计时间
correspond -kd 15.0 -falloff 45.0 -max_bbox_dist 10.0 即程序运行的命令行

那么运行此脚本使用命令 qsub exp.psb,那么程序在哪些节点上运行,需要哪些硬件资源qsub会自动分配。
多个.PBS可以直接用python生成。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容