Intel MPI
Intel MPI Library
A CCE környezet támogatja az MPICH ABI kompatibilis alkalmazásokat, ezért az Intel MPI 5.0 szabványos programok is kompatibilisek a HPE Cray MPI-vel. Az alkalmazások fordításához be kell tölteni az MPICH ABI környezetet.
module swap PrgEnv-cray PrgEnv-gnu
module unload cray-mpich
module load cray-mpich-abi
Számos régebbi ISV-alkalmazás (amelyek az Intel MPI 5.0 előtti Intel MPI-verzióival készültek) működhetnek a HPE Cray MPI-vel. Egyes korábbi Intel MPI-verziók ABI-kompatibilisek az MPI-könyvtárral, de eltérő könyvtárnevekkel/verziószámokkal rendelkeznek. Ezek az alkalmazások a cray-mpich-abi-pre-intel5.0 modul betöltésével futhatnak a cray-mpich-abi modul helyett.
module swap PrgEnv-cray PrgEnv-gnu
module unload cray-mpich
module load cray-mpich-abi-pre-intel-5.0
További információk az Intel oldalán találhatók meg. Urás az Intel MPI Cray dokumentációra
Hybrid Intel MPI
A programok fordítása a következőképpen lehetséges a GNU compiler segítségével:
module swap PrgEnv-cray PrgEnv-gnu
cc hybrid.c -fopenmp
Megjegyzés
Amennyiben nem a Cray Programming Environment által biztosított fordító környezetet, hanem a régebbi Intel modult (intel/mpi/2021.9.0) használjuk, akkor az teljesítmény csökkenést eredményezhet.
További információk az Intel oldalán találhatók meg. Urás az Intel Developer dokumentációra
mpirun
A Cray MPI könyvtár nem támogatja az mpirun és mpiexec parancsokat. (Helyette srun-t futtatunk.) Amennyiben mégis ezt szeretné valaki használni, akkor be kell tölteni hozzá az Intel MPI környezetet:
$ module load intel/mpi
Loading mpi version 2021.9.0
Az mpirun batch jobhoz meg kell adni az egy node-on elinduló MPI processzek számát (ntasks-per-node). A párhuzamos programot az mpirun paranccsal lehet így indítani:
#!/bin/bash
#SBATCH -A hpcteszt
#SBATCH --job-name=mpirun
#SBATCH --nodes=2
#SBATCH --ntasks-per-node=8
#SBATCH --time=12:00:00
mpirun --report-pid ${TMPDIR}/mpirun.pid ./a.out