img

Système de files d'attente Slurm


Le principe d'un gestionnaire de ressources est de vous réserver des coeurs de calcul en fonction de vos besoins.
Vous interagissez avec le gestionnaire de ressources par les commandes suivantes :
sbatch : soumission d'un job dans une file d'attente (appelées partitions dans Slurm) ;
scancel : suppression d'un job ;
squeue : interrogation des jobs ;
sinfo : interrogation des files d'attente ;
srun : exécution immédiate d'une commande ;


Comment lancer le "Job" :


Pour lancer un job, il faut créer un script dans lequel il faut demander des ressources puis appeler son programme (voir l'exemple suivant).

#!/bin/bash 
#SBATCH -J test # Job name 
#SBATCH -o job.%j.out # Name of stdout output file (%j expands to %jobId) 
#SBATCH -N 2 # Total number of nodes requested 
#SBATCH -n 16 # Total number of mpi tasks #requested 
#SBATCH -t 01:30:00 # Run time (hh:mm:ss) - 1.5 hours 
# Launch MPI-based executable 
prun ./a.out 
# Submit job for batch execution 

Ce script est ensuite soumi au gestionnaire de file d'attente avec la commande sbatch. Par exemple :

# Submit job for batch execution
[test@sms ~]$ sbatch job.mpi
 Submitted batch job 339

On obtient alors un numéro de job, qui peut être manipulé avec les commandes scancel ou squeue.

Suivre l'état d'un job :
Il est possible d'obtenir le détail de l'état d'un job, qu'il soit en attente ou en exécution, avec les commandes scontrol ou squeue.
Liste des jobs en cours :

squeue 

Détail de l'état d'un job :

scontrol show job