Slurm基本用法(入门必看)

本文描述Linux集群的基本Slurm用法。1.一个简单的Slurm脚本$catslurm-job.sh#!/usr/bin/envbash#SBATCH-oslurm.sh.out#SBATCH-pdefqecho”Inthedirectory:`pwd`”echo”Astheuser:`whoami`”echo”writethis…

大家好,又见面了,我是你们的朋友全栈君。

本文描述Linux集群的基本Slurm用法。

1. 一个简单的Slurm脚本

Slurm基本用法(入门必看)

2. 提交作业

Slurm基本用法(入门必看)

3. 列出作业

Slurm基本用法(入门必看)

4. 获取作业细节

Slurm基本用法(入门必看)

5. Suspend a job (root only)

Slurm基本用法(入门必看)

6. Resume a job (root only)

Slurm基本用法(入门必看)

7. Kill a job

用户可以杀死自己的作业,root可以杀死任何作业。

Slurm基本用法(入门必看)

8. Hold a job

$ squeue
  JOBID PARTITION     NAME     USER  ST       TIME  NODES NODELIST(REASON)
    139      defq   simple  rstober  PD       0:00      1 (Dependency)
    138      defq   simple  rstober   R       0:16      1 atom01
$ scontrol hold 139
$ squeue
  JOBID PARTITION     NAME     USER  ST       TIME  NODES NODELIST(REASON)
    139      defq   simple  rstober  PD       0:00      1 (JobHeldUser)
    138      defq   simple  rstober   R       0:32      1 atom01

9. Release a job

$ scontrol release 139
$ squeue
  JOBID PARTITION     NAME     USER  ST       TIME  NODES NODELIST(REASON)
    139      defq   simple  rstober  PD       0:00      1 (Dependency)
    138      defq   simple  rstober   R       0:46      1 atom01

10. List partitions

$ sinfo
PARTITION AVAIL  TIMELIMIT  NODES  STATE NODELIST
defq*        up   infinite      1  down* atom04
defq*        up   infinite      3   idle atom[01-03]
cloud        up   infinite      2  down* cnode1,cnodegpu1
cloudtran    up   infinite      1   idle atom-head1

11. 作业依赖

首先提交一个简单的作业:

#!/usr/bin/env bash

#SBATCH -p defq
#SBATCH -J simple

sleep 60

Submit the job

$ sbatch simple.sh
Submitted batch job 149

现在,我们将提交另一个依赖于先前作业的作业。 有许多方法可以指定依赖条件,但是“singleton ”是最简单的。 Slurm -d singleton 参数告诉Slurm在之前所有具有相同名称的作业完成之前不要调度此作业。

$ sbatch -d singleton simple.sh
Submitted batch job 150
$ squeue
  JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON)
    150 defq   simple  rstober  PD  0:00  1 (Dependency)
    149 defq   simple  rstober   R  0:17  1 atom01

前提作业完成后,将调度从属作业。

$ squeue
  JOBID PARTITION NAME USER ST TIME  NODES NODELIST(REASON)
    150 defq   simple  rstober   R   0:31  1 atom01

PS: 

Slurm China社区,群里有很多大牛,感兴趣的同学可以加入。二维码失效了可以看评论区留言加我V。

Slurm基本用法(入门必看)

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/124647.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • NHibernate教程

    NHibernate教程 一、NHibernate简介在今日的企业环境中,把面向对象的软件和关系数据库一起使用可能是相当麻烦、浪费时间的。NHibernate是一个面向.Net环境的对象/关系数据库映射工具。对象/关系数据库映射(object/relationalmapping(ORM))这个术语表示一种技术,用来把对象模型表示的对象映射到基于SQL的关系模型数据结构中去。NHibernate除了能将一张表映射为

    2022年7月12日
    19
  • 互斥体与互锁 <第五篇>

    互斥体与互锁 <第五篇>

    2021年8月23日
    56
  • 【OpenGrok代码搜索引擎】一、OpenGrok简介

    【OpenGrok代码搜索引擎】一、OpenGrok简介OpenGrok是一个快速的、非常有用的代码搜索和交叉引用引擎。它由Java语言编写而成。它可以帮助你快速的搜索,交叉引用和索引你的代码树。它可以很好的识别多种应用程序文件格式和代码版本控制工具。

    2022年4月30日
    43
  • vue子组件向父组件传值的三种方式_vue子组件修改父组件值

    vue子组件向父组件传值的三种方式_vue子组件修改父组件值如需了解老子怎么控制儿子的,传送门:子组件child.vue<template><div><button@click=”$emit(’emit’,’方式1:传参给父组件第1个参数’,’方式1:传参给父组件第2个参数’,’…’)”>方式1:通过emit传参给父组件(推荐此方式)</button><button@click=”emit(‘方式2:传参给父组件第1个参数’,’方式2…

    2022年10月2日
    0
  • Python攻防-暴力激活成功教程附近局域网WIFI密码「建议收藏」

    Python攻防-暴力激活成功教程附近局域网WIFI密码「建议收藏」文章目录前言无图形界面WIFI爆破脚本优化图形化界面简单版UIUI升级版总结前言本文将记录学习下如何通过Python脚本实现WIFI密码的暴力激活成功教程,从而实现免费蹭网。无图形界面先来看看没有图形界面版的爆破脚本。WIFI爆破importpywififrompywifiimportconstimporttimeimportdatetime#测试连接,返回链接结果defwifiConnect(pwd):#抓取网卡接口wifi=pywifi

    2022年8月22日
    6
  • platform device和platform driver

    platform device和platform driver从Linux2.6起引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver。Linux中大部分的设备驱动,都可以使用这套机制,设备用Platform_device表示,驱动用Platform_driver进行注册。Li

    2022年7月24日
    12

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号