当前位置: 首页 > news >正文

【超算作业调度系统--LSF】

集群服务器--LSF作业调度系统使用

  • 0 Introdutction
  • 1 命令
    • 1.1 bsub--作业提交命令
      • 1.1.1 $ bqueues --查看现有队列信息;
      • 1.1.2 $lsload --查看各节点运行情况
      • 1.1.3 $bhosts --查看各节点空闲情况
      • 1.1.4 $busers --查看用户信息
      • 1.2 bsub --提交作业
      • 1.2.1 bsub OMP_NUM_THREADS 指明需要共享内存
      • 1.2.2 bsub -R 指明需要某种资源作业
      • 1.2.3 bsub -x 运行排他性运行作业
      • 1.2.4 bsub -Is 运行交互式作业
      • 1.2.5 bsub -w 满足依赖关系运行作业
      • 1.2.6 bsub -b time
    • 1.3 bjobs --查看作业排队和运行情况
    • 1.4 bkill --终止作业
    • 1.5 bstop --挂起作业
    • 1.6 bresume --继续运行刮起的作业

前天组织考试了LSF和SVN的使用,结果挂在了LSF的考试上–Failed;

0 Introdutction

LSF:是IBM公司开发的对超算集群服务器的作业统一调度系统;
主要有:

  1. 资源管理器:管理超算集群服务器的硬件资源;
  2. 队列管理器:管理当前已经提交但还未完成的作业;
  3. 作业调度器:为作业分配合适的硬件资源(计算+存储);

作用:

  1. 根据用户提交的计算作业分配相应的资源节点;
  2. 避免作业之间无序干扰,尽量让整个系统负载一致;

1 命令

概念:
登陆节点:主要用于日常操作,如提交作业、查看作业运行情况、编
辑、编译、压缩/解压缩等常用命令;
不要在登陆节点运行作业,即必须通过bsub提交作业
作业节点:即真实作业提交运算节点;

1.1 bsub–作业提交命令

所有需要运行的作业均必须通过作业提交命令bsub提交;

1.1.1 $ bqueues --查看现有队列信息;

会看到列名:QUEUE_NAME PRIO. STATUS
2.$ bqueues -l dfbdv
进行查看队列的详细信息;
CPU计算队列:
GPU计算队列:
Principle:非GPU作业不得使用GPU计算队列**
申请核数尽量以 8或者其他的倍数,以为能独占单个节点,避免作业间相互干扰;
3.

1.1.2 $lsload --查看各节点运行情况

1.$ lsload
ut表示利用率
2.$ lsload node --查看某节点运行情况;

1.1.3 $bhosts --查看各节点空闲情况

类似lsload 命令

1.1.4 $busers --查看用户信息

1.2 bsub --提交作业

bsub [options] command [arguments]
command之前的options:设置队列、CPU核数等LSF的选项
command之后的arguments:设置具体作业的可执行程序本身所需要
的参数;
For understanding:
为了用户作业间不相互干扰,申请的核数最好为系统节点内CPU核
数的整数倍,以便同一个作业占据整个节点

比如对每个节点为8核的系统,申请核数为8的整数倍,节点核数
为12的系统,申请核数为12的整数倍
曙光TC4600百万亿次超级计算系统:每个节点24 CPU核
ChinaGrid高性能计算集群:每个节点16 CPU核
联想1800和7000G GPU集群:每个节点8 CPU核

1.2.1 bsub OMP_NUM_THREADS 指明需要共享内存

需求:OpenMP等共享内存作业提交,则需要保证在同一个节点上运行;程序启动前利用OMP_NUM_THREADS设定指定的线程数,一般应
与申请的核数一致;-R ‘‘span[hosts=1]’’保证在同一个节点内。
bsub -q normal -n 8 -R ‘‘span[hosts=1]’’ OMP_NUM_THREADS=8 exec

1.2.2 bsub -R 指明需要某种资源作业

1.2.3 bsub -x 运行排他性运行作业

排他性运行在运行期间,不允许其余的作业提交到运行此作业的节
点,并且只有在某节点没有任何其余的作业在运行时才会提交到此
节点上运行;
另外使用排他性运行时,哪怕只使用某节点内的一个CPU核,也将按
照此节点内的所有CPU核数进行机时计算;

1.2.4 bsub -Is 运行交互式作业

即运行期间手动输入参数;

1.2.5 bsub -w 满足依赖关系运行作业

done(job_ID |“job_name” …):作业结束时状态为DONE时运行
ended(job_ID | “job_name”):作业结束时状态为DONE或EXIT时运行
exit(job_ID | “job_name” [,[operator] exit_code]):作业结束时状态
为EXIT,且退出代码满足一定条件时运行
external(job_ID | “job_name”, “status_text”):作业状态变为某状态时运
行,如变为SUSP
· · · · · ·
支持的条件之间的条件表达式:&&(和)、||(或)、!(否)
支持的条件内的条件算子:>、>=、<、<=、==、!=
Eg: :bsub -w ‘‘done(1456)’’

1.2.6 bsub -b time

利用-b [[year:][month:]day:]hour:minute可以使得新提交的作业在特
定时间运行;

1.3 bjobs --查看作业排队和运行情况

利用bjobs可以查看作业的运行情况;
bjobs -l job_id. 查看详细信息;
bjobs -p 查看作业仍在排队等待的原因;

1.4 bkill --终止作业

利用bkill命令可以终止某个运行中或排队中的作业;

1.5 bstop --挂起作业

加 job_id 即可;

1.6 bresume --继续运行刮起的作业

接 job_id即可;

http://www.lryc.cn/news/175426.html

相关文章:

  • L1-011 A-B分数 20
  • PHPword解析内容支撑
  • 回归预测 | MATLAB实现RUN-XGBoost龙格库塔优化极限梯度提升树多输入回归预测
  • LLM-TAP随笔——语言模型训练数据【深度学习】【PyTorch】【LLM】
  • Linux- open() lseek()
  • Halcon Tuple相关算子(一)
  • 基于图像形态学处理的路面裂缝检测算法matlab仿真
  • PY32F003F18之窗口看门狗
  • SpingBoot:整合Mybatis-plus+Druid+mysql
  • 计算机视觉与深度学习-经典网络解析-VGG-[北邮鲁鹏]
  • 入门级制作电子期刊的网站推荐
  • 软件测试内容整理
  • UniAccess Agent卸载
  • 【C++】C++11——构造、赋值使用条件和生成条件
  • 【LeetCode热题100】--56.合并区间
  • opencv dnn模块 示例(17) 目标检测 object_detection 之 yolo v5
  • 关于安卓SVGA浅尝(一)svgaplayer库的使用
  • 【LFU】一文让你弄清 Redis LFU 页面置换算法
  • Python爬虫实战:用简单四步爬取小红书图片
  • 行为型模式-解释器模式
  • Linux系统编程(五):信号
  • 学习路之工具--SecureCRT的下载、安装
  • 软件定义网络-OpenvSwitch
  • Android Update Engine 分析(二十三)如何在升级后清除用户数据?
  • 分享从零开始学习网络设备配置--任务3.7 使用动态路由RIPv2实现网络连通
  • 游戏录屏软件推荐,教你录制高清游戏视频
  • 四川眼科医院孙丰源教授团队为患者拔除1.4cm长“眼中钉”
  • PHP 初学 GO 学习笔记
  • 前端制作
  • 扩散模型:DDPM代码的学习(基于minist数据集)