Outils pour utilisateurs

Outils du site


varenv

Variables d'environnement SLURM

On donne ici seulement quelques unes des variables d'environnement qui sont disponibles dans SLURM. Pour une liste exhaustive voir https://slurm.schedmd.com/sbatch.html#lbAG.

Information sur le job

  • SLURM_JOB_ID : numéro du job
  • SLURM_JOB_NAME : nom du job
  • SLURM_JOB_NUM_NODES : nombre total de nœuds alloués pour le job
  • SLURM_SUBMIT_DIR : répertoire à partir duquel le job est soumis
  • SLURMD_NODENAME : nom du nœud sur lequel le job s'exécute
  • SLURM_JOB_PARTITION : nom de la partition sur laquelle le job s'exécute

Information sur les tableaux de jobs

Un tableau de jobs est composé d'un job principal (le tableau) et de tâches (les jobs contenus dans le tableau). SLURM attribue à un job du tableau un numéro constitué du numéro du job principal et de son indice : < SLURM_ARRAY_JOB_ID >_<SLURM_ARRAY_TASK_ID>.

On dispose des variables d'environnement suivantes :

  • SLURM_ARRAY_JOB_ID : numéro du job principal
  • SLURM_ARRAY_TASK_ID : indice de la tâche dans le tableau
  • SLURM_ARRAY_TASK_COUNT : nombre total de tâches dans un tableau de jobs
  • SLURM_ARRAY_TASK_MAX : indice max du tableau de jobs
  • SLURM_ARRAY_TASK_MIN : indice min du tableau de jobs

Exemples d'utilisation

#!/bin/bash
 
#SBATCH --job-name=test1
#SBATCH --time=5:00
#SBATCH --partition=court
 
echo mon job $SLURM_JOB_NAME, num $SLURM_JOB_ID,
echo "s'execute" dans la partition $SLURM_JOB_PARTITION sur le noeud $SLURMD_NODENAME
 
./exe 10
#!/bin/bash
 
#SBATCH --time=1:00
#SBATCH --array=0-9
 
echo tableau de jobs numero $SLURM_ARRAY_JOB_ID, indices de $SLURM_ARRAY_TASK_MIN a $SLURM_ARRAY_TASK_MAX
 
#les jobs dont les indices vont de 0 à 4 exécutent le programme 1
if [ $SLURM_ARRAY_TASK_ID -le 4 ]
then
    echo "premier programme"
    ./exe 1 
else  #les autres exécutent le programme 2
    echo "second programme"
    ./exe 10
fi
varenv.txt · Dernière modification: 2018/10/11 20:49 (modification externe)