Utilisation du calculateur Jean-Zay (IDRIS)

L'utilisation du calculateur Jean-Zay se fait en ligne de commandes Linux, il faut donc être familier avec certaines commandes pour changer de dossier, modifier des fichiers… Voir notre documentation sur les commandes Linux.

Pour se connecter au Jean-Zay, il faut d'abord se connecter au mésocentre sur la machine mesologin1.univ-fcomte.fr, voir notre documentation sur Connexion au cluster si besoin.

Une fois connecté, exécutez dans un terminal la commande

$ ssh votre_login_jean_zay@jean-zay.idris.fr

En remplaçant votre_login_jean_zay par votre nom d'utilisateur de Jean-Zay, ceci vous demandera normalement votre mot de passe de Jean-Zay qu'il faudra alors entrer.

Pour se placer dans le répertoire de travail :

$ cd $WORK

De même que pour se connecter, pour transférer des données il faut d'abord être sur mesologin1.univ-fcomte.fr.

Le transfert de fichiers se fait avec la commande scp. Cette commande s'utilise comme suit :

$ scp fichiers_source fichier_destination

Pour transférer 2 fichiers du mésocentre vers Jean-Zay :

$ scp fichier1 fichier2  votre_login_jean_zay@jean-zay.idris.fr:/chemin_dossier

Il est possible de ne pas spécifier le chemin du dossier de Jean-Zay, ainsi les fichiers seront copiés dans le répertoire de connexion.

Les : sont importants pour spécifier que la destination est une destination distante.

Par exemple :

$ scp fichier1 fichier2 votre_login_jean_zay@jean-zay.idris.fr:

Pour transférer un ou des fichiers de Jean-Zay au mésocentre, en considérant que vous êtes connecté au mésocentre :

$ scp votre_login_jean_zay@jean-zay.idris.fr:/chemin_du_fichier chemin_dossier

Pour copier les fichiers du Jean-Zay dans le dossier courant du mésocentre, on peut utiliser comme chemin_dossier .

Jean-Zay utilise Slurm comme logiciel de gestion de jobs, voici leur template de jobs OpenMP :

#!/bin/bash
#SBATCH --job-name=omp              # nom du job
#SBATCH --nodes=1                   # nombre de noeuds
#SBATCH --ntasks=1                  # nombre de tâche (un unique processus ici)
#SBATCH --cpus-per-task=20          # nombre de threads OpenMP
# /!\ Attention, la ligne suivante est trompeuse mais dans le vocabulaire
# de Slurm "multithread" fait bien référence à l'hyperthreading.
#SBATCH --hint=nomultithread        # on réserve des coeurs physiques et non logiques
#SBATCH --time=00:01:00             # temps d'exécution maximum demande (HH:MM:SS)
#SBATCH --output=omp%j.out          # nom du fichier de sortie
#SBATCH --error=omp%j.out           # nom du fichier d'erreur (ici commun avec la sortie)
 
# nettoyage des modules charges en interactif et herites par defaut
module purge
 
# chargement des modules
module load ...
 
# echo des commandes lancées
set -x
 
# nombre de threads OpenMP
export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK 
 
# Binding
export OMP_PLACES=cores
 
# exécution du code
./executable_omp

Pour soumettre on utilise la commande sbatch, par exemple :

$ sbatch openmp.slurm

Pour obtenir l'état des jobs soumis on utilise la commande squeue, on peut notamment filtrer pour l'utilisateur courant :

$ squeue
# ou avec le filtre
$ squeue -u $USER

Pour supprimer un job, qu'il soit en cours, en attente ou en erreur, la commande scancel est à utiliser avec l'identifiant du job (obtenu avec squeue) :

$ scancel 123456