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