Tristan created page: OpenmpLpnhe authored by Tristan Beau's avatar Tristan Beau
# Utiliser les machines MESU de la DSI # # Utiliser les machines MESU de la DSI #
Les machines sont gérées par l'[institut du calcul et de la simulation](http://ics.sorbonne-universites.fr/), sur le réseau de la DSI de l'[UPMC](http://www.upmc.fr).
## Informations ## ## Informations ##
* Le [wiki mesu de la DSI](http://asclepios.dsi.upmc.fr/mesu/index.php/Main_Page) * Le [wiki mesu de la DSI](http://asclepios.dsi.upmc.fr/mesu/index.php/Main_Page)
* Le [forum mesu de la DSI](http://asclepios.dsi.upmc.fr/icsforum/) * Le [forum mesu de la DSI](http://asclepios.dsi.upmc.fr/icsforum/)
## Les machines MESU en résumé ## ## Les machines MESU en résumé ##
Pour plus de détail, on consultera le wiki bien entendu.
### Machines ### ### Machines ###
Il y a 5 machines interactives, 3 standard et 2 pour les GPU, nommées `mesu0` à `mesu4`. On préférera utiliser les *alias* respectivement `mesu.dsi.upmc.fr` et `mesugpu.dsi.upmc.fr` pour se connecter.
Les machines interactives standard ne sont pas là pour le calcul, il faut utiliser PBS pour soumettre les jobs.
Physiquement, il y a actuellement 2 machines de calcul :
* `mesu-alpha`, 1024 cœurs, qui est une machine à mémoire partagée de 16 TB
* `mesu-beta`, 2020 cœurs, qui est une machine à mémoire distribuée de 21 TB, et qui possède également 4 cartes GPU K5200.
Hormis pour les jobs orientés GPU, les queues des machines sont accessibles par n'importe quelle machine interactive frontale.
### Outils ### ### Outils ###
La machine utilise les *modules* pour la configuration de chaque session utilisateur. Pour lister les *modules* disponibles : La machine utilise les *modules* pour la configuration de chaque session utilisateur. Pour lister les *modules* disponibles :
```bash ```bash
module avail module avail
``` ```
## Utilisation pratique pour nos applications au LPNHE ## ## Utilisation pratique pour nos applications au LPNHE ##
### Compilateurs ### ### Compilateurs ###
...@@ -24,6 +35,27 @@ Pour la suite on définira utilement les variables suivantes : ...@@ -24,6 +35,27 @@ Pour la suite on définira utilement les variables suivantes :
COMPILO=icc13.0.1 COMPILO=icc13.0.1
SOFTDIR=$HOME/soft SOFTDIR=$HOME/soft
``` ```
Exemple de lignes d'options de compilation (à adapter en fonction des besoins bien sûr) :
* OpenMP - GNU :
```bash
g++ `root-config --libs --cflags ` -I$LIBMEMTK/inc -L$LIBMEMTK/lib/$ARCH_TYPE
-lMEM -lEG -fopenmp go_openmp.cxx
```
* MPI - GNU :
```bash
module load openmpi
mpicxx `root-config --libs --cflags ` -I$LIBMEMTK/inc -L$LIBMEMTK/lib/$ARCH_T
YPE -lMEM -lEG go_mpi.cxx
```
* MPI - Intel
```bash
module load intel-compilers-13
module load mpt
icpc -wd858 -O3 -Wall -fPIC -ipo -xavx `root-config --libs --cflags ` -I$LIB
MEMTK/inc -L$LIBMEMTK/lib/$ARCH_TYPE -lMEM -lEG -lmpi -L$HOME/soft/Cuba3.2-icc13
.0.1/lib -lcuba go_mpi.cxx
```
Pour le *profilage* de code, on pourra utiliser les outils SGI comme `perfsuite` disponible dans les *modules*.
### CVMFS ### ### CVMFS ###
L'outil [`cvmfs`](https://cernvm.cern.ch/portal/filesystem) est installé sur les machines MESU. En revanche, à ce jour, il ne semble pas fonctionnel. L'outil [`cvmfs`](https://cernvm.cern.ch/portal/filesystem) est installé sur les machines MESU. En revanche, à ce jour, il ne semble pas fonctionnel.
... ...
......