#PBS系统torque.docx

上传人:b****6 文档编号:6388331 上传时间:2023-01-05 格式:DOCX 页数:11 大小:21.76KB
下载 相关 举报
#PBS系统torque.docx_第1页
第1页 / 共11页
#PBS系统torque.docx_第2页
第2页 / 共11页
#PBS系统torque.docx_第3页
第3页 / 共11页
#PBS系统torque.docx_第4页
第4页 / 共11页
#PBS系统torque.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

#PBS系统torque.docx

《#PBS系统torque.docx》由会员分享,可在线阅读,更多相关《#PBS系统torque.docx(11页珍藏版)》请在冰豆网上搜索。

#PBS系统torque.docx

#PBS系统torque

PBS管理系统

<一)作业提交系统Torque个人安装总结(PBS>

PBS是功能最为齐全,历史最悠久,支持最广泛的本地集群调度器之一。

PBS的目前包括openPBS,PBSPro和Torque三个主要分支。

其中OpenPB是S最早的PBS系统,目前已经没有太多后续开发,PBSpro是PBS的商业版本,功能最为丰

富。

Torque是Clustering公司接过了OpenPBS,并给与后续支持的一个开源版本。

下面是本人安装torque的过程。

一、Torque安装

在master<管理结点上)

1、解压安装包

[root@mastertmp]#tarzxvftorque-2.3.0.tar.gz

2、进入到解压后的文件夹

./configure--with-default-server=master

make

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

1/13

需要自己建立)

<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~]#qmgr

createqueuestudents

setqueuestudentsqueue_type=Execution

setqueuestudentsPriority=40

setqueuestudentsresources_max.cput=96:

00:

00

setqueuestudentsresources_min.cput=00:

00:

01

setqueuestudentsresources_default.cput=96:

00:

00

setqueuestudentsenabled=True

setqueuestudentsstarted=True

4、在node0x

[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使用

2/13

1、创建用户

在master的root下

useraddtest

passwdtest

输入test密码

到/var/yp下make一下

2、配置普通用户的ssh

sutest

cd

ssh-keygen-tdsa

cd.ssh

catid_pub.dsa>>authorized_keys

chmod600authorized_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_WORKDI到R工作目录下<此为PBS提供的环境变量)mpirun–machine$PBS_NODEFILE-np20./vasp

4、启动mpd

mpdboot-n10-fmfa

3/13

mfa内容:

master:

4

node01:

4

node09:

4

5、提交,查询,删除作业提交作业:

qsubpbsjob作业提交后会有一个作业

号[test1@masterpbstest]$qsub

pbsjob

48.master

查询作业:

qstat

[test1@masterpbstest]$qstatJobidNameUserTimeUseSQueue

48.masterpbstesttest100:

00:

00Rstudents删除作业:

qdel作业号

[test1@masterpbstest]$qdel48链接

<二)PBS脚本使用

qsub-NRelax-lnodes=1:

ppn=8pbs#!

/bin/sh

4/13

VASP="/home/user15/soft/mpi/bin/mpirun-machinefile$PBS_NODEFILE-np8avasp

i=36times=1000

while((i<=times>>

do

cpRStru_$iPOSCAR

rmWAVECARCHG*

./produKPTS.x

$VASP

cpCONTCARPOSCARrmWAVECARCHG*./produKPTS.x$VASP

cpCONTCARPOSCAR

rmWAVECARCHG*

./produKPTS.x

$VASP

cpCONTCARpos.$i

cpOUTCARout.$i

leti=i+1

done

cd/temp/user15/RST1000

./relax.sh>&log

5/13

<三)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表示资源列表,用于设定特定任务所需的一些参数。

这里的NODE表S示并行环境下可以使用的节点数,而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删除JOBNAM为Eid的任务。

该任务如果在等待,则可以有这个命令删

6/13除,如果已经开始运行,则无法删除。

三、参数传递

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(>是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]

7/13

[-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中用户的作业状态。

8/13

例:

#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:

以交互方式运行

9/13

-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下一般的运行脚本文件。

10/13

[注]:

脚本文件中的mpirun_rsh命令行中的节点列表文件要用环境变量表

$PBS_NODEFIL,E这个环境变量表示由pbs自动分配给作业的节点列表;节点数为命令行中指定的进程数。

格式如下:

mpirun_rsh–np进程数–hostfile$PBS_NODEFILE可执行程序名命令详解如下:

GettingStatusontheSystem,Queues,andJobs

Command

ShortDescription

Tutorial

Manual

Page

qstat

listinformationaboutqueuesandjobs

Usingqstat

qstat

manpage

qstat-q

listallqueuesonsystem

HTMLand

PS

qstat

manpage

qstat-Q

listqueuelimitsforallqueues

HTMLand

PS

qstat

manpage

qstat-a

listalljobsonsystem

Usingqstat

qstat

manpage

qstat-auuserid

listalljobsownedbyuseruserid

Usingqstat

qstat

manpage

qstat-s

listalljobswithstatuscomments

HTMLand

PS

qstat

manpage

qstat-r

listallrunningjobs

HTMLand

PS

qstat

manpage

qstat-fjobid

listallinformationknownabout

specifiedjob

Usingqstat

qstat

manpage

qstat-Qfqueue

listallinformationknownabout

specifiedqueue

Usingqstat

qstat

manpage

11/13

qstat-B

ListsummaryinformationaboutthePBSserver

HTMLand

PS

qstat

manpage

SubmittingaJob

qsubjobscript

submitjobscripttoPBS

Usingqsub

qsubmanpage

qsub-I

submitaninteractive-batchjob

Usingqsub

qsubmanpage

qsub-qqueue

submitjobdirectlytoaspecifiedqueue

Usingqsub

qsubmanpage

UsingtheGraphicalUserInterface(GUI>

xpbs

GraphicalUserInterfacetoPBScommands

Usingxpbs

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

计算节点数,ppn:

计算节点CPU数)

#LJRS-lwalltime=48:

00:

00<用户估计的最大计算时间,超时系统会自动中断作业)

limit-sunlimited

TMPFILE=`whoami`_mpich_gm.tmp

12/13sed'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`

13/13

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1