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

Slurm运行pytorch深度学习模型(小白版)

Slurm背景: 

Slurm 是一种开源的作业调度系统,它用于管理大型计算集群中的计算资源和作业。你可以把它想象成一个“交通管制员”,负责管理计算集群中的各种任务,确保它们按照用户设定的规则有序地执行。

Slurm 的主要功能包括:

  1. 作业调度和管理:Slurm 可以根据用户提交的作业需求,有效地分配计算资源,确保作业能够尽快地得到执行。

  2. 资源分配:它负责管理计算集群中的节点、核心和内存等资源,并根据作业需求动态地分配这些资源。

  3. 作业监控:Slurm 可以实时监控作业的执行情况,包括作业的状态、进度和资源使用情况等。

  4. 用户管理:它允许系统管理员管理用户和用户组,并为每个用户分配适当的权限和资源配额。

总的来说,Slurm 是一个帮助管理大型计算集群的工具,它能够有效地管理计算资源,提高系统的利用率,并为用户提供方便的作业提交和管理功能。

 一.如何运行及提交作业

- 本地创建好conda环境(假设conda名为myenv),并且保证conda已加入环境变量;

- 确定好自己可以访问分区名(假设分区名为ampere);

- 创建好自己想要运行的程序文件(假设为shell.py);

在自己要提交的项目文件夹下创建.sh脚本文件(假设脚本文件x.sh),在该脚本文件中编辑:

#!/bin/bash#SBATCH --mem=200GB#SBATCH --partition=ampere#SBATCH --job-name=part1#SBATCH --output=part1.out#SBATCH --nodes=1#SBATCH --tasks=1#SBATCH --gres=gpu:1#SBATCH --error=part1.errsource activate myenvpython shell.py

每次提交被视为一个job,--job-name为这次job的名称,--output指定这次运行结果的输出文件, --error指定这次运行如果出错,相关报错的输出文件。

--mem 为当前job指定内存空间

--nodes 为当前job指定运行节点个数

--tasks 为当前job指定运行任务个数

--gres 为当前job指定使用的gpu

二.slurm常用命令

查看某一分区(假设分区名称为name)作业运行情况

squeue --partition=name

查看某一用户(假设用户名称为user_name)的所有作业运行情况:

squeue --user=user_name

取消自己提交的某一作业(假设job id为7766)

scancel 7755
http://www.lryc.cn/news/342846.html

相关文章:

  • SQL如何利用Bitmap思想优化array_contains()函数
  • 面试官:打开了一个新窗口,怎么知道这个窗口已经被打开过?
  • 机器学习项目实践-基础知识部分
  • CNN卷积神经网络,TensorFlow面试题
  • Android 官网Ota介绍
  • Redis(持久化)
  • 基于Flask的岗位就业可视化系统(一)
  • 嵌入式学习68-C++(运算符重载和虚函数)
  • UVA1048/LA3561 Low Cost Air Travel
  • 学习和分析各种数据结构所要掌握的一个重要知识——CPU的缓存利用率(命中率)
  • IOS自动化—将WDA打包ipa批量安装驱动
  • SAP PP学习笔记12 - 评估MRP的运行结果
  • AndroidStudio的Iguana版的使用
  • 通过方法引用获取属性名的底层逻辑是什么?
  • 自学错误合集--项目打包报错,运行报错持续更新中
  • KUKA机器人故障报警信息处理(一)
  • 数仓开发:DIM层数据处理
  • echars设置渐变颜色的方法
  • SpringBoot3项目打包和运行
  • Spring Cloud Gateway的部署
  • 算法提高之树的最长路径
  • git/gerrit使用遇到的问题
  • 机器学习第二天(监督学习,无监督学习,强化学习,混合学习)
  • Rust 解决循环引用
  • ICC2:如何解决pin density过高引起的绕线问题
  • Buuctf-Misc题目练习
  • 费马小定理详解
  • PXE批量安装
  • stm32f103c8t6最小系统板
  • QCefView 在 Linux 下的编译(更新)