Running Multi-threading Jobs¶
Multi-threading is a type of execution model that allows multiple threads to exist within the context of a process. Simply speaking, a Slurm multi-threading job is a single process, multi-core job. Many application can belong to this category
- OpenMP programs,
- Matlab programs with (Parallel Computing Toolbox) enabled,
- and so on
An example Slurm Multi-threading job script¶
#!/bin/bash #SBATCH --job-name=MyJob ... ... #SBATCH --ntasks=1 #SBATCH --cpus-per-tasks=8 ... ... ./<program>
This script tells Slurm this is a multi-threading job. It has only 1 process, but that process needs 8 CPU cores to execute.