PBS管理系统torque.docx
- 文档编号:18010499
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:13
- 大小:22.42KB
PBS管理系统torque.docx
《PBS管理系统torque.docx》由会员分享,可在线阅读,更多相关《PBS管理系统torque.docx(13页珍藏版)》请在冰点文库上搜索。
PBS管理系统torque
PBS管理系统
(一)作业提交系统Torque个人安装总结(PBS)
PBS是功能最为齐全,历史最悠久,支持最广泛的本地集群调度器之一。
PBS的目前包括openPBS,PBSPro和Torque三个主要分支。
其中OpenPBS是最早的PBS系统,目前已经没有太多后续开发,PBSpro是PBS的商业版本,功能最为丰富。
Torque是Clustering公司接过了OpenPBS,并给与后续支持的一个开源版本。
下面是本人安装torque的过程。
一、Torque安装
在master(管理结点上)
1、解压安装包
[root@mastertmp]#tarzxvftorque-2.3.0.tar.gz
2、进入到解压后的文件夹
./configure--with-default-server=mastermake
makeinstall
3、
(1)[root@mastertorque-2.3.0]#./torque.setup
(2)[root@mastertorque-2.3.0]#makepackages
把产生的tpackages,torque-package-clients-linux-x86-64.sh,torque-package-mom-linux-x86-64.sh拷贝到所有节点。
(3)[root@master
torque-2.3.0]#./torque-package-clients-linux-x86_64.sh--install
[root@mastertorque-2.3.0]#./torque-package-mom-linux-x86_64.sh
--install
(4)编辑/var/spool/torque/server_priv/nodes(需要自己建立)
加入如下内容masternp=4node01np=4
........node09np=4
(5)启动pbs_server,pbs_sched,pbs_mom,并把其写到/etc/rc.local里使其能开机自启动。
(6)创建队列[root@master~]#qmgrcreatequeuestudents
setqueuestudentsqueue_type=ExecutionsetqueuestudentsPriority=40
setqueuestudentsresources_max.cput=96:
00:
00setqueuestudentsresources_min.cput=00:
00:
01
setqueuestudentsresources_default.cput=96:
00:
00setqueuestudentsenabled=True
setqueuestudentsstarted=True
4、在node0x(x=1-9,计算结点上)
[root@node0x
torque-2.3.0]#./torque-package-clients-linux-x86_64.sh--install
[root@node0xtorque-2.3.0]#./torque-package-mom-linux-x86_64.sh
--install
然后启动pbs_mom,把pbs_mom写入/etc/rc.local
二、TorquePBS使用
1、创建用户
在master的root下
useraddtestpasswdtest输入test密码
到/var/yp下make一下
2、配置普通用户的sshsutest
cd
ssh-keygen-tdsacd.ssh
catid_pub.dsa>>authorized_keyschmod600authorized_keys
3、编写作业脚本
[test1@mastert]vipbsjob
#!
/bin/tcsh
#PBS-o/home/test1/pbstest/t/output标准输出文件
#PBS-e/home/test1/pbstest/t/error错误输出文件
#PBS-lnodes=5:
ppn=4规定使用的节点数以及每个节点能跑多少核
#PBS–qstudents把任务提交到students队列中
cd$PBS_O_WORKDIR到工作目录下(此为PBS提供的环境变量)
mpirun–machine$PBS_NODEFILE-np20./vasp
4、启动mpd
mpdboot-n10-fmfa
mfa内容:
master:
4node01:
4
….
node09:
4
5、提交,查询,删除作业提交作业:
qsubpbsjob作业提交后会有一个作业号[test1@masterpbstest]$qsubpbsjob
48.master
查询作业:
qstat
[test1@masterpbstest]$qstat
JobidNameUserTimeUseSQueue
--------------------------------------------------------
----------------------------------------
48.masterpbstesttest100:
00:
00Rstudents
删除作业:
qdel作业号
[test1@masterpbstest]$qdel48
链接ml/cmtid/b4f2450700f2e5c77b89478f
(二)PBS脚本使用
qsub-NRelax-lnodes=1:
ppn=8pbs
#!
/bin/sh
VASP="/home/user15/soft/mpi/bin/mpirun-machinefile$PBS_NODEFILE
-np8avasp
i=36times=1000while((i<=times))do
cpRStru_$iPOSCAR
rmWAVECARCHG*
./produKPTS.x
$VASP
cpCONTCARPOSCAR
rmWAVECARCHG*
./produKPTS.x
$VASP
cpCONTCARPOSCAR
rmWAVECARCHG*
./produKPTS.x
$VASP
cpCONTCARpos.$icpOUTCARout.$ileti=i+1
done
cd/temp/user15/RST1000
./relax.sh>&log
(三)pbs常用命令和选项
一、基本选项
pbs是ProtableBatchSystem的缩写,是一个任务管理系统。
当多个用户使用同一个计算资源时,每个用户用PBS脚本提交自己的任务,由PBS对这些任务进行管理和资源的分配。
下面是一个简单的PBS脚本:
#PBS-lnodes=20
#PBS-Nsnaphu
#PBS-joe
#PBS-lwalltime=24:
00:
00
#PBS-lcput=1:
00:
00
#PBS-qdque
cd$PBS_O_WORKDIR
cat$PBS_NODEFILE$PBS_NODEFILE>NODEFILE
mpirun-hostfileNODEFILE-np`catNODEFILE|wc-l`./mpiTest
将这个脚本保存成submit
然后qsubsubmit就将这个mpiTest的任务提交给了系统。
脚本中#PBS为脚本选项,用于设置一些参数。
#PBS-l表示资源列表,用于设定特定任务所需的一些参数。
这里的NODES表示并行环境下可以使用的节点数,而walltime表示任务最大时限,而cput表示cpu时间的最大时限,运行时间和cpu使用时间超过对应的时限,任务就会以超
时退出。
这三个参数不是PBS脚本参数,而是并行环境所需的参数。
#PBS-N表示任务名称
#PBS-j表示系统输出,如果是oe,则标准错误输出(stderr)和标准输出(stdout)
合并为stdout,如果是eo,则合并为stderr,如果没有设定或设定为n,则stderr
和stdout分开。
#PBS-q表示当前任务选用的队列。
在并行环境下,一个系统中往往有多个队列,任务提交后,将在所选的队列中排除等候。
系统中有哪些队列可以用qstat-q查看。
二、简单命令任务提交后,需要查看任务信息和环境信息,有如下常用命令。
qstat查看本用户提交的任务
qstat-n同上,输出内容稍有不同
qstat-q查看系统中所有的队列,以及每个队列中任务的运行和等候情况。
showq查看系统中所有运行的任务。
qdelid删除JOBNAME为id的任务。
该任务如果在等待,则可以有这个命令删
除,如果已经开始运行,则无法删除。
三、参数传递
qsubsubmit-lnodes=4-vx=1,y=2
其中,-lnodes=4本来就是一个#PBS选项,既可以放在submit文件中,又可以放到命令行上。
-vx=1,y=2为一个变量列表,和shell命令一样,在submit文件中可以用$x,$y
来调用这两值
链接
(四)PBS命令与使用
PBS(PortableBatchSystem)是由NASA开发的灵活的批处理系统。
它被用于集群系统、超级计算机和大规模并行系统。
PBS主要有如下特征:
∙易用性:
为所有的资源提供统一的接口,易于配置以满足不同系统的需求,灵活的作业调度器允许不同系统采用自己的调度策略。
∙移植性:
符合POSIX1003.2标准,可以用于shell和批处理等各种环境。
∙适配性:
可以适配与各种管理策略,并提供可扩展的认证和安全模型。
支持广域网上的负载的动态分发和建立在多个物理位置不同的实体上的虚拟组织。
∙灵活性:
支持交互和批处理作业。
OpenPBS(http:
//www.OpenPBS.org/)是PBS的OpenSource的实现。
商业版本的PBS可以参照:
1、PBS命令
PBS提供4条命令用于作业管理。
(1)qsub命令—用于提交作业脚本命令格式:
qsub[-adate_time][-cinterval][-Cdirective_prefix]
[-epath][-I][-jjoin][-kkeep][-lresource_list][-mmail_options]
[-Muser_list][-Nname][-opath][-ppriority][-qdestination][-rc]
[-Spath_list][-uuser_list][-vvariable_list][-V]
[-Wadditional_attributes][-z][script]
参数说明:
因为所采用的选项一般放在pbs脚本中提交,所以具体见PBS
脚本选项。
例:
#qsubaaa.pbs提交某作业,系统将产生一个作业号
(2)qstat命令—用于查询作业状态信息
命令格式:
qatat[-f][-a][-i][-n][-s][-R][-Q][-q][-B][-u]
参数说明:
-fjobid列出指定作业的信息
-a列出系统所有作业
-i列出不在运行的作业
-n列出分配给此作业的结点
-s列出队列管理员与scheduler所提供的建议
-R列出磁盘预留信息
-Q操作符是destinationid,指明请求的是队列状态
-q列出队列状态,并以alternative形式显示
-auuserid列出指定用户的所有作业
-B列出PBSServer信息
-r列出所有正在运行的作业
-Qfqueue列出指定队列的信息
-u若操作符为作业号,则列出其状态。
若操作符为destinationid,则列出运行在其上的属于user_list中用户的作业状态。
例:
#qstat-f211查询作业号为211的作业的具体信息。
(3)qdel命令—用于删除已提交的作业命令格式:
qdel[-W间隔时间]作业号命令行参数:
例:
#qdel-W1521115秒后删除作业号为211的作业
(4)qmgr命令—用于队列管理
qmgr-c"createqueuebatchqueue_type=execution"qmgr-c"setqueuebatchstarted=true"
qmgr-c"setqueuebatchenabled=true"
qmgr-c"setqueuebatchresources_default.nodes=1"
qmgr-c"setqueuebatchresources_default.walltime=3600"qmgr-c"setserverdefault_queue=batch"
2、PBS脚本文件
PBS脚本文件由脚本选项和运行脚本两部分组成。
(1)PBS作业脚本选项(若无-C选项,则每项前面加‘#PBS’)
-adate_time:
date_time格式为:
[[[[CC]YY]MM]DD]hhmm[.SS]
表示经过date_time时间后作业才可以运行。
-cinterval:
定义作业的检查点间隔,如果机器不支持检查点,则忽略此选项。
-Cdirective_prefix:
在脚本文件中以directive_prefix开头的行解释为qsub的命
令选项。
(若无此选项,则默认为’#PBS’)
-epath:
将标准错误信息重定向到path
-I:
以交互方式运行
-jjoin:
将标准输出信息与标准错误信息合并到一个文件join中去。
-kkeep:
定义在执行结点上保留标准输出和标准错误信息中的哪个文件。
keep为o表示保留前者,e表示后者,oe或eo表示二者都保留,
n表示皆不保留。
若忽略此选项,二者都不保留。
-lresource_list:
定义资源列表。
以下为几个常用的资源种类。
cput=N:
请求N秒的CPU时间;N也可以是hh:
mm:
ss的形式。
mem=N[K|M|G][B|W]:
请求N{kilo|mega|giga}{bytes|words}大小的内存。
nodes=N:
ppn=M:
请求N个结点,每个结点M个处理器。
-mmail_options:
mail_option为a:
作业abort时给用户发信;为b:
作业开始运行发信;为e:
作业结束运行时发信。
若无此选项,默认为a。
-Muser_list:
定义有关此作业的mail发给哪些用户。
-Nname:
作业名,限15个字符,首字符为字母,无空格。
-opath:
重定向标准输出到path。
-ppriority:
任务优先级,整数,[-1024,1023],若无定义则为0.
-qdestination:
destination有三种形式:
queue,
@server,queue@server。
-ry|n:
指明作业是否可运行,y为可运行,n为不可运行。
-Sshell:
指明执行运行脚本所用的shell,须包含全路径。
-uuser_list:
定义作业将在运行结点上以哪个用户名来运行。
-vvariable_list:
定义export到本作业的环境变量的扩展列表。
-V:
表明qsub命令的所有环境变量都export到此作业。
-Wadditional_attributes:
作业的其它属性。
-z:
指明qsub命令提交作业后,不在终端显示作业号。
(2)运行脚本同LINUX下一般的运行脚本文件。
[注]:
脚本文件中的mpirun_rsh命令行中的节点列表文件要用环境变量表示
$PBS_NODEFILE,这个环境变量表示由pbs自动分配给作业的节点列表;
节点数为命令行中指定的进程数。
格式如下:
mpirun_rsh–np进程数–hostfile$PBS_NODEFILE可执行程序名命令详解如下:
GettingStatusontheSystem,Queues,andJobs
Command
ShortDescription
Tutorial
Manual
Page
qstat
listinformationaboutqueuesandjobs
Using
qstat
qstatmanpage
qstat-q
listallqueuesonsystem
HTMLand
PS
qstatmanpage
qstat-Q
listqueuelimitsforallqueues
HTMLand
PS
qstatmanpage
qstat-a
listalljobsonsystem
Using
qstat
qstatmanpage
qstat-au
userid
listalljobsownedbyuser
userid
Using
qstat
qstatmanpage
qstat-s
listalljobswithstatuscomments
HTMLand
PS
qstatmanpage
qstat-r
listallrunningjobs
HTMLand
PS
qstatmanpage
qstat-f
jobid
listallinformationknownaboutspecifiedjob
Using
qstat
qstatmanpage
qstat-Qf
queue
listallinformationknownaboutspecifiedqueue
Using
qstat
qstatmanpage
qstat-B
ListsummaryinformationaboutthePBSserver
HTMLand
PS
qstatmanpage
SubmittingaJob
qsub
jobscript
submitjobscripttoPBS
Using
qsub
qsubmanpage
qsub-I
submitaninteractive-batchjob
Using
qsub
qsubmanpage
qsub-qqueue
submitjobdirectlytoaspecifiedqueue
Using
qsub
qsubmanpage
UsingtheGraphicalUserInterface(GUI)
xpbs
GraphicalUserInterfacetoPBS
commands
Using
xpbs
xpbsmanpage
链接
(五)GM并行作业提交PBS脚本
PBS模板脚本文件路径为:
/export/home/pbs/mpich-gm.pbs.pbs
按照如下示例文件,建立pbs作业提交脚本,修改红色的部分即可。
#LJRS-S/bin/bash
#LJRS-oscript.out
#LJRS-joe
#LJRS-qdpool
#LJRS-lnodes=8:
ppn=1(nodes:
计算节点数,ppn:
计算节点CPU数)
#LJRS-lwalltime=48:
00:
00(用户估计的最大计算时间,超时系统会自动中断作业)
limit-sunlimited
TMPFILE=`whoami`_mpich_gm.tmp
sed's/c/g/g'$LJRS_NODEFILE>/tmp/$TMPFILE
GM_NODEFILE=/tmp/$TMPFILE
echoWorkingdirectoryis$LJRS_O_WORKDIR
cd$LJRS_O_WORKDIR
echoRuningonhost`hostname`echoStartingTimeis`date`echoDirectoryis`pwd`
echoThisjobsrunsonthefollowingprocessors:
echo`cat$GM_NODEFILE`NPROCS=`wc-l<$GM_NODEFILE`
echoThisjobhasallocated$NPROCSnodes
##UserParallelProgram###########
mpirun-v-machinefile$GM_NODEFILE-np$NPROCS~/my_parallel.exe>
out(修改为用户的并行作业执行命令)
####################################
rm-f/tmp/$TMPFILE
链接
echoEndingTimeis`date`
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- PBS 管理 系统 torque