Slurm Jobs

Write, submit, debug, and tune SLURM batch jobs for deep learning training on an HPC cluster. Covers sbatch script directives (--gres/--gpus-per-node, --cpus-per-task, --mem, --time, --array, --signal), single-node multi-GPU and multi-node torchrun/DDP launch under srun, hyperparameter sweeps with job arrays, atomic checkpointing with requeue-on-preemption, and post-mortem diagnosis with sacct/seff/squeue. Use this when the user mentions sbatch, srun, salloc, squeue, scancel, sacct, seff, sinfo, scontrol, SLURM_ARRAY_TASK_ID, SLURM_JOB_NODELIST, MASTER_ADDR, "job pending", "job got killed at the time limit", "OOM on the cluster", "requeue", "node-local scratch", "$SLURM_TMPDIR", "module load", or asks to turn a local training script into a cluster job, run a sweep on the cluster, or figure out why a job failed/pended/wasted its allocation. For the Qizhi platform specifically, use the qzcli skill instead — this skill is for generic SLURM.

talhaMah56 Updated

File contents

talhaMah56/claude_skills/tree/main/slurm-jobs commit c1c608a3fe

Frequently asked questions

npx skillmds@latest add talhamah56/slurm-jobs