Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revisionBoth sides next revision | ||
doku:multimpi [2019/03/12 12:53] – jz | doku:multimpi [2022/11/04 10:45] – [With mpirun (Intel MPI):] goldenberg | ||
---|---|---|---|
Line 3: | Line 3: | ||
Sample job script to run two MPI tasks within one job script concurrently: | Sample job script to run two MPI tasks within one job script concurrently: | ||
- | === With srun: === | + | ==== VSC-4 ===== |
+ | |||
+ | Sample Job when for running multiple mpi jobs on a VSC-4 node. | ||
+ | |||
+ | Note: The " | ||
+ | |||
+ | < | ||
+ | mem_per_task * mytasks < mem_per_node - 2Gb | ||
+ | </ | ||
+ | |||
+ | The approx 2Gb reduction in available memory is due to operating system stored in memory. For a standard node with 96 Gb of Memory this would be eg.: | ||
+ | |||
+ | < | ||
+ | 23 Gb * 4 = 92 Gb < 94 Gb | ||
+ | </ | ||
< | < | ||
#!/bin/bash | #!/bin/bash | ||
- | #SBATCH -J test | + | #SBATCH -J many |
#SBATCH -N 1 | #SBATCH -N 1 | ||
- | #SBATCH --ntasks-per-core=1 | ||
- | #SBATCH --ntasks-per-node=2 | ||
export SLURM_STEP_GRES=none | export SLURM_STEP_GRES=none | ||
- | module load intel/18 intel-mpi/2018 | + | mytasks=4 |
+ | cmd=" | ||
+ | mem_per_task=10G | ||
- | for i in 0 8 | + | for i in `seq 1 $mytasks` |
do | do | ||
- | j=$(($i+1)) | + | srun --mem=$mem_per_task |
- | srun -n 2 --cpu_bind=map_cpu:$i,$j ./ | + | |
done | done | ||
wait | wait | ||
- | exit 0 | ||
</ | </ | ||
- | === With mpirun (Intel MPI): === | + | ==== VSC-3 ===== |
+ | === With srun: === | ||
< | < | ||
#!/bin/bash | #!/bin/bash | ||
Line 41: | Line 55: | ||
do | do | ||
j=$(($i+1)) | j=$(($i+1)) | ||
- | | + | |
done | done | ||
wait | wait | ||
exit 0 | exit 0 | ||
- | </ | ||
- | |||
- | You can download the C code example here: {{ : | ||
- | |||
- | Compile it e.g. with: | ||
- | |||
- | < | ||
- | # module load intel/18 intel-mpi/ | ||
- | # mpiicc -lhwloc hello_world.c -o hello_world_intelmpi2018 | ||
</ | </ | ||