weiqi7777

bsub命令

0
阅读(8737)

一、bsub

bsub,提交给lsf作业的命令。

命令格式
bsub[options]command[argument]

bsub-packjob_submission_file

-q选择队列

-i指定输入文件

-I交互模式,此时终端不能输入

-o指定输出文件,作业提交后标准输出的信息会保存到这个文件中。

-e指定输出文件,作业提交后标准错误的信息会保存到这个文件中。

-n指定作业需要的CPU

-J作业的名字

-w‘dependecy_expression’,提交作业前,指定操作。

操作有:done

ended–e “ended(aaaa*)”表示作业名中有aaaa的作业,完成之后才可以提交作业

exit

-W限定作业运行时间

-K提交作业,并且等待作业完成。当提交作业后,终端打印“waiting for dispath”。当作业完成后,终端打印“job is finished”。作业没有完成,不能提交新的作业。

%J,可表示作业号

LSF(load sharing facility)是分布资源管理的工具,用来调度、监视、分析联网计算机的负载。

目的:

通过集中监控和调用,充分共享计算机的CPU、内存、磁盘、license等资源

一组安装了LSF软件的计算机组成了一个clustercluster内的资源统一监控和调度。

clip_image002

server hostcluster内提交和执行job的计算机

client hostcluster内仅仅提交job的计算机

JOB

-提交给LSF的命令

-LSF负责调度、控制、跟踪job

命令

lbjobs:查看系统的job

lbsub:提交作业

lbhist:查看作业历史

lbkillkill一个作业

bqueues命令,可以查看队列情况

clip_image004

参数

解释

QUEUE_NAME

队列的名字

PRIO

队列的优先级,数字越大,优先级越高

STATUS

状态

Open:Active :表示已激活,可使用

Closed:Active表示已关闭,不可使用

MAX

队列对应的最大CPU核数

l表示无限

JL/U

单个用户同时可以使用的CPU核数

NJOBS

排队、运行和被挂起的总作业所占CPU核数

PEND

排队中的作用所需CPU核数

RUN

运行中的作业所占CPU核数

SUSP

被挂起的作业所占CPU核数

bsub提交的作业,有一个JOBIDJOB_NAMEJOBID不可设置,JOB_NAME可以设置。

bsub命令的–J参数,可以指定JOB_NAME

clip_image006

二、例子

一个c程序,如下所示:

clip_image007

编译生成a.out可执行文件,然后将该文件通过bsub提交,执行。

通过busb命令,将该a.out可执行文件,提交8次作业。-J参数,执行作业的名字。-o参数指定lsf执行该可执行文件的输出,保存到指定文件。

最后要等待这些作业完成,通过以下bsub命令。

bsub –I –w “ended(aaaaaaaaaa*)”echo “a.out finished”

提交一个作业,只是打印信息:

l-I参数,表示和终端交互,后续提交的任务要等这个任务完成后,才可以提交

l-w ”ended..”指定该作业要等作业名中有aaaaaaaa的作业都完成后,才可以提交。

clip_image009

执行这些命令的打印信息。每个任务有一个JOB_ID

clip_image011

执行的过程中,通过bjobs命令,可以查看作业情况。对于最后一个任务,状态是PEND的,因此要等之前的任务都完成之后,才可以执行。

clip_image013

Baidu
map