转载:http://www.zilhua.com/2222.html

http://gridscheduler.sourceforge.net/htmlman/

SGE作业调度系统的简介

一、常见的几种作业调度系统

Condor是一个资源管理和作业调度系统,是来自Wisconsin-Madison大学的研究项目。充分利用工作站的空闲时间是Condor的最显著特征。Condor管理的机群由网络中的工作站组成,工作站可以自愿加入或退出。Condor监测网络中所有工作站的状态,一旦某台计算机被认为空闲,便把它纳入到资源池中。在资源池中的工作站被用来执行作业。

Sun网格引擎(Sun Grid ,SGE)是一种来自于SUN Microsystem的分布式资源管理和调度系统,它用来在基于UNIX的计算环境中优化软件和硬件资源的使用。SGE能用于查找资源池内的闲置资源并利用这些资源;它同样用于通常的一些事务中,例如管理和调度作业到可用资源中。

负载共享设施(Load Sharing Facility,LSF)是由加拿大平台计算公司研制与开发的,由Toronto大学开发的Utopia系统发展而来。在使用范围上,LSF不仅用于科学计算,也用于企业的事务处理。功能上,除了一般的作业管理特性外,它还在负载平衡、系统容错、检查点操作、进程迁移等方面作了很好的努力,并力图使之实用化。

便携式批处理系统(Portable Batch System,PBS)是一个资源管理和调度系统,它接受批处理作业(具有控制属性的shell脚本),保留和保护作业直到它开始运行。因为一个批处理作业是一个无需用户干预的,在计算机系统后台运行的程序,在批处理作业运行过程中,用户无法实时地得到作业运行结果,所以PBS只能在作业执行后,将作业结果返回给提交者。目前,PBS包含开源免费的OpenPBS、商业付费的PBS Pro、Torque三种分支。

二、SGE 常见指令

  1. qsub 提交任务
-cwd #从当前工作路径运行作业
-wd working_dir #定义工作目录
-o  path 定义标准输出文件路径、文件名
-e  path #定义标准错误输出文件路径、文件名
-j y[es]|n[o] #定义作业的标准错误输出是否写入到输出文件中
-now y[es]|n[o] #立即执行作业
-a date_time #作业开始运行时间
-b y[es]|n[o] #指定运行程序是二进制文件还是脚本文件,默认n
-m b|e|a|s|n #定义邮件发送规则。
b:作业开始时发送。e:作业结束时发送。a:作业失败时发送 s:作业挂起时发送。n:不发送
-M user[@host] #定义邮件地址
-l resource=value #表明作业运行所需要的资源。【-l arch=solaris64,h_vmem=750M,permas=1】
-N job_name #重命名作业名
-q queue_name #定义作业运行队列
-S shell_path #指定运行Shell环境
-P project_name #定义项目名称,前提是存在该项目
-p priority #定义优先级,-1023 到 1024 , 默认值0
-r y[es]|n[o] #定义作业失败后是否重新运行 -
v variable #定义环境变量
-dl date_time #定义作业到期时间,在作业到期时间之前,作业的优先级会逐步提高,直到管理员指定的最高级别。

举个栗子:

qsub –cwd  -l  h=compute-1-1, h_vmem=5G,p=4  -q all.q work.sh

其中:

-cwd 在当前工作目录;

-l 资源申请/限制,用逗号隔开

-q 申请队列

关于资源限制域,可以通过如下指令查看:qconf -sc

下面列举一些常见的关键字:

#name shortcut type relop default urgency define
cpu cpu DOUBLE >= 0 0 cpu nums
h_vmem h_vmem MEMORY <= 0 0 The per-job maximum memory limit in bytes.
hostname h HOST == NONE 0 host name
mem_free mf MEMORY <= 1g 0 MEM_NEEDED is the amount of memory (in megabytes M, or gigabytes G) that your job will require
num_proc p INT <= 1 0 process number
qname q RESTRING == NONE 0 quene name
s_data s_data MEMORY <= 0 0 The per-process maximum memory limit in bytes.
tmpdir tmp RESTRING == NONE 0 tmp dir
virtual_free vf MEMORY <= 1g 0 The per-job maximum memory limit, dynamically
  1. qstat 查看任务状态

qstat -u username  查看某个用户的任务

qstat -u \* 查看所有用户的任务

qstat -j jobID 查看某个任务的详细信息

qstat -f 查看用户自己在每个节点的任务情况

qstat -q all.q -u \* 查看某个队列下所有任务

qstat -q all.q@node1 -u \* 查看某个队列的某一节点下所有任务

  1. qdel 删除任务

qdel [ -f ]  [ -help ] [-u wc_user_list] [ wc_job_range_list ] [ -t task_id_range ]

qdel job_id 删除job

qdel -u usrname 删除用户的所有任务

  1. qhold 挂起任务

qhold job_id

qhold -u \* 挂起所有用户的任务

  1. qalter更改任务属性

qalter [ options ] wc_job_range_list [ -- [ command_args ]]

