▶ 编写 SLURM 脚本
#!/bin/bash
#SBATCH -J name # 任务名
#SBATCH -p gpu # 分区名,可为 cpu 或 gpu
#SBATCH -N # 节点数
#SBATCH --ntasks-per-node= # 单节点进程数
#SBATCH --cpus-per-task= # 单进程 CPU 核心数
#SBATCH -o output.log # 标准输出文件
#SBATCH -t -:: # 运行最长时间
#SBATCH --gres=gpu: # 申请的 GPU 卡数,只能在 -p 为 gpu 时填写 # 要运行的命令
▶ 检查任务状态
sinfo # 查看各个分区状态
sinfo -lN # 查看节点状态
squeue # 查看任务状态
scancel JOBID / scancel -u username # 取消任务
▶ 交互式任务提交
● 申请交互式资源:① ssh 直连节点(如 ssh cu01),获取新 bash;② 完成交互式计算任务;③ exit 退出到登录节点,再次 exit 命令退出 bash,并释放资源
● salloc 用法(参数名与脚本式提交相同)
salloc -N -p cpu -c -t :: # 申请 台 cpu 分区的节点,每个线程 核心,占用时间 小时
▶ module 相关
module avail # 查看所有软件模块
module list # 查看当前已经加载的模块
module add m1 m2 m3 ... # 添加模块
module remove m1 m2 m3 ... # 删除模块
module purge # 删除所有
module swap m1 m2 # 交换模块(m1 → m2)
▶ conda 是 anaconda 软件的包管理器和环境管理器
conda create -n ENVNAME # 创建 conda 环境
source activate ENVNAME # 激活环境
(ENVNAME) conda install package1 = x.y.z # 在已经激活的环境里安装包
(ENVNAME) pip install package1 == x.y.z # 安装了 python 后可用 pip
(ENVNAME) source deactivate # 退出环境
conda env remove -n ENVNAME # 删除环境(当前环境不能处于激活状态)