Difference between revisions of "Slurm"
From Systems Group
Systemswiki (Talk | contribs) (→SRUN) |
Systemswiki (Talk | contribs) (→SBATCH) |
||
Line 17: | Line 17: | ||
#!/bin/bash -l # login shell (required for lmod) | #!/bin/bash -l # login shell (required for lmod) | ||
− | #SBATCH --job-name=testprogram # job name | + | #SBATCH --job-name=testprogram # job name |
+ | #SBATCH --partition=slurm-general-01 # specifying which partition to run job on | ||
+ | #SBATCH --account=slurmgeneral # only applicable if user is assigned multiple accounts | ||
#SBATCH --ntasks=1 # request 1 CPU | #SBATCH --ntasks=1 # request 1 CPU | ||
#SBATCH --mem=1gb # request 1gb of memory | #SBATCH --mem=1gb # request 1gb of memory | ||
Line 28: | Line 30: | ||
someProgram.py | someProgram.py | ||
date | date | ||
+ | |||
+ | |||
+ | sbatch myprogram.sh # queue job using a batch script | ||
+ | |||
+ | sbatch -p slurm-general-01 --account=slurmgeneral myprogram.sh # batch script specifying which partition and account when not specified using a slurm directive within the script |
Revision as of 17:53, 4 August 2022
Slurm is an open-source job scheduler for Linux and Unix-like kernels.
SRUN
srun is used to submit jobs for execution in real time. Also used to create job steps.
srun example
srun --pty /bin/bash # shell on compute job / default account is used when not specified
srun -p slurm-general-01 --account=slurmgeneral --pty /bin/bash # shell on compute job / specifying which partition and account (applicable if user is assigned multiple accounts)
SBATCH
Sbatch is a command used to submit batch scripts to Slurm.
batch script example
#!/bin/bash -l # login shell (required for lmod) #SBATCH --job-name=testprogram # job name #SBATCH --partition=slurm-general-01 # specifying which partition to run job on #SBATCH --account=slurmgeneral # only applicable if user is assigned multiple accounts #SBATCH --ntasks=1 # request 1 CPU #SBATCH --mem=1gb # request 1gb of memory #SBATCH --output=testprogram.lob # output and error log date sleep 10 module use /mnt/lmod_modules/Linux/ module load miniconda3 someProgram.py date
sbatch myprogram.sh # queue job using a batch script
sbatch -p slurm-general-01 --account=slurmgeneral myprogram.sh # batch script specifying which partition and account when not specified using a slurm directive within the script