Table des matières

Voir cette page sous forme de diaporama.

CALI VERSION 2-B

Une évolution logicielle majeure est passée en production sur CALI le 14 septembre 2022. Le système est un équivalent RedHat 8 ( AlmaLinux 8.6).

Vous trouverez ici les éléments importants à prendre en compte. Dans la suite, nous indiquons les différences entre l'ancienne version et la nouvelle.

Connexion aux clusters

Connexion au "nouveau" cluster CALI 2-B

Nom DNS pour se connecter : cali.unilim.fr

La connexion est possible :

Espaces de stockage

Home directory

Le home directory n'est plus le même. Vous pouvez retrouver l'ancien home directory en allant dans le sous-dossier ~/old-home (lien présent à la racine de votre nouveau home directory)

Espace scratch

L'espace scratch existe toujours :

Choix de l'environnement logiciel -- Les modules

La commande module permet (comme précédemment) de sélectionner un environnement logiciel, pour utiliser un logiciel avec une certaine version.

A la différence de l'ancienne version du cluster, aucun module n'est chargé par défaut. Sur CALI2-A, certains modules (compilateurs Intel, Intel MPI) étaient chargés par défaut – ce n'est plus le cas.

Slurm

L'environnement Slurm est relativement identique à CALI2-A, afin de faciliter la transition :

Cependant, des modifications ont été apportées pour permettre d'utiliser plus facilement tous les noeuds disponibles.

Partition GPU

La partition gpu a été étendue à tous les noeuds avec GPU (qu'ils soient communs ou “privatifs”, càd propriété de certaines équipes de recherche).

Partitions CPU

Les 3 partitions principales à utiliser pour du calcul CPU sont rapide, normal et cluster

Compilateurs

Suite GNU

Suite INTEL

MPI

Deux familles de librairies MPI sont mises à disposition : OpenMPI et Intel MPI

Avertissement

Une partie des noeuds du cluster est relié par un réseau haute performance Infiniband, de technologie QLogic TrueScale ou Intel Infinipath. Cette technologie a été abandonnée par Intel, et mal supportée à l'heure actuelle.

La meilleure façon de faire fonctionner ce réseau consiste à utiliser une API appelée psm. Hors elle ne fonctionne pas avec la nouvelle version. Il faut alors se “rabattre” soit sur l'API verbs, soit sur le mode tcp.

OpenMPI

Trois versions sont réellement disponibles :

La configuration qui semble optimale avec OpenMPI est d'utiliser la couche PML ucx – par exemple en positionnant la variable suivante dans vos jobs slurm :

export OMPI_MCA_pml=ucx 

Si vous avez besoin de déboguer la couche OpenMPI, vous pouvez ajouter ces variables :

export OMPI_MCA_pml_base_verbose=10
export OMPI_MCA_mtl_base_verbose=10
export OMPI_MCA_btl_base_verbose=10

Intel MPI

Avertissement La librairie Intel MPI semble moins efficace qu'OpenMPI en l'absence de support de psm. A tester pour votre code.

Plusieurs versions sont disponibles :

Pour utiliser verbs, vous devez positionner la variable suivante (par exemple dans vos jobs slurm) :

export FI_PROVIDER=verbs
# Et si vous voulez avoir des informations de "debogage":
export FI_LOG_LEVEL=99
export I_MPI_DEBUG=4 

Intégration avec SLURM

Comme sur CALI2-A, il est conseillé de lancer les programmes MPI via srun

Logiciels disponibles

Les anciens logiciels de CALI2-A ont été recopiés et sont donc toujours accessibles via les modules. Cependant, la plupart risquent de ne pas fonctionner sur CALI2-B car l'environnement système n'est plus le même :!:

Si ces mesures ne sont pas suffisantes, signalez-nous le logiciel nécessaire pour vos calculs et l'erreur précise obtenue.

Note Nous vous rappelons aussi que sous Linux, vous pouvez installer tous les logiciels souhaités dans vos espaces disques, en totale autonomie – suivant votre degré de familiarité avec ce système.