Description des partitions
Chaque partition est conçue pour un type de charge de travail spécifique.
Vous devez toujours spécifier la partition dans votre script avec :
#SBATCH --partition=<nom_partition>
Partitions CPU
Nome de partition | Nombre de nœuds | Jobs max | Durée max H |
noeud | 1 | 3 | 180 |
noeud2 | 2 | 2 | 110 |
noeud4 | 4 | 2 | 75 |
noeud8 | 8 | 2 | 36 |
noeud10 | 10 | 2 | 24 |
noeud12 | 12 | 2 | 18 |
shared-cpu | cpu: 96, mem:384G | 4 | 250 |
micro-cpu | cpu: 28, mem": 112G | 3 | 400 |
Partitions GPU
Nome de partition | Nombre de nœuds | Jobs max | Durée max H |
gpu | 1 nœud ( gpu: 4, cpu: 288) | 2 | 100 |
shared-gpu | gpu: 2, cpu: 144, mem:240G | 4 | 250 |
Nœuds spéciaux
Nome de partition | Nombre de nœuds | Jobs max | Durée max H |
mem | cpu: 192, mem:1510G | 1 | 100 |
visu | cpu: 96, mem: 753G | 1 | 04 |
- Le mode interactif et le mode batch
- Les outils
- Améliorer les performances
- Profiler et Debugger
- Accounting
Le mode interactif et le mode batch
x86
Pour le mode interactif le nœude frontal :
salloc -p nom_partition_CPU -n num_tasks -t temps_max
ssh kairoscompX
Si num_tasks n’est pas défini, la valeur maximale sera utilisée, et il en va de même pour le temps (wall_time).
Pour le mode batch, votre script doit ressembler à ceci.
#!/usr/bin/bash
#SBATCH --job-name=mon_projet # Nom du job (-J JobName)
#SBATCH --nodes=2 # Nombre de nœuds (-N 2)
#SBATCH --ntasks=384 # Nombre de tâches (-n 384)
#SBATCH --ntasks-per-node=192 # Tâches par nœude
#SBATCH --cpus-per-task=1 # Nombre de cœurs CPU par tâche, threads
#SBATCH --time=01:00:00 # Limite de temps h:m:s (-t 01:00:00)
#SBATCH --partition=noeud2 # Nom de la partition CPU (-p noeud2)
module purge
moduel load gcc/14.1
srun -n ${SLURM_NTASKS} ./binaire
puis être exécuté avec : sbatch nom_du_script
MicroShared CPU
Pour un Microshared CPU (inférieur ou égal à 16 cpu), évitez à tout prix d'utiliser #SBATCH --exclusive.
De plus, il est obligatoire d'ajouter ce qui suit à votre script :
#!/usr/bin/bash
#SBATCH --job-name=mon_projet # Nom du job (-J JobName)
#SBATCH --nodes=1 # Nombre de nœuds (-N 1)
#SBATCH --ntasks=16 # Nombre de tâches (-n 32)
#SBATCH --mem=64000M #règle de 4 G par core
#SBATCH --ntasks-per-node=32 # Tâches par nœude
#SBATCH --cpus-per-task=1 # Nombre de cœurs CPU par tâche, threads
#SBATCH --time=01:00:00
#SBATCH --partition=micro-cpu
Shared CPU
Pour un shared CPU (supérieur ou égal à 32 cpu) , évitez à tout prix d'utiliser #SBATCH --exclusive.
De plus, il est obligatoire d'ajouter ce qui suit à votre script :
#!/usr/bin/bash
#SBATCH --job-name=mon_projet # Nom du job (-J JobName)
#SBATCH --nodes=1 # Nombre de nœuds (-N 1)
#SBATCH --ntasks=32 # Nombre de tâches (-n 32)
#SBATCH --mem=128000M #règle de 4 G par core
SBATCH --ntasks-per-node=32 # Tâches par nœude
#SBATCH --cpus-per-task=1 # Nombre de cœurs CPU par tâche, threads
#SBATCH --time=01:00:00
#SBATCH --partition=shared-cpu
#SBATCH --sockets-per-node=1
#SBATCH --cores-per-socket=32
ARM
Pour le mode interactif
Pour le mode batch, votre script doit ressembler à ceci.
#!/usr/bin/bash
#SBATCH --job-name=mon_projet # Nom du job (-J JobName)
#SBATCH --ntasks=4 # Nombre de tâches (-n 4)
#SBATCH --cpus-per-task=1 # Nombre de cœurs CPU par tâche, threads
#SBATCH --time=01:00:00 # Limite de temps h:m:s (-t 01:00:00)
#SBATCH --partition=gpu # Nom de la partition CPU (-p noeud4)
#SBATCH --gres=gpu:4 # Demander 4 GPU
module purge
moduel load gcc/14.1
srun -n ${SLURM_NTASKS} ./binaire
puis être exécuté avec : sbatch nom_du_script depuis le frontal
Les outils
Placement
Job_info
etc ...