Le supercalculateur Turpan dispose de 15 nœuds de calcul. Dans un nœud, L’architecture détaillée est la suivante : autour du CPU, on a 512Go RAM répartis en 8 barrettes de 64Go sur des canaux indépendants, deux cartes GPU Nvidia A100-80, connectées en PCI express x16, 2 cartes réseaux infiniband 200 Go/s chaque une, également connectées en PCI express x16, 6To de stockage local, et de la connectique standard (USB, Ethernet etc).
Dans un nœud de Turpan, le processeur est un Ampere Altra Q80-30, qui comporte 80 cœurs à 2.8GHz, qui implémente une architecture ARM version 8.2, la vitesse de transfert des données est de 3200 MT/s. La puissance de calcul est de 1,79 TF/s par socket. Par ailleurs Turpan possède 2 accélérateurs GPU Nvidia A100-80, chaque GPU propose 6912 Streaming Multiprocessors (SM). La peak performance d'un GPU est de 19,5 Tflops. Au total, en charge maximale, quand on utilise 80 coeurs CPU et 2 accélérateurs GPU, la peak performance de supercalculateur est de 40,79 Tflops. En théorie, avec 15 nœuds, Turpan dispose d’une puissance de 611,85 Tflops.
Concernant le stockage, la machine Turpan dispose de 343 To sur des disques mécaniques pour le stockage scratch et projet. Et 17 To de SSD qui serve de cache pour accélérer les entres sorties. Physiquement on a 60 disques mécaniques de 8To, 11 disques SSD de 3,8To.
1/ Demander un compte Mesonet
Vous aurez besoin d'un compte Mesonet pour vous connecter à Turpan. La procédure de demande de compte est décrite ici:
2/ Gérer ses clés ssh
On ne peut se connecter à turpan ou Boréale que par l'intermédiaire de clés ssh. cette page explique comment générer et déployer ses clés ssh.
3/ Se connecter à Tupan
À partir de la plupart des réseaux académiques de la France, on peut se connecter sur Turpan par ssh, que son poste de travail soit sous gnu/linux, mac/OSX ou MS Windows.
L'espace-disque
L’espace disque est constitué de trois parties :
- Le home directory : Cet espace, dédié à l'installation des logiciels et binaires, est localisé dans le répertoire "/users/${GROUPE}/${USER}" (raccourci : ${HOME})
- Le work directory : Cet espace, dédiés aux entrées et sorties, est localisé dans le répertoire "/work/${PROJET}/${USER}" (raccourci : ${WORK})
- L’espace temporaire : Cet espace, dédié aux fichiers temporaires, est localisé dans le répertoire "/tmpdir/${USER}" (raccourci : ${SCRATCH}). Il est mutualisé à tous les utilisateurs (200To) et est accéléré par un cache SSD de 8.5 To. Dans l'espace tmpdir, les fichiers non accédés depuis plus de 100 jours sont automatiquement effacés.
Lancer un calcul sur Turpan
Partition / global = 3 jobs max par utilisateur :
- small : exclusive, 2 jobs max, pas plus de 6 noeuds par jobs, max walltime par job 4H
- big : exclusive, 1 jobs max, pas plus de 13 noeuds par jobs, max walltime par job 2H
- full : exclusive, 1 jobs max, au moins 14 noeuds par jobs, max walltime par job 20H
- shared : non exclusive, 2 jobs max, pas plus de 1 GPU, 40 cpu et 256G ram par jobs, max walltime par job 4H
- visu : non exclusive, 1 job max, max 50Go RAM max 8 cpu par job, max walltime par job 4H
Environnement de développement
Environnement de développement Nvidia HPC, ARM et GNU Compiler Collection.
Les compilateurs C/C++/Fortran et les accélérateurs support des normes OpenMP et OpenACC.
Il y a également les librairies scientifiques BLAS LAPACK Scalapack FFT et MPI optimisée.
Comment configurer un environnement ?
Comment charger un module ?
Les logiciels installés
Les compilateurs : Nvidia HPC, ARM, GNU
Les librairies de communication : OpenMPI
Les librairies : BLAS, LAPACK, ScaLAPACK, FFT, PetSC
Applications scientifique : MAGMA, OpenFoam, Saturne, HDF5, AMGX, CuFFT, CuBlas, CuSparse, CuTENSOR
Les outils de profiling et diagnostique : MAP (CPU / GPU), Nsight (GPU)
Améliorer les performances
Déboguer un code parallèle ou séquentiel
Mesurer : LWP, Linaro Forge et Nsight
LWP - Bull MPI Lightweight Profiler est un outil de Bull/Atos donne des informations synthétiques intégrées à la sortie standard.
map - Outil arm vous donnera l'évolution au cours du temps sur les E/S, les unités de calcul, l’utilisation de la mémoire, utilisation des GPUs.
Nsight Graphics est un outil de développement autonome avec prise en charge du lancer de rayons qui vous permet de déboguer, de profiler et d'exporter des images créées avec Direct3D, Vulkan, OpenGL, OpenVR et Oculus SDK.
Améliorer : BLAS, LAPACK, ScaLAPACK
Ils permettent souvent d’améliorer les performances.
Vectoriser : NEON ARM Advanced SIMD
La vectorisation permet de tirer partie des processeurs ARM, en leur permettant d’exécuter un grand nombre d’opérations simultanément (additions et multiplications sur des vecteurs).
Faire appel au support
support.calmip chez univ-toulouse.fr
en donnant les informations suivantes :- Chemin du répertoire d’appel
- Chemin du script d’appel
- Numéro du job concerné
Remercier Calmip et Mesonet
doc à venir