指令和qsub差不多,不多介绍了。

16、SGE作业调度系统的简介的更多相关文章

  1. 集群SGE作业调度系统

    目录 0. 一些基本概念 1. 常见的几种资源管理和调度系统 2. SGE常见指令 2.1 提交任务 2.2 查看任务 2.3 删除任务 2.4 挂起/恢复任务 2.5 更改任务属性 0. 一些基本概 ...

  2. Sun Grid Engine (SGE)大型集群作业调度系统

    Oracle Grid Engine 作业调度系统的简介(目前为止我用过PBS和SGE) SGE作业调度系统学习笔记 SGE作业调度 USE of Sun Grid Engine(SGE) 待续~

  3. Python使用multiprocessing实现一个最简单的分布式作业调度系统

    Python使用multiprocessing实现一个最简单的分布式作业调度系统介绍Python的multiprocessing模块不但支持多进程,其中managers子模块还支持把多进程分布到多台机 ...

  4. Linux系统入门简介<1>

    linux系统入门简介 我们为什么要学习Linux? 在介绍Linux的历史前,我想先针对大家如何对Linux的发音说一下.我发现我身边的朋友对Linux的发音大致有这么几种: "里那克斯& ...

  5. LoadRunner系统架构简介

    1.LoadRunner系统架构简介 LoadRunner是通过创建虚拟用户来代替真实实际用户来操作客户端软件比如Internet Explorer,来向IIS.Apache等Web服务器发送HTTP ...

  6. iOS系统版本简介

    iOS系统版本简介 ⽬目前iOS设备所⽀支持的最主流操作系统是iOS6,⼤大概占了93%,⽽而使 ⽤用iOS5的iOS设备⼤大概占6%,剩下的只有1%.( 根据苹果的官⽅方数据 ) 从iOS1到现在的 ...

  7. SQL Server 系统表简介

    SQL Server 系统表简介 系统目录是由描述SQL Server 系统的数据库.基表.视图和索引等对象的结构的系统表组成.SQL Server 经常访问系统目录,检索系统正常运行所需的必要信息. ...

  8. SQL Server数据库存在判断语句及系统表简介 转

    Transact-SQL Exists Sentences--判断数据库是否存在IF EXISTS(SELECT * FROM master.sysdatabases WHERE name=N'库名' ...

  9. 树莓派Ubuntu 16.04 MATA系统 修改用户文件夹名后,提示configure it with blueman-service

    自从修改了树莓派的Ubuntu 16.04 MATA 系统的 /home/ 下的用户文件夹名后,使用vncserver远程操作,看到桌面每次都提示 Configured directory for i ...

随机推荐

  1. python cookbook 迭代器与生成器

    代理迭代 a = [1, 2, 3] for i in iter(a): print(i) for i in a.__iter__(): print(i) 这里的两个方法是一样的,调用iter()其实 ...

  2. 【九】MongoDB管理之安全性

    要保证一个安全的MongoDB运行环境,DBA需要实施一些控制保证用户或应用程序仅仅访问它们需要的数据.这些措施包括但不限于: 认证机制 基于角色的访问控制 加密 审计 一.认证机制 认证是验证客户端 ...

  3. Memory Layout of C Programs

    Memory Layout of C Programs   A typical memory representation of C program consists of following sec ...

  4. jquery详解图片平滑滚动

    jquery详解图片平滑滚动 随便写了个DOM,没有美观性,见谅 原理: 1.定义两组ul列表放图,第一个ul放5张图,第二个ul为空 2.为什么要用两个ul?因为要用到jQuery的克隆方法clon ...

  5. CSS控制表格嵌套

    网页设计应用中,当我们不能完全放弃表格的使用时,为了达到预期的效果,不免要用到表格嵌套(特别是多层嵌套)方式来进行布局.可能很多同仁都遇到过这样的问题,为了达到显示效果要为每一个(每一层)的表格写不同 ...

  6. Spring源码分析_01_ idea搭建spring源码阅读环境

    二.参考资料 1.Intellij Idea如何导入spring源码

  7. 关于MFC的DLL调用方法问题

    参考资料: 一.dll导出方式: MFC的DLL函数导出方法有两种:一种是通过模块定义文件DEF文件:另一种是在导出函数前加_declspec(dllexport). 1.def文件方法: 只需要在E ...

  8. gcc 4.8.5安装

    在利用张乐博士的最大熵模型工具包(Maximum Entropy Modeling Toolkit for Python and C++)和条件随机场的经典工具包CRF++(CRF++: Yet An ...

  9. ffmpeg 翻译文档

    ffmpeg 翻译文档 (参考源文件ffmpeg-all 包含重要组件) 目录: 1 命令语法 2 描概览 3 详细说明 4 流的选择(指定) 5 选项 技提示(原版已废弃) 6 例子 7 语法 8 ...

  10. HDU5768Lucky7(中国剩余定理+容斥定理)(区间个数统计)

    When ?? was born, seven crows flew in and stopped beside him. In its childhood, ?? had been unfortun ...