发布网友 发布时间:2022-12-10 03:04
共1个回答
热心网友 时间:2024-10-24 12:22
Sun网格引擎(Sun Grid, SGE)是一种来自于 SUN Microsystem的分布式资源管理和调度系统,它用来在基于UNIX的计算环境中优化软件和硬件资源的使用。SGE能用于查找资源池内的闲置资源并利用这些资源(将用户投递的任务进行排队,然后将任务交给能够运行的结算节点执行);它同样用于通常的一些事务中,例如管理和调度作业到可用资源中。当然,作业调度系统的种类有很多,除了SEG,常见的还有Condor、负载共享设施(LSF)、便携式批处理系统(PBS)。
SGE的工作流程可以分为四步:
主控节点:主控节点是所有集群活动的中心,控制SGE系统组件。一般情况,主控节点也是管理节点和提交节点。
执行节点:执行节点有权限执行作业的系统,执行节点有附加到它上面的队列。
管理节点:管理节点有权运行SGE系统的任何类型的管理操作。
提交节点:提交节点只允许用户提交和控制批处理作业。具体说,用户登陆后,可以使用 qsub 命令提交作业,使用 qstat 命令监控作业状态。
管理人员:管理人员拥有完全操作SGE系统的能力。默认情况,管理主机的超级用户都具有管理人员权限。
操作员:操作员可以执行很多管理人员命令,但是进行配置更改除外。
拥有者:队列拥有者可以暂停或者启动其拥有的队列,还可以暂停或启动其拥有的队列中的作业。队列拥有者没有其他管理权限。
用户:用户有一定的访问权限。
其中:
qconf -sel 显示“执行主机”列表
qconf -sh 显示“管理主机”列表
qconf -ss 显示“提交任务主机”列表
qconf -sql 显示“集群队列”列表
qconf -spl 显示“集群并行环境”列表
使用 qsub 进行任务投递时需要添加参数来调整 qsub 的行为。下面只列几个常用的参数。
任务解释:使用 bowtie 将 A_1.fq 和 A_2.fq 和参考基因组比对生成bam文件,然后再使用 samtools sort 将bam排序获得 A.bam 。
qsub 命令解释:申请8个线程并使用openmpi进行运算(同时申请内存25G),这里定义任务名称为 A.bt2
编辑shell脚本 test.sh ,内容如下
投递时直接 qsub test.sh
qstat 是一个非常有用的任务查询命令
qselect 的语法: qselect [options]
常用参数:
qselect -U 查看指定用户的可用队列节点
qselect -q 查看指定队列有哪些可用节点
attention: qmod -s 和 qmod -us 还可以用于暂停和启动队列,
前提是拥有对应的队列管理权限。
qalter 语法: qalter [参数] 修改内容 jobid
常用参数:
-q :修改指定队列
-l :修改*资源
-N :修改指定作业名称
-P :修改指定项目名称
这里以修改指定作业名称 qalter -N 举例吧:
qdel 常用的参数:
-f 强制删除
-u 删除指定用户的作业