Mésocentre SPIN Calcul

Introduction/Les calculateurs

2 machines de calcul de marque SGI sont disponibles pour des usages différents :

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).

A noter que le Mésocentre SPIN offre aussi une solution de stockage type Amazon S3 :
Mésocentre SPIN Stockage : SPIN Stockage

Assistance

  • utiliser l'adresse hpc at support dot univ-poitiers dot fr

Documentations à télécharger


Calculateur Thor

PBS

introduction

création de script de soumission, soumission et suivi

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 3760 coeurs. Il est composé de 188 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 (11 lames disposent de 6,4Go 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.

vue thor architecture

La connexion à la machine se fait à l'adresse thor dot univ-poitiers dot fr par ssh sur le port 86 :

ssh -p 86 -X homer at thor  dot univ-poitiers dot fr

monitoring : http://thor-ganglia.univ-poitiers.fr

librairies MPI

Compilateurs

Profilage de code MPI

Codes de pré/post traitement

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 scientifiques installées

les librairies dynamiques possèdent généralement un module associé afin de charger correctement l'environnement :

[homer@thor ]$ module av lib

--------------------------------- /sw/Modules/modulefiles ----------------------------------
lib/adios/1.9.0                lib/mumps/5.0.0
lib/adios2/2.4.0               lib/mumps/5.1.2
lib/boost/1.55                 lib/netcdf/4.4.0
lib/boost/1.67                 lib/netcdf/4.5.0
lib/boost/1.70_gcc52           lib/netcdf/ifort/4.4.4
lib/boost/1.70_intel18         lib/netcdf/ifort/4.4.4_V2
lib/cgns/3.1.4                 lib/openjpeg/2.3.0
lib/curl/7.59.0                lib/parmetis/4.0.3
lib/eccodes/2.8.0              lib/petsc/3.4.3-opt
lib/fftw/3.3.4                 lib/petsc/3.5.2-opt
lib/fishpack/4.1               lib/petsc/3.6.3-opt
lib/gsl/2.4                    lib/petsc/3.7.2-opt
lib/hdf5/intel/1.10.1          lib/qt/5.9.1
lib/itk/4.13.0                 lib/scotch/6.0.3
lib/metis/5.1.0                lib/tcltk/8.6.5
lib/mpl_toolkits.basemap/1.0.7 lib/vtk/5.10.1
lib/mumps/4.10.0               lib/vtk/7.1.0

  • VTK visualization toolkit
  • BOOST librairie c++
  • PETSc librairie de calcul parallèle
  • eigen librairie c++ pour le calcul
  • ITK librairie c++ pour le traitement d'image
  • hdf5 I/O

utilitaires (git, blcr, perfboost)

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, ajoutez 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 (faire module add intel-cmkl-15 avant) :
    [homer@thor]$ pbs_queue -h
    usage: pbs_queue [-h] [--verbose]
    
             Report queue information
             --------------------------------
                 Col 1 : name of queue
                 Col 2 : Max Possible Walltime
                 Col 3 : Max number  of Possible running job for one user in this queue
                 Col 4 : Max number of Possible running job for overall users in this queue
                 Col 5 : Max number  of Possible Queued job for one user in this queue
                 Col 6 : Max number  of Possible Queued job for overall users in this queue
                 Col 7 : Priority Value for this queue
                 Col 8 : number of Jobs (running and queued)
                 Col 9 : number of Running jobs
                 Col 10 : number of Queued jobs
    
    [homer@thor]$ 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
    [homer@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 pbs
  • pbsn : 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
 ...

archi_thor.png - architecture (356 KB) Gueguen Mikael, 05/22/2015 03:27 PM

thor.jpg (519 KB) Gueguen Mikael, 05/22/2015 03:28 PM

IMG_1361.JPG - vue thor (103 KB) Gueguen Mikael, 09/01/2015 11:17 AM

initiation_linux_15-03-2021.pdf (4.61 MB) Laplaceta Pierre Francois, 03/15/2021 04:39 PM