Sbatch, Salloc提交任务相关

news2024/11/20 12:39:28
  1. salloc

申请计算节点,然后登录到申请到的计算节点上运行指令;
salloc的参数与sbatch相同,该部分先介绍一个简单的使用案例;随后介绍一个GPU的使用案例;最后介绍一个跨节点使用案例;
首先是一个简单的例子;
申请一个节点6个核心,并跳转到该节点上运行程序;

在这里插入图片描述在这里插入图片描述2. Slurm 作业调度系统使用指南
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

4.1 参数说明

以下所有参数在 srun, sbatch, salloc 中均可以使用。更多参数见srun --help, sbatch --help, salloc --help。

-c, --cpu-per-task=NCPUs        #指定每个进程使用核数,不指定默认为1
-e, --error=error_filename      #指定错误文件输出
-J, --job-name=JOBNAME          #指定作业名称
--mail-type=END/FAIL/ALL        #邮件提醒,可选:END,FAIL,ALL
--mail-user=mail_address        #通知邮箱地址
-n, --ntask=NTASKs #指定总进程数;不使用cpus-per-task,可理解为进程数即为核数 
--ntasks-per-node=N #指定每个节点进程数/核数,使用-n参数后变为每个节点最多运行的进程数
-N, --nodes=N                   #指定节点数量
-o, --output=out_filename       #指定输出文件输出
-p, --partion=debug             #指定分区
-t, --time=dd-hh:mm:ss          #作业最大运行时间
-w, --nodelist=node[1,2]        #指定优先使用节点,不可与避免节点冲突
-x, --exclude=node[3,5-6]       #指定避免使用节点,不可与优先节点冲突
--mem-per-cpu=MB                #指定计算cpu最大占用内存大小

4.2 交互模式 Srun
交互式作业提交,提交命令后,等待作业执行完成之后返回命令行窗口。
Demo of srun

srun -J JOBNAME -p debug -N 2 -c 1 -n 32 --ntasks-per-node=16 -w node[3,4] -x node[1,5-6] --time=dd-hh:mm:ss --output=file_name --error=file_name --mail-user=address --mail-type=ALL mpirun -n 64 ./iPic3D ./inputfile/test.inp

同 Demo of sbatch
4.3 批处理模式 Sbatch
批处理作业是指用户编写作业脚本,指定资源需求约束,提交后台执行作业。提交批处理作业的命令为 sbatch,用户提交命令即返回命令行窗口,但此时作业在进入调度状态,在资源满足要求时,分配完计算结点之后,系统将在所分配的第一个计算结点(而不是登录结点)上加载执行用户的作业脚本。批处理作业的脚本为一个文本文件,脚本第一行以 “#!” 字符开头,并制定脚本文件的解释程序,如 sh,bash。
运行 sbatch filename 来提交任务;计算开始后,工作目录中会生成以 slurm 开头的.out 文件为输出文件(不指定输出的话)。
Demo of sbatch
保存在运行程序目录下即可,文件名随意(可以无后缀,内容文本格式即可);作业提交命令sbatch filename

#!/bin/bash                     %指定运行shell
#提交单个作业
#SBATCH --job-name=JOBNAME      %指定作业名称
#SBATCH --partition=debug       %指定分区
#SBATCH --nodes=2               %指定节点数量
#SBATCH --cpus-per-task=1       %指定每个进程使用核数,不指定默认为1
#SBATCH -n 32       %指定总进程数;不使用cpus-per-task,可理解为进程数即为核数
#SBATCH --ntasks-per-node=16    %指定每个节点进程数/核数,使用-n参数(优先级更高),变为每个节点最多运行的任务数
#SBATCH --nodelist=node[3,4]    %指定优先使用节点
#SBATCH --exclude=node[1,5-6]   %指定避免使用节点
#SBATCH --time=dd-hh:mm:ss      %作业最大运行时长,参考格式填写
#SBATCH --output=file_name      %指定输出文件输出
#SBATCH --error=file_name       %指定错误文件输出
#SBATCH --mail-type=ALL         %邮件提醒,可选:END,FAIL,ALL
#SBATCH --mail-user=address     %通知邮箱地址

source /public/home/user/.bashrc   #导入环境变量文件

mpirun -n 32 ./iPic3D ./inputfiles/test.inp #运行命令

同 Demo of srun
4.4 分配模式 Salloc
结点资源抢占命令。该命令支持用户在提交作业前,抢占所需计算资源(此时开始计算所用机时)。需请求资源,然后在获取节点后登录到计算节点。目前作者使用设备可直接登录计算节点,暂未使用。 sacct 命令也未启用,暂无说明,有需要可在文末参考网页查看。
5. Scontrol
5.1 信息查看

