Wiki » History » Version 124
« Previous -
Version 124/169
(diff) -
Next » -
Current version
Gueguen Mikael, 03/25/2016 02:40 PM
Mésocentre SPIN Calcul¶
Introduction/Les calculateurs¶
2 machines de calcul de marque SGI sont disponibles pour des usages différents :
- une machine SMP (à mémoire partagée ; voir le wiki https://forge.univ-poitiers.fr/projects/calculateur-hulk/wiki)
- une machine à mémoire distribuée ; ce présent wiki
Chaque calculateur dispose de PBSpro avec des files et des usages définis spécifiquement. Ils disposent aussi d'outils et librairies de calcul spécifiques performants proposés par le constructeur (mpt,perfboost,MPInside, blcr
).
assistance¶
- utiliser l'adresse
hpc at support.univ-poitiers.fr
- création d'un ticket sur le site : https://forge.univ-poitiers.fr/projects/mesocentre-spin-git/issues/new
- pour le calculateur
HULK
: https://forge.univ-poitiers.fr/projects/calculateur-hulk/issues/new
PBS¶
introduction¶
création de script de soumission, soumission et suivi¶
- files définies pour les calculateurs
codes de retour suite à l'arrêt d'un calcul¶
exemples de scripts ¶
Machine de calcul MPI, THOR¶
La machine de calcul Thor est un cluster MPI SGI ICE-X de 2300 coeurs. Il est composé de 115 lames de calcul bi-socket Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz (20 coeurs par lames) avec 32 Go de mémoire par socket soit 3.2 Go par coeurs.
Chaque lame est raccordée à un réseau Infiniband hypercube enhanced FDR à 56 Gbit/s. Le stockage des données de calcul est basé sur un système de fichier parallèle Lustre 2.5 via le réseau Infiniband. Il offre une capacité de 56 To pour le répertoire /scratch
et de 21 To pour le répertoire /home
.
La connexion à la machine se fait à l'adresse thor.univ-poitiers.fr
par ssh
sur le port 86 :
ssh -p 86 -X homer@thor.univ-poitiers.fr
monitoring : http://thor-ganglia.univ-poitiers.fr
Documentations à télécharger¶
- Fiche pratique Thor : source:sheet/thor/thorsheet.pdf
- Formation utilisateurs : formation utilisateur thor
librairies MPI¶
Compilateurs¶
Profilage de code MPI¶
Codes installés¶
Les codes installées sont à utilisés avec l'utilitaire module pour le chargement adhoc des variables d'environnement :
[homer@thor ~]$ module avail codes ------------------------------------------------------- /sw/Modules/modulefiles ------------------------------------------------------- codes/abinit/7.10.1 codes/lammps/2013 codes/saturne/3.2.1 codes/vasp/5.3/kpar codes/wien2k/2014 codes/espresso/5.1.1 codes/openfoam/2.3.1 codes/vasp/5.3/gamma codes/vasp/5.3/noncol codes/zebulon/Z8.6
librairies installés¶
les librairies dynamiques possèdent généralement un module associé afin de charger correctement l'environnement :
[homer@thor ~]$ module avail lib ------------------------------------------------------- /sw/Modules/modulefiles ------------------------------------------------------- lib/boost/1.55 lib/fftw/3.3.4 lib/mumps/4.10.0 lib/parmetis/4.0.3 lib/petsc/3.5.2-opt lib/cgns/3.1.4 lib/metis/5.1.0 lib/mumps/5.0.0 lib/petsc/3.4.3-opt lib/vtk/5.10.1
- VTK visualization toolkit
- BOOST librairie c++
- PETSc librairie de calcul parallèle
- blcr utilitaire pour faire du Checkpoint / Restart
- perfboost utilitaire pour améliorer les performances d'un code MPI non compilé avec la librairie MPT de SGI
utilitaires ¶
Système de fichier LUSTRE¶
Commandes¶
espace disque¶
- Connaitre l'espace utilisé sur un répertoire
[homer@thor]$ du -sh 376K .
commandes propres à thor¶
ces scripts sont localisés sous /sw/tools/bin. Pour les utiliser ajouter ce chemin au PATH
dans votre .bashrc
PATH=$PATH:/sw/tools/bin
pbs_queue
: permet de lister les informations relatives à chaque files définies et la politique de tri des jobs :[gueguenm@thor cavity_1MC3D4T_d02_allEvol]$ pbs_queue ===================================================================================================== Queue Max MaxRun MaxRun MaxQueued MaxQueued Priority Current Running Queued Walltime /user forall /user forall Jobs Jobs Jobs ===================================================================================================== workq -- 0 0 0 0 - 0 0 0 default -- 0 1 0 0 - 13 0 13 large 30:00:00 1 2 1 2 100 1 0 1 small_long 600:00:00 8 8 5 10 20 10 5 5 medium 90:00:00 4 4 6 10 300 9 4 5 normal 110:00:00 5 10 10 15 300 15 3 12 small 96:00:00 0 10 4 10 60 10 4 6 test 01:00:00 0 6 1 6 150 1 1 0 R328002 720:00:00 0 0 0 0 - 7 7 0 S328032 12:00:00 0 0 0 0 - 0 0 0 R328225 4055:00:00 0 0 0 0 - 18 13 5 Sorting Jobs policy use : 5*job_requested_cpus+queue_priority+prio+eligible_time/3600.0
qmem
: permet de tracer l'utilisation mémoire d'un job[gueguenm@thor 5cycl]$ qmem --job=339337 Memory Usage for job : 339337 ------------------------------- -> ncpu per host requested : 20 -> number of host requested : 4 user : tnakano,JID : 339337, host : r1i7n0 r1i7n1 r1i7n2 r1i7n3 -> r1i7n0 : RAM mem = 14.2385063171387 (GB) ; TOT mem = 19.9174461364746 (GB) -> nb user pid : 24 -> r1i7n1 : RAM mem = 13.5929222106934 (GB) ; TOT mem = 24.9528999328613 (GB) -> nb user pid : 24 -> r1i7n2 : RAM mem = 14.2325859069824 (GB) ; TOT mem = 25.5949440002441 (GB) -> nb user pid : 24 -> r1i7n3 : RAM mem = 13.8947525024414 (GB) ; TOT mem = 25.2552146911621 (GB) -> nb user pid : 24
gload
: charge machine donnée par l'outil de monitoring ganglia[homer@thor]$ gload total cpus available : 2460 total used nodes : 110 total used process : 1969 1mn load on thor : 78.9272357723577 % idle load on thor : 20.4073170731707 %
showq, pestat, ustat
: commandes supplémentaires pbspbsn
: liste les noeuds et leurs états (down, job-exclusive, free
)
- connaitre les noeuds libres :
[homer@thor]$ pbsn |grep free r1i4n11 free 65000000kb 20 r1i4n15 free 65000000kb 20 r1i5n13 free 65000000kb 20 r1i7n9 free 65000000kb 20- compte le nombre de noeuds utilisés
[homer@thor ~]$ pbsn | grep job | wc -l 31
running_job_end
renvoi le nombre de jours restants des calculs en run
[homer@thor ~]$ running_job_end JID user date ---------------------------------------------------- 226217.thor dmagne 24 days, 23:50:00 226279.thor dmagne 24 days, 23:50:00 226280.thor dmagne 24 days, 23:50:00 ...