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.
Connexion
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
Transfert de données
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.
:
sont importants pour spécifier que la destination est une destination distante.
$ 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 .
Soumission de jobs
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