Présentation
math11 est un serveur de calcul généraliste permettant l'utilisation des logiciels de mathématiques les plus courants. Il est équipé de 2 processeurs Intel Ivy Bridge de 10 cores chacun et de 256Go de ram. Une carte vidéo Nvidia K2000 permettant la visualisation 3D ainsi qu'une Tesla K20c pour le calcul GPU complètent cette configuration.
Logiciels disponibles pour le calcul
Une liste non exhaustive des logiciels installés : Scilab , Matlab, Mathematica, Maple, Freefem++, R, Haskell ....
ainsi que les compilateurs INTEL et GNU.
La librairie openMPI est également présente pour le calcul parallèle.
L'environnement de développement NIVIDIA est disponible pour le développement de codes de calculs en CUDA et OpenCL.
Des exemples sont disponibles dans ce répertoire : /usr/local/cuda/samples
Utilisation
Connexion
Pour se connecter, en ssh :
% ssh -Y math11.unice.fr
Vous avez également la possibilité d'utiliser la commande vglconnect qui permet d'utiliser le remote Rendering 3D, et donc d'améliorer notablement les performances graphiques, car on utilise la carte graphique K2000 pour le rendu.
% vglconnect math11.unice.fr
puis, au moment de lancer l'executable
% vglrun mathematica
Les modules
Afin de permettre une plus grande flexibilité dans l'utilisation des différents logiciels la commande module ainsi que les modules associés sont présents.
En effet, l'utilisation des compilateurs intel ou gcc, l'utilisation ou non de openMPI, de R ou de FreemFem++ demande un certain nombre de modifications dans les variables d'environnement. La commande module permet de charger et de decharger des modifications de l'environnement à la volée.
% module avail
Pour charger le module
openMPI% module load openmpi-1.6.5
% module list
Attention : Un module peut automatiquement charger des modules dont il a besoin. Par exemple
% module load R-3.0.2
% module list
Currently Loaded Modulefiles:
1) gcc-4.8.2 2) openmpi-1.6.5 3) R-3.0.2
% module purge
Le workdir
Afin d'accélérer les entrées sorties au moment des calculs, il est souhaitable d'utiliser un stockage local au serveur. En effet, les écritures et lectures vers des fichiers ne passeront ainsi plus par le réseau mais directement sur les disques disponibles sur la machine.
La création de ces espaces de travail est disponible sur demande.
Ensuite, on se rend dans son workdir, on y crée l'exécutable et on lance le calcul. Une fois celui ci terminé, on déplace simplement les résultats vers son répertoire utilisateur.
% cd /workdir/<login>
% ./mon-code.exe
% mv <résultats> ~/repertoire-de-destination
Quelques exemples concrets:
FreeFem++:
% vglconnect <votre login>@math11.unice.fr
Si vous avez fait la demande d'ouverture d'en espace Workdir:
% cd /workdir/<votre login>
Chargement de l'environnement:
% module load FreeFem++
Execution du programme de test en OpenMPI avec 2 cores, et affichage graphique des resultats:
% mpirun -np 2 FreeFem++-mpi /usr/local/src/freefem++-3.26-2/examples++-mpi/schwarz.edp -glut ffglut
Utilisation de la dernière version de Gcc:
Chargement de l'environnement (les flags de compilation sont prédéfinis pour les processeurs IvyBridge: -march=core-avx-i -O2 -pipe )
% module load Gcc-4.8.2
% gcc <mon code.c>