Difference between revisions of "Submitting CPU Jobs"
(→Selected submit options) |
(→Monitoring and interaction) |
||
Line 24: | Line 24: | ||
* <code>sinfo</code> - print available/total resources | * <code>sinfo</code> - print available/total resources | ||
− | === | + | === Job interaction === |
− | + | * <code>scontrol show job JOBID</code> - this shows details of running job with JOBID | |
+ | * <code>scancel JOBID</code> - delete job from the queue | ||
=== Selected submit options === | === Selected submit options === | ||
− | |||
The complete list of available options for the commands <code>srun</code> and <code>sbatch</code> can be found in [https://slurm.schedmd.com/man_index.html SLURM documentation]. Most of the options listed here can be entered as a command parameters or as an SBATCH directive inside of a script. | The complete list of available options for the commands <code>srun</code> and <code>sbatch</code> can be found in [https://slurm.schedmd.com/man_index.html SLURM documentation]. Most of the options listed here can be entered as a command parameters or as an SBATCH directive inside of a script. | ||
Revision as of 14:17, 1 December 2022
The CPU jobs should be submitted to cpu
partition.
You can submit a non-interactive job using the sbatch command. To submit an interactive job, use the srun command:
srun --pty bash
Contents
Resource specification
You should specify the memory and CPU requirements (if higher than the defaults) and don't exceed them.
If your job needs more than one CPU (thread) (on a single machine) for most of the time, reserve the given number of CPU threads with the --cpus-per-task
and memory with the --mem
options.
srun -p cpu --cpus-per-task=4 --mem=8G --pty bash
This will give you an interactive shell with 4 threads and 8G RAM on the cpu partition.
Monitoring and interaction
Job monitoring
We should be able to see what is going on when we run a job. Following examples shows usage of some typical commands:
squeue -a
- this shows the jobs in all partitions.squeue -u user
- print a list of running/waiting jobs of a given usersqueue -j<JOB_ID>
- this shows detailed info about the job with given JOB_ID (if it is still running).sinfo
- print available/total resources
Job interaction
scontrol show job JOBID
- this shows details of running job with JOBIDscancel JOBID
- delete job from the queue
Selected submit options
The complete list of available options for the commands srun
and sbatch
can be found in SLURM documentation. Most of the options listed here can be entered as a command parameters or as an SBATCH directive inside of a script.
-J helloWorld # name of job -p gpu # name of partition or queue (if not specified default partition is used) -q normal # QOS level (sets priority of the job) -c 4 # reserve 4 CPU threads --gres=gpu:1 # reserve 1 GPU card -o script.out # name of output file for the job -e script.err # name of error file for the job