Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
doku:mpi [2015/12/09 11:30] – [MPI environment] ir | doku:mpi [2021/09/14 13:27] (current) – removed goldenberg | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== MPI environment ====== | ||
- | ===== VSC-2 ===== | ||
- | In your job script use the following parallel environment (-pe option): < | ||
- | </ | ||
- | |||
- | Please refrain from setting any MPI-related environment variables in your //.bashrc// as these are set via a profile-script (/ | ||
- | |||
- | Different MPI implementations can be chosen via the command " | ||
- | ** We recommend using the latest Intel MPI (currently impi-4.1.0.024) on both VSC-1 and VSC-2.**\\ | ||
- | On both clusters other MPI Versions (OpenMPI and MVAPICH2) are also available. | ||
- | |||
- | |||
- | |||
- | ==== Process Pinning with MPI ==== | ||
- | Most MPI implementations allow a pinning of the MPI processes to specific CPU cores if needed. | ||
- | |||
- | |||
- | Numbering of the cores on a VSC-1 node with 8 cores: | ||
- | < | ||
- | CPU0 CORE0 | ||
- | CPU0 CORE1 | ||
- | CPU0 CORE2 | ||
- | CPU0 CORE3 | ||
- | |||
- | CPU1 CORE4 | ||
- | CPU1 CORE5 | ||
- | CPU1 CORE6 | ||
- | CPU1 CORE7 | ||
- | </ | ||
- | |||
- | Numbering of the cores on a VSC-2 node with 16 cores: | ||
- | < | ||
- | CPU0 CORE0 | ||
- | CPU0 CORE1 | ||
- | CPU0 CORE2 | ||
- | CPU0 CORE3 | ||
- | CPU0 CORE4 | ||
- | CPU0 CORE5 | ||
- | CPU0 CORE6 | ||
- | CPU0 CORE7 | ||
- | |||
- | CPU1 CORE8 | ||
- | CPU1 CORE9 | ||
- | CPU1 CORE10 | ||
- | CPU1 CORE11 | ||
- | CPU1 CORE12 | ||
- | CPU1 CORE13 | ||
- | CPU1 CORE14 | ||
- | CPU1 CORE15 | ||
- | |||
- | </ | ||
- | |||
- | |||
- | === Pinning to cores 0,1,2,4,6 === | ||
- | |||
- | Mvapich: | ||
- | < | ||
- | mpirun | ||
- | </ | ||
- | |||
- | |||
- | Intel MPI: | ||
- | < | ||
- | export I_MPI_PIN_PROCESSOR_LIST=0-2, | ||
- | mpirun -machinefile $TMPDIR/ | ||
- | </ | ||