Options SBATCH courantes

La commande "sbatch" reçoit ses paramètres en ligne de commande mais autorise également leur définition via des "directives" #SBATCH sous forme de commentaire en en-tête du fichier. Les deux méthodes produisent le même résultat mais ceux déclarés en ligne de commande auront la priorité en cas de conflit. Dans les deux cas, ces options existent (pour la plupart) en version courte et longue (exemple : -n ou --ntasks).

Pour plus d’information sur "sbatch", voir la documentation officielle à l’adresse : https://slurm.schedmd.com/sbatch.html

 

#SBATCH --partition=<part> Choix de la partition à utiliser pour le job
#SBATCH --job-name=<name> Définit le nom du job tel qu'il sera affiché dans les différentes commandes Slurm (squeue, sstat, sacct)
#SBATCH --output=<stdOutFile> La sortie standard (stdOut) sera redirigée vers le fichier défini par "--output" ou, si non définie, un fichier par défaut "slurm-%j.out" (Slurm remplacera "%j" par le JobID).
#SBATCH --error=<stdErrFile> La sortie d'erreur (stdErr) sera redirigée vers le fichier défini par "--error" ou, si non définie, vers la sortie standard.
#SBATCH --input=<stdInFile> L'entrée standard peut aussi être redirigée avec "--input". Par défaut, "/dev/null" est utilisé (aucune/vide).
#SBATCH --open-mode=<append|truncate> L'option "--open-mode" définit le mode d'ouverture (écriture) des fichiers et se comporte comme un open/fopen de la plupart des langages de programmation (2 possibilités : "append" pour écrire à la suite du fichier (s'il existe) et "truncate" pour écraser le fichier à chaque exécution du batch (valeur par défaut)).

#SBATCH --mail-user=<e-mail>

#SBATCH --mail-type=<BEGIN|END|FAIL|TIME_LIMIT|TIME_LIMIT_50|...>

Permet d'être notifié par e-mail d'un évènement particulier dans la vie du job : début de l'exécution (BEGIN), fin d'exécution (END, FAIL et TIME_LIMIT)... Consulter la documentation Slurm pour la liste complète des évènements pris en charge.
#SBATCH --cpus-per-task=<n> Définit le nombre de CPUs à allouer par Task. L'utilisation effective de ces CPUs est à la charge de chaque Task (création de processus et/ou threads).
#SBATCH --ntasks=<n> Definit le nombre maximum de Tasks exécutées en parallèle.
#SBATCH --mem-per-cpu=<n> Définit la RAM en Mo allouée à chaque CPU. Par défaut, 4096 Mo sont alloués à chaque CPU, l’utilisation de cette variable permet de spécifier une taille de RAM spécifique, inférieure ou égale à 7800 Mo (maximum allouable par CPU)
#SBATCH --nodes=<minnodes[-maxnodes]> Nombre minimum[-maximum] de nœuds sur lesquels distribuer les Tasks.
#SBATCH --ntasks-per-node=<n> Utilisée conjointement avec --nodes, cette option est une alternative à --ntasks qui permet de contrôler la distribution des Tasks sur les différents noeuds.