Outils pour utilisateurs

Outils du site


exemple

Ceci est une ancienne révision du document !


Exemple de scripts

Script pour un programme multithread à mémoire partagée (type openMP)

Le script suivant montre comment réserver 8 CPU pour un programme (typiquement un programme utilisant 8 threads en mémoire partagée : programme écrit avec openMP par exemple ou logiciel multithread comme Cplex).

#!/bin/bash
 
# ================== options de sbatch ===================================
 
#SBATCH --ntasks=1                 # une seule task...
#SBATCH --cpus-per-task=8          # ... de 8 threads : réservation de 8 CPUs
 
# =====================ligne de commande ==================================
 
# nom du programme précédé de la commande time pour avoir les temps de calcul
time ./exe

Script pour un programme multi processus à mémoire distribuée (type MPI)

SLURM est fait pour fonctionner avec MPI. Par défaut, il lancera autant de processus que de cœurs disponibles. On peut utiliser l'option bind-to-core de mpirun pour attacher les processus MPI sur les cœurs.

#!/bin/bash
 
# ============= options de sbatch (ici réservation de 32 cores)==================
#SBATCH --ntasks=32            # 32 tasks car 32 processus en parallèle
#SBATCH --ntasks-per-core=1    # on met une seule task par CPU
 
# =====================ligne de commande ==================================
mpirun ./exe

Script pour un programme utilisant les GPU Nvidia

Remarque : il faut compiler sur la machine qui possède les GPU, c'est pourquoi ce script inclut la compilation.

#!/bin/bash
 
# ============= options de sbatch ==================
#SBATCH --partition=GPU-nvidia
#SBATCH --constraint=GPU-NVIDIA-P5000
#SBATCH --ntasks=1
 
# =====================lignes de commande ==================================
make clean
make 
time ./vectorAdd

Télécharger l'exemple complet (code en C / CUDA) : exemplegpu.zip

Merci à Mélodie Angeletti pour son aide sur l'utilisation des GPU.

exemple.1517557525.txt.gz · Dernière modification : 2018/10/11 22:49 (modification externe)