~~NOTOC~~
====== Les tableaux de jobs ======
Les tableaux de jobs (Job arrays) offrent une manière très simple pour soumettre un grand nombre de jobs indépendants. Ils peuvent être typiquement utilisés pour appliquer le même programme à différentes données d'entrée. 
=====Soumission d'un tableau de jobs=====
La soumission d'un tableau de jobs s'effectue simplement en ajoutant l'option --array= à la liste des options de la commande **sbatch**.
La variable d'environnement   SLURM_ARRAY_TASK_ID  donne l'indice du job courant dans le tableau. 
=====Exemple=====
L'exemple suivant montre comment créer un tableau de 10 jobs et utiliser la variable  SLURM_ARRAY_TASK_ID  pour que chaque job s'exécute sur une instance (donnée d'entrée) différente. Les instances s'appellent insA.txt à insJ.txt et sont passées en argument de la ligne de commande. 
#!/bin/bash
#================= OPTIONS (s'applique à chaque job du tableau) =========================
#SBATCH --array=0-9              # création d'un tableau de 10 jobs indicés de 0 à 9
#SBATCH --partition=court        # choix de la partition
#SBATCH --ntasks=1               # chaque job possède une seule task
#SBATCH --cpus-per-task=4        # une task nécessite 4 CPU
#SBATCH --mem-per-cpu=2048       # 2 Go de RAM par CPU
#SBATCH --output=nouveau-nom_%a  # modifie le nom du fichier de sortie par défaut
#========================== TASKS ================================
tab=(A B C D E F G H I J)
./exe ins${tab[$SLURM_ARRAY_TASK_ID]}.txt
Voir la section [[varenv|Variables d'environnement SLURM]] pour plus d'information sur les variables d'environnement liées aux tableaux de jobs.