zoukankan      html  css  js  c++  java
  • Gird Engine 是什么?


    一 Gird Engine
    Gird Engine 指的是SGE(Sun Gird Engine),是一个开源免费的batch-queuing 系统用来对分布式资源的管理。典型地他将被应用于计算机farm和高性能计算cluster,用来接收,schedule,分发和管理远程和分布式的大量的独立,并行的非交互的jobs,他也可以管理和schedule分布式资源的分配,例如处理器,内存,硬盘和软件license。简单地说就是将任务打包为job分发到计算机集中执行。
    在Sun后来被Oracle收购后,从SGE延伸的开源产品为:
    http://gridscheduler.sourceforge.net/ 

    基于SGE开发的且提供企业级服务的为UGE(Univa Gird Engine):
    当然了Oracle在收购了Sun后改名为OGE(Oracle Gird Engine)且不免费:
    其他关于SGE:

     

    二 Gird Engine 的特点
    * 多个高级的scheduling算法,从而允许基于多种策略的资源分配;
    * cluster queues;
    * job和scheduler错误冗余;
    * job checkpointing;
    * job 数组和job 任务;
    * Distributed Resource Management And Access (job API),支持perl,python,java,c++等语言;
    * 资源的保留;
    * 基于xml的状态报告;
    * 并行的job(MPI,PVM,OpenMP),使用qrsh实现可伸缩并行job的启动;
    * 使用率统计;
    * 并行的make,distmake,dmake,qmake;
    * 支持几乎所有的系统,例如*unix,windows,Mac;

     

    三 Gird Engine的架构和实例
    典型的Gird Engine cluster包含了一个master host和一个或多个execution hosts。但是也可以设置多个shadow masters作为主master的后备,当主master出问题的时候,多个shadow masters可以代替主master继续工作。所有的execution hosts安装有gird engine execution daemon, master host装有qmaster daemon, shadow mater运行了shadow daemon。qmaster用来提交和schedule job到execution hosts。

     

    使用实例参考:

    例如EDA软件公司Mentor Graphics使用Gird Engine来管理所有的regression tests。 为了测试他们的软件,他们提交数千的jobs到gird或cluster中运行。gird engine使得所有的机器能够被充分地被利用,当一个机器完成了一个测试用例的运行,gird engine将提交另一个job给他,直到所有的测试运行结束。gird engine还可以用来管理licenses。 (EDA行业对软件所运行的硬件和软件环境有统一的要求-QSC标准,所以fram中的machines的配置相同,且所有的机器使用共享的存储,所以regression tests可以在所有的机器上运行。但是windows上软件的regression tests则需要注册表等的修改,所以一般使用虚拟机farm来代替Gird Engine实现资源的充分利用。)

     

    四 sun gird engine使用

    在SGE安装和配置后,设置基本的环境变量
    SGE_ROOT
    SGE_CLUSTER_NAME
    SGE_CELL

    然后:
    qsub : 用来来提交job,job对应到一个shell脚本。
    可以使用-P来指定job的优先级,例如ilight,bnormal分别表示交互的低优先级,批处理的正常优先级。可以使用-I来指定job对机器的选择条件,例如arch=solaris64,mem_free=4g表示solaris64架构和最少4G内存。
    可以-V来将当前的环境变量导入到job的运行环境,还可以使用-e,-o来重定向输出。

    qstat : 用来查看job的状态。
    qhost : 用来查看所有的SGE中的hosts。
    qaccess : 用来查看所有的job queues和job与机器的分配关系。
    qdel 用来删除指定的job。

     

    五其他

    platform Load Sharing Facility(LSF) http://www.platform.com/
    参考:http://www.oracle.com/technetwork/oem/host-server-mgmt/twp-gridengine-overview-167117.pdf

     

    完!
  • 相关阅读:
    第23章 SEH结构化异常处理(1)_系统SEH机制
    第22章 DLL注入和API拦截(3)
    第22章 DLL注入和API拦截(2)
    第22章 DLL注入和API拦截(1)
    驾训平台数据同步实现
    socket编程 —— 非阻塞socket (转)---例子已上传至文件中
    linux tcpdump命令抓包
    VMware虚拟机克隆CentOS 6.5后网卡修改方法
    centos vi显示中文
    不关闭seLinux解决vsftpd服务本地用户不能登录问题(500 OOPS: cannot change directory:/home/*** ( 转)
  • 原文地址:https://www.cnblogs.com/itech/p/2344435.html
Copyright © 2011-2022 走看看