- 1、本文档共40页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
提纲
一.PBS脚本编写使用
二.曙光Gridview作业调度中间件
PBS作业提交步骤
1. 准备:编写描述改作业的脚本,包括作业名,需要的资源等。
2. 提交:使用qsub命令将该作业提交给PBS服务器
3. 排队:服务器将该任务排入适当的队列
4. 调度:服务器检查各工作节点的状态是否符合该作业的要求,并
进行调度。
5. 执行:当条件满足时,作业被发给相应的执行服务器执行。程序
运行时执行服务器会收集程序的标准输出和标准错误流,等程序
结束时,将这些信息返回给用户。
6. 查询和调整:当作业在运行时,用户可以使用qstat进行状态查询。
用户发现作业提交错误时,可以使用qdel删除正在运行的作业。
7. 查看结果:使用文本编辑软件vi或者系统命令cat, less等查看输出
及错误信息显示。
PBS作业提交基本命令
? 在PBS系统中,用户使用 qsub 命令提交用户程序。用
户运行程序的命令及PBS环境变量设置组成PBS作业脚本,
作业脚本使用如下格式提交到PBS系统运行:
qsub PBS作业脚本
qsub -N test.vasp -l nodes=4:ppn=2 -q defaults PBS作业脚本
PBS作业脚本
? 本质是一个SHELL脚本 ? 注释以“#”开头
? PBS运行参数,以“#PBS”开头
? 可以直接调用SHELL命令和系统命令
#PBS -N vasp
#PBS -l nodes=1:ppn=1
#PBS -l walltime=12:00:00
#PBS -q high
cd /home/test/work
./test.exe
PBS运行参数
在 PBS 脚本和 qsub 命令行中均有效,qsub命令行参数的优先级更高
运 行 参 数 说 明
-a 作业开始运行的时间 向PBS系统指定作业运行的开始时间。
作业运行时间格式为: [[[[CC]YY]MM]DD]hhmm[.SS]
-A 用户名 使用不同的用户来提交作业,缺省使用当前用户名
-o 标准输出文件的路径
-e 标准错误输出的路径
该参数指定标准错误输出的位置,缺省的情况下,PBS系统把标准输
出和标准错误输出放在用户qsub命令提交作业的目录下。
标准错误输出:作业名.o作业号
标准错误输出:作业名.e作业号
路径使用如下格式标准: [节点名:]路径名
-N 作业名 指定提交的作业名
-q 目标队列 指定作业提交的目标队列,其中目标队列可以是目标队列、目标节点
名或者是目标节点上的队列。如果目标队列是一个路由队列,那
么服务器可能把作业路由到新的队列中。如果该参数没有指定,
命令qsub会把作业脚本提交到缺省的队列中。
-l 申请资源列表 该参数指定作业脚本申请的PBS系统资源列表。
申请资源列表使用如下格式:
资源名[=[数量]][,资源名[=[数量]], …..]
例如作业希望申请在双路节点上申请5个CPU资源的情况,
则可以在脚本中如下:
#PBS –l nodes=2:ppn=2+1:ppn=1
PBS的环境变量
变 量 名 说 明
登陆SHELL继承来的变量
包括$HOME,$LANG,$LOGNAME,$PATH,$MAIL,
$SHELL和$TZ。
$PBS_O_HOST qsub提交的节点名称 $PBS_O_QUEUE qsub提交的作业的最初队列名称
$PBS_O_WORKDIR qsub提交的作业的绝对路径
$PBS_JOBID 作业被PBS系统指定的作业号
$PBS_JOBNAME 用户指定的作业名,可以在作业提交的时候用qsub –N 作业名
指定,或者在PBS脚本中加入#PBS –N 作业名。
$PBS_NODEFILE PBS系统指定的作业运行的节点名。该变量在并行机和机群中使
用。当在PBS脚本中用#PBS –l nodes=2:ppn=2指定程序运行的
节点数时,可以使用$PBS_NODEFILE在脚本中引用PBS系统 指定的作业运行的节点名。比如:
#PBS –l nodes=2:ppn=2
mpirun –np 4 –machinefile $PBS_NODEFILE 程序名
$PBS_QUEUE PBS脚本在执行时的队列名
PBS脚本举例
# 这是一个串行作业脚本的例子 #PBS -N test
#PBS -l nodes=1:ppn=1
cd $HOME/test/
./a.out $HOME/result/a.result
# 这是一个并行作业脚本的例子 #PBS -N vasp_job
#PBS -l nodes=2:ppn=8
#PBS -q low
echo This jobs is $PBS_JOBID@$PBS_QUEUE
cd $PBS_O_WOR
文档评论(0)