SMP-parallel Program
An program which supports symmetric multiprocessing or SMP can run as multiple threads on multiple cores on a single compute node.
#!/bin/bash
#SBATCH --job-name=my_smp_job # replace name
#SBATCH --mail-user=nobody@zedat.fu-berlin.de # replace email address
#SBATCH --mail-type=end
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=16 # replace with value for your job
#SBATCH --mem-per-cpu=4096 # replace with value for your job
#SBATCH --time=08:00:00 # replace with value for your job
#SBATCH --qos=standard # replace with value for your job
module add ExampleProg/1.2.3-foss-2018b # replace with value for your job
# For OpenMP programs, the following should also be set
export OMP_NUM_THREADS=${SLURM_CPUS_PER_TASK}
cd /scratch/${USER} # replace with your directory
srun -n ${SLURM_CPUS_PER_TASK} exampleprog_smp # replace with your program
A program can only support SMP parallelism if the code was written and compiled accordingly. If you are unsure whether this applies to the program you wish to use, please contact us.