Notes TP

Cette page décrit comment se connecter et lancer des calculs sur le mésocentre.

Le compte est partagé par plusieurs étudiants, l'idée est de de créer un répertoire par étudiant qui servira comme répertoire de travail tout au long du TP

Connexion au mésocentre

  1. Se connecter au noeud de login
     ssh -X login@mesologin1.univ-fcomte.fr

    login correspond à votre login

  2. Une fois connecté, se placer dans le répertoire de travail WORK
    $ cd WORK 
  3. Créer un répertoire personnel unique en utilisant votre nom de famille, par exemple :
    $ mkdir dpont
  4. Se placer dans le répertoire nouvellement crée
    $ cd dpont

    ça sera votre répertoire de travail tout au long du TP.

Ce répertoire est utilisé pour stocker vos données : programmes et résultats.

Compilation

Les programmes doivent être copiés sur votre répertoire de travail.

Avant de commancer la compilation il faut charger le compilateur à utiliser. Pour les programmes séquentiels et parallèle en mémoire partagée (OpenMP) nous conseillons d'utiliser le compilateur Intel. Pour les programme MPI nous utilisons Open MPI.

On charge d'abord le compilateur Intel :

$ module load intel/14.0.2

Programme C

$ icc -openmp monprogram.c -o monprogram

Programme C++

$ icpc -openmp monprogram.cpp -o monprogram

Programme Fortran

$ ifort -openmp monprogram.f90 -o monprogram

On charge d'abord Open MPI :

$ module load ompi/icc

Programme C

$ mpicc monprogram.c -o monprogram

Programme C++

$ mpic++ monprogram.cpp -o monprogram

Programme Fortran

$ mpif90 monprogram.f90 -o monprogram

Execution SGE

Nous utilisons SGE pour lancer l'exécution des programmes sur les machines du mésocentre.

Il écrire un script (Shell) décrivant les besoins en ressources et de soumettre l'exécution avec la commande qsub

Voici un exemple de script à adapter selon vos besoins :

scipt_omp.sge
#!/bin/bash
 
#$ -V
 
#$ -cwd
 
#$ -o $JOB_NAME.$JOB_ID.out
 
#$ -N test_sge     ## le nom du job 
#$ -q formation.q    ## file d'attente, a adapter selon besoin 
#$ -pe openmp 8    ## on demande 8 coeurs
 
 
export OMP_NUM_THREADS=$NSLOTS
 
 
 
########### Debut du programme ####
 
./monporgramme

Sauvegarder le script dans le même répertoire que votre programme.

Soumettre le calcul à SGE :

$ qsub script_omp.sge

Vérifier le status du job avec :

$ qstat

Voici un exemple de script à adapter selon vos besoins :

scipt_omp.sge
#!/bin/bash
 
#$ -V
 
#$ -cwd
 
#$ -o $JOB_NAME.$JOB_ID.out
 
#$ -N test_sge     ## le nom du job 
#$ -q formation.q    ## file d'attente, a adapter selon besoin 
#$ -pe impi_tight 8    ## on demande 8 coeurs
 
 
### Important, on charge MPI 
 
module load ompi/icc
 
########### Debut du programme ####
 
mpirun -np $NSLOTS ./monporgramme

Sauvegarder le script dans le même répertoire que votre programme.

Soumettre le calcul à SGE :

$ qsub script_omp.sge

Vérifier le status du job avec :

$ qstat