scontrol show job JOBID         #查看作业的详细信息
scontrol show node              #查看所有节点详细信息
scontrol show node node-name    #查看指定节点详细信息
scontrol show node | grep CPU   #查看各节点cpu状态
scontrol show node node-name | grep CPU #查看指定节点cpu状态

5.2 更新作业
在任务开始前却发现作业的属性写错了(例如提交错了分区,修改名字),取消了重新排队似乎很不划算。如果作业恰好 没在运行,我们是可以通过 scontrol 命令来更新作业的属性

scontrol update jobid=JOBID ... #...为下面参数
reqnodelist=<nodes>
reqcores=<count>
name=<name>
nodelist=<nodes>
excnodelist=<nodes>
numcpus=<min_count-max_count>
numnodes=<min_count-max_count>
numtasks=<count>
starttime=yyyy-mm-dd
partition=<name>
timelimit=d-h:m:s
mincpusnode=<count>
minmemorycpu=<megabytes>
minmemorynode=<megabytes>

作业调度系统 · 北京大学高性能计算使用指南
SLURM 使用参考
Slurm 作业调度系统 — 上海交大超算平台用户手册 文档
SLURM使用基础教程 - 曙光先进计算
Slurm User Guide for Great Lakes | ITS Advanced Research Computing

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1294220.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于springboot实现的仿天猫商城项目

一、系统架构 前端&#xff1a;jsp | js | css | jquery 后端&#xff1a;springboot | mybatis-plus 环境&#xff1a;jdk1.7 | mysql | maven 二、代码及数据库 三、功能介绍 01. web端-首页 02. web端-商品查询 03. web端-商品详情 04. web端-购物车 05. web端-订单…

【网络安全】-《网络安全法》制定背景和核心内容

文章目录 1. 背景介绍1.1 数字时代的崛起1.2 中国网络安全形势 2. 《网络安全法》核心内容2.1 法律适用范围2.2 个人信息保护2.3 关键信息基础设施保护2.4 网络安全监管和应急响应2.5 网络产品和服务安全管理2.6 法律责任和处罚 3. 法律的意义和影响3.1 维护国家安全3.2 保护个…

《使用ThinkPHP6开发项目》 - 设置项目环境变量

《使用ThinkPHP6开发项目》 - 安装ThinkPHP框架-CSDN博客 在上一编我们讲了ThinkPHP6框架的创建&#xff0c;创建完成ThinkPHP6框架后&#xff0c;我们这里就可以开始设置我们的环境变量了。 安装完成ThinkPHP6框架生成的项目文件 修改项目配置我们修改项目config文件夹里的对…

<JavaEE> 多线程编程中的“等待和通知机制”:wait 和 notify 方法

目录 一、等待和通知机制的概念 二、wait() 方法 2.1 wait() 方法的使用 2.2 超时等待 2.3 异常唤醒 2.4 唤醒等待的方法 三、notify() 方法 四、notifyAll() 方法 五、wait 和 sleep 的对比 一、等待和通知机制的概念 1&#xff09;什么是等待和通知机制&#xff1f…

2023年4K投影仪怎么选?极米H6 4K高亮版怎么样?

随着人们生活水平的不断提升&#xff0c;投影仪也逐渐成为了家家户户的必备家居好物。近十年来&#xff0c;中国投影仪市场规模增长数倍&#xff0c;年均增长率大幅提高。从近10年的发展趋势来看&#xff0c;投影仪行业处于高速发展期。 此前&#xff0c;极米科技推出的极米H6…

crmeb本地开发配置代理

crmeb 是一个开源的商城系统&#xff0c; v5 版本是一个前后端分离的项目&#xff0c; 我们从git仓库中下载下来的是一个文件夹&#xff0c;其结构是这样的 我的系统没有使用docker &#xff0c;使用的是 laragon 的系统 所以首先我们要在 nginx 中配置 之后&#xff0c; 我们…

IDEA使用git从远程仓库获取项目

将地址填入url中 然后直接clone就行

Ant Design Vue 年选择器

文章目录 参考文档效果展示实现过程 参考文档 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; DatePicker 日期选择框 大佬&#xff1a;搬砖小匠&#xff08;Ant Design vue 只选择年&#xff09; 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案…

C语言——指针(五)

&#x1f4dd;前言&#xff1a; 上篇文章C语言——指针&#xff08;四&#xff09;更加深入的介绍了不同类型指针的特点&#xff0c;这篇文章主要想记录一下函数与指针的结合运用以及const和assert关于指针的用法&#xff1a; 1&#xff0c;函数与指针 2&#xff0c;const 3&am…

十五届蓝桥杯分享会(一)

注&#xff1a;省赛4月&#xff0c;决赛6月 一、蓝桥杯整体介绍 1.十四届蓝桥杯软件电子赛参赛人数&#xff1a;C 8w&#xff0c;java/python 2w&#xff0c;web 4k&#xff0c;单片机 1.8w&#xff0c;嵌入式/EDA5k&#xff0c;物联网 300 1.1设计类参赛人数&#xff1a;平…

STL(一)(pair篇)

1.pair的定义和结构 在c中,pair是一个模板类,用于表示一对值的组合它位于<utility>头文件中 pair的定义如下: template<class T1, class T2> struct pair{T1 first; //第一个值T2 second; //第二个值//构造函数pair();pair(const T1&x,const T2&y);//比较…

域名与SSL证书

域名是互联网上的地址标识符&#xff0c;它通过DNS&#xff08;Domain Name System&#xff09;将易于记忆的人类可读的网址转换为计算机可以理解的IP地址。当用户在浏览器中输入一个网址时&#xff0c;实际上是通过DNS解析到对应的服务器IP地址&#xff0c;从而访问到相应的网…

诚邀莅临,共商发展丨“交汇未来”行业大模型高峰论坛

大会简介 今年以来&#xff0c;以ChatGPT为典型代表的大模型在全球数字科技界引起极大关注&#xff0c;其强大的数据处理能力和泛化性能使得其在各个领域都有广泛的应用前景&#xff0c;驱动千行百业的数字化转型升级&#xff0c;成为新型工业化和实体经济的重要推动力&#x…

【C语言】vfprintf函数

vfprintf 是 C 语言中的一个函数&#xff0c;它是 fprintf 函数的变体&#xff0c;用于格式化输出到文件中。vfprintf 函数接受一个格式化字符串和一个指向可变参数列表的指针&#xff0c;这个列表通常是通过 va_list 类型来传递的。vfprintf 函数的主要用途是在需要处理不定数…

数据分析基础之《matplotlib(5)—直方图》

一、直方图介绍 1、什么是直方图 直方图&#xff0c;形状类似柱状图却有着与柱状图完全不同的含义。直方图牵涉统计学的概念&#xff0c;首先要对数据进行分组&#xff0c;然后统计每个分组内数据元的数量。在坐标系中&#xff0c;横轴标出每个组的端点&#xff0c;纵轴表示频…

PyQt5 - 鼠标连点器

文章目录 ⭐️前言⭐️鼠标连点器 ⭐️前言 本次设计的鼠标连点器主要是对QVBoxLayout、QHBoxLayout和QStackedWidget进行一个回顾复习&#xff0c;加深对它们的理解&#xff0c;提高运用的熟练度。 ⭐️鼠标连点器 如以下代码所示&#xff0c;设计两个QWidget控件&#xff…

【学习笔记】python仅拷贝list的值,引出浅拷贝与深拷贝

一、python 仅拷贝list的值&#xff08;来源于gpt&#xff09; 在 Python 中&#xff0c;可以使用切片或 copy() 方法来仅拷贝列表的值。 1、使用切片 a [1, 2, 3, 4, 5] b a[:] # 通过切片来拷贝 a 的值 在上面的代码中&#xff0c;我们使用切片来拷贝列表 a 的值&#xff…

Web前端 ---- 【Vue】Vuex的使用(辅助函数、模块化开发)

目录 前言 Vuex是什么 Vuex的配置 安装vuex 配置vuex文件 Vuex核心对象 actions mutations getters state Vuex在vue中的使用 辅助函数 Vuex模块化开发 前言 本文介绍一种新的用于组件传值的插件 —— vuex Vuex是什么 Vuex 是一个专为 Vue.js 应用程序开发的状态…

MDIO读写控制实验

简介&#xff1a; 以太网&#xff1a; 以太网(Ethernet)是当今现有局域网采用的最通用的通信协议标准&#xff0c; 该标准定义了在局域网中采用的电缆类型和信号处理方法。以太网的分类有标准以太网&#xff08;10Mbit/s&#xff09;、 快速以太网(100Mbit/s)和千兆以太网&am…

计算机服务器中了mkp勒索病毒怎么办,mkp勒索病毒解密数据恢复

网络技术的不断发展&#xff0c;也为网络安全带来了威胁&#xff0c;近期云天数据恢复中心的工程师陆续接到很多企业的求助&#xff0c;在本月&#xff0c;很多企业的计算机服务器遭到了mkp勒索病毒攻击&#xff0c;导致企业计算机系统瘫痪&#xff0c;无法正常工作&#xff0c…