Wiki » History » Version 166

Laplaceta Pierre Francois, 03/15/2021 04:44 PM

1 3 MOREL Alexandre
h1. Mésocentre SPIN Calcul
2 1 MOREL Alexandre
3 148 Gueguen Mikael
{{>toc}}
4 148 Gueguen Mikael
5 148 Gueguen Mikael
6 80 Gueguen Mikael
h1. Introduction/Les calculateurs
7 68 Gueguen Mikael
8 85 Gueguen Mikael
2 machines de calcul de marque _SGI_ sont disponibles pour des usages différents :
9 1 MOREL Alexandre
10 118 Gueguen Mikael
* une machine SMP (à mémoire partagée ; voir le wiki https://forge.univ-poitiers.fr/projects/calculateur-hulk/wiki)
11 162 Laplaceta Pierre Francois
* une machine Single System Image (à mémoire partagée ; voir le wiki https://forge.univ-poitiers.fr/projects/calculateur-vision/wiki )
12 118 Gueguen Mikael
* une machine à mémoire distribuée  ; ce présent wiki
13 68 Gueguen Mikael
14 147 GUICHARD Mikael
15 85 Gueguen Mikael
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@).
16 68 Gueguen Mikael
17 147 GUICHARD Mikael
A noter que le Mésocentre SPIN offre aussi une solution de stockage type Amazon S3 :
18 147 GUICHARD Mikael
Mésocentre SPIN Stockage : [[spin_stockage| SPIN Stockage]]
19 147 GUICHARD Mikael
20 154 Gueguen Mikael
h1. Assistance 
21 154 Gueguen Mikael
22 154 Gueguen Mikael
* utiliser l'adresse @hpc at support dot univ-poitiers dot fr@
23 154 Gueguen Mikael
24 153 Gueguen Mikael
-----------------------------------------------------
25 153 Gueguen Mikael
26 137 Gueguen Mikael
27 151 Gueguen Mikael
h1. Documentations à télécharger
28 88 Gueguen Mikael
29 151 Gueguen Mikael
* Fiche pratique Thor : source:sheet/thor/thorsheet.pdf
30 1 MOREL Alexandre
31 1 MOREL Alexandre
* Formation utilisateurs : {{dmsf(113)}}
32 151 Gueguen Mikael
33 166 Laplaceta Pierre Francois
* Formation ligne de commande : {{dmsf(1024)}} / {{dmsf(1025)}} / {{dmsf(818)}}
34 153 Gueguen Mikael
35 153 Gueguen Mikael
-----------------------------------------------------
36 151 Gueguen Mikael
37 151 Gueguen Mikael
38 151 Gueguen Mikael
h1.  Calculateur @Thor@
39 151 Gueguen Mikael
40 81 Gueguen Mikael
h2. PBS
41 26 Gueguen Mikael
42 36 Gueguen Mikael
h3. [[introduction]]
43 36 Gueguen Mikael
44 70 Gueguen Mikael
h3. création de script de soumission, soumission et suivi
45 26 Gueguen Mikael
46 27 Gueguen Mikael
* [[principales directives de PBS]]
47 34 Gueguen Mikael
48 37 Gueguen Mikael
* [[commandes PBS]]
49 1 MOREL Alexandre
50 38 Gueguen Mikael
* [[ variables définies à la soumission d'un job]]
51 62 Gueguen Mikael
52 84 Gueguen Mikael
* [[ files définies ]]  pour les calculateurs
53 1 MOREL Alexandre
54 1 MOREL Alexandre
55 1 MOREL Alexandre
* [[ dépendances entre jobs]]
56 1 MOREL Alexandre
57 1 MOREL Alexandre
* [[ jobs array]]
58 1 MOREL Alexandre
 
59 1 MOREL Alexandre
60 1 MOREL Alexandre
h3. codes de retour suite à l'arrêt d'un calcul 
61 1 MOREL Alexandre
62 1 MOREL Alexandre
* [[codes de retour]]
63 86 Gueguen Mikael
64 87 Gueguen Mikael
h3. [[ exemples de scripts ]]
65 80 Gueguen Mikael
 
66 1 MOREL Alexandre
67 80 Gueguen Mikael
-----------------------------------------------------
68 80 Gueguen Mikael
69 80 Gueguen Mikael
h1. Machine de calcul MPI, THOR
70 1 MOREL Alexandre
71 147 GUICHARD Mikael
p. 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). 
72 80 Gueguen Mikael
73 80 Gueguen Mikael
74 139 Gueguen Mikael
p. 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@.
75 80 Gueguen Mikael
76 80 Gueguen Mikael
p=. !{width: 20%}IMG_1361.JPG!  !{width: 40%}archi_thor.png! 
77 80 Gueguen Mikael
78 80 Gueguen Mikael
La connexion à la machine se fait à l'adresse @thor dot univ-poitiers dot fr@ par @ssh@ sur le port 86 :
79 1 MOREL Alexandre
80 1 MOREL Alexandre
<pre><code>ssh -p 86 -X homer at thor  dot univ-poitiers dot fr</code></pre>
81 1 MOREL Alexandre
82 2 MOREL Alexandre
83 7 Gueguen Mikael
p. monitoring : http://thor-ganglia.univ-poitiers.fr
84 4 Gueguen Mikael
85 50 Gueguen Mikael
h2. [[librairies MPI]]
86 50 Gueguen Mikael
87 1 MOREL Alexandre
h2. [[Compilateurs]]
88 116 Gueguen Mikael
89 116 Gueguen Mikael
h2. [[Profilage de code MPI]]
90 64 Gueguen Mikael
91 144 Gueguen Mikael
h2. [[Codes de pré/post traitement]]
92 144 Gueguen Mikael
93 93 Gueguen Mikael
h2. Codes installés
94 2 MOREL Alexandre
95 57 Gueguen Mikael
Les codes installées sont à utilisés avec l'utilitaire module pour le chargement adhoc des variables d'environnement :
96 57 Gueguen Mikael
<pre>
97 57 Gueguen Mikael
[homer@thor ~]$ module avail codes
98 57 Gueguen Mikael
99 57 Gueguen Mikael
------------------------------------------------------- /sw/Modules/modulefiles -------------------------------------------------------
100 57 Gueguen Mikael
codes/abinit/7.10.1   codes/lammps/2013     codes/saturne/3.2.1   codes/vasp/5.3/kpar   codes/wien2k/2014
101 57 Gueguen Mikael
codes/espresso/5.1.1  codes/openfoam/2.3.1  codes/vasp/5.3/gamma  codes/vasp/5.3/noncol codes/zebulon/Z8.6
102 57 Gueguen Mikael
</pre>
103 57 Gueguen Mikael
104 121 Gueguen Mikael
* [[spin_wien|Code WIEN2k]]
105 2 MOREL Alexandre
* [[spin_vasp|Code VASP]]
106 9 Gueguen Mikael
* [[spin_lammps|Code LAMMPS]]
107 11 Gueguen Mikael
* [[spin_abinit| Abinit]]
108 12 Gueguen Mikael
* [[spin_espresso| Espresso]]
109 13 Gueguen Mikael
* [[spin_saturne| Code Saturne]]
110 13 Gueguen Mikael
* [[spin_abq| abaqus]]
111 16 Gueguen Mikael
* [[spin_openfoam| foam]]
112 145 Gueguen Mikael
* [[spin_dakota|Dakota]]
113 16 Gueguen Mikael
114 149 Gueguen Mikael
h2. librairies scientifiques installées
115 14 Gueguen Mikael
116 56 Gueguen Mikael
les librairies dynamiques possèdent généralement un module associé afin de charger correctement l'environnement :
117 56 Gueguen Mikael
<pre>
118 157 Gueguen Mikael
[homer@thor ]$ module av lib
119 157 Gueguen Mikael
120 157 Gueguen Mikael
--------------------------------- /sw/Modules/modulefiles ----------------------------------
121 157 Gueguen Mikael
lib/adios/1.9.0                lib/mumps/5.0.0
122 157 Gueguen Mikael
lib/adios2/2.4.0               lib/mumps/5.1.2
123 157 Gueguen Mikael
lib/boost/1.55                 lib/netcdf/4.4.0
124 157 Gueguen Mikael
lib/boost/1.67                 lib/netcdf/4.5.0
125 157 Gueguen Mikael
lib/boost/1.70_gcc52           lib/netcdf/ifort/4.4.4
126 157 Gueguen Mikael
lib/boost/1.70_intel18         lib/netcdf/ifort/4.4.4_V2
127 157 Gueguen Mikael
lib/cgns/3.1.4                 lib/openjpeg/2.3.0
128 157 Gueguen Mikael
lib/curl/7.59.0                lib/parmetis/4.0.3
129 157 Gueguen Mikael
lib/eccodes/2.8.0              lib/petsc/3.4.3-opt
130 157 Gueguen Mikael
lib/fftw/3.3.4                 lib/petsc/3.5.2-opt
131 157 Gueguen Mikael
lib/fishpack/4.1               lib/petsc/3.6.3-opt
132 157 Gueguen Mikael
lib/gsl/2.4                    lib/petsc/3.7.2-opt
133 157 Gueguen Mikael
lib/hdf5/intel/1.10.1          lib/qt/5.9.1
134 157 Gueguen Mikael
lib/itk/4.13.0                 lib/scotch/6.0.3
135 157 Gueguen Mikael
lib/metis/5.1.0                lib/tcltk/8.6.5
136 157 Gueguen Mikael
lib/mpl_toolkits.basemap/1.0.7 lib/vtk/5.10.1
137 157 Gueguen Mikael
lib/mumps/4.10.0               lib/vtk/7.1.0
138 56 Gueguen Mikael
</pre>
139 56 Gueguen Mikael
140 58 Gueguen Mikael
* [[spin_vtk| VTK]]  visualization toolkit
141 55 Gueguen Mikael
* [[spin_boost| BOOST]] librairie c++ 
142 1 MOREL Alexandre
* [[PETSc]] librairie de calcul parallèle 
143 141 Gueguen Mikael
* [[eigen]] librairie c++ pour le calcul
144 141 Gueguen Mikael
* [[ITK]] librairie c++ pour le traitement d'image
145 160 Gueguen Mikael
* [[hdf5]] I/O
146 28 Gueguen Mikael
147 155 Gueguen Mikael
h2. [[ utilitaires ]] (@git, blcr, perfboost@)
148 119 Gueguen Mikael
149 98 Gueguen Mikael
h2. [[ Système de fichier LUSTRE]]
150 1 MOREL Alexandre
151 97 Gueguen Mikael
152 97 Gueguen Mikael
153 97 Gueguen Mikael
h2.  Commandes
154 97 Gueguen Mikael
155 97 Gueguen Mikael
h3. espace disque
156 28 Gueguen Mikael
157 28 Gueguen Mikael
* Connaitre  l'espace utilisé sur un répertoire
158 28 Gueguen Mikael
<pre>
159 28 Gueguen Mikael
[homer@thor]$ du -sh
160 28 Gueguen Mikael
376K	.
161 28 Gueguen Mikael
</pre>
162 31 Gueguen Mikael
163 126 Gueguen Mikael
h2.  commandes propres à *thor*
164 31 Gueguen Mikael
165 124 Gueguen Mikael
166 127 Gueguen Mikael
*ces scripts sont localisés sous /sw/tools/bin. Pour les utiliser, ajoutez ce chemin au @PATH@ dans votre @.bashrc@*
167 31 Gueguen Mikael
<pre>
168 31 Gueguen Mikael
PATH=$PATH:/sw/tools/bin
169 124 Gueguen Mikael
</pre>
170 124 Gueguen Mikael
171 143 Gueguen Mikael
* @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_) :
172 124 Gueguen Mikael
<pre>
173 132 Gueguen Mikael
[homer@thor]$ pbs_queue -h
174 125 Gueguen Mikael
usage: pbs_queue [-h] [--verbose]
175 125 Gueguen Mikael
176 125 Gueguen Mikael
         Report queue information
177 125 Gueguen Mikael
         --------------------------------
178 125 Gueguen Mikael
             Col 1 : name of queue
179 125 Gueguen Mikael
             Col 2 : Max Possible Walltime
180 125 Gueguen Mikael
             Col 3 : Max number  of Possible running job for one user in this queue
181 125 Gueguen Mikael
             Col 4 : Max number of Possible running job for overall users in this queue
182 125 Gueguen Mikael
             Col 5 : Max number  of Possible Queued job for one user in this queue
183 125 Gueguen Mikael
             Col 6 : Max number  of Possible Queued job for overall users in this queue
184 125 Gueguen Mikael
             Col 7 : Priority Value for this queue
185 125 Gueguen Mikael
             Col 8 : number of Jobs (running and queued)
186 125 Gueguen Mikael
             Col 9 : number of Running jobs
187 125 Gueguen Mikael
             Col 10 : number of Queued jobs
188 125 Gueguen Mikael
189 133 Gueguen Mikael
[homer@thor]$ pbs_queue
190 124 Gueguen Mikael
=====================================================================================================
191 124 Gueguen Mikael
     Queue        Max       MaxRun    MaxRun  MaxQueued MaxQueued Priority  Current  Running  Queued
192 124 Gueguen Mikael
               Walltime     /user    forall     /user    forall             Jobs     Jobs     Jobs
193 124 Gueguen Mikael
=====================================================================================================
194 124 Gueguen Mikael
     workq      --         0         0         0         0         -         0         0         0
195 124 Gueguen Mikael
    default     --         0         1         0         0         -        13         0        13
196 124 Gueguen Mikael
     large   30:00:00      1         2         1         2        100        1         0         1
197 124 Gueguen Mikael
  small_long 600:00:00     8         8         5        10        20        10         5         5
198 124 Gueguen Mikael
    medium   90:00:00      4         4         6        10        300        9         4         5
199 124 Gueguen Mikael
    normal   110:00:00     5        10        10        15        300       15         3        12
200 124 Gueguen Mikael
     small   96:00:00      0        10         4        10        60        10         4         6
201 124 Gueguen Mikael
     test    01:00:00      0         6         1         6        150        1         1         0
202 124 Gueguen Mikael
    R328002  720:00:00     0         0         0         0         -         7         7         0
203 124 Gueguen Mikael
    S328032  12:00:00      0         0         0         0         -         0         0         0
204 124 Gueguen Mikael
    R328225  4055:00:00     0         0         0         0         -        18        13         5
205 124 Gueguen Mikael
Sorting Jobs policy use : 5*job_requested_cpus+queue_priority+prio+eligible_time/3600.0
206 31 Gueguen Mikael
</pre>
207 31 Gueguen Mikael
208 31 Gueguen Mikael
* @qmem@ : permet de tracer l'utilisation mémoire d'un job
209 123 Gueguen Mikael
<pre>
210 132 Gueguen Mikael
[homer@thor 5cycl]$ qmem --job=339337
211 123 Gueguen Mikael
Memory Usage for job : 339337
212 123 Gueguen Mikael
-------------------------------
213 123 Gueguen Mikael
-> ncpu per host requested : 20
214 123 Gueguen Mikael
-> number of host requested : 4
215 123 Gueguen Mikael
user : tnakano,JID : 339337,
216 123 Gueguen Mikael
host : r1i7n0 r1i7n1 r1i7n2 r1i7n3
217 123 Gueguen Mikael
	-> r1i7n0 : RAM mem = 14.2385063171387	 (GB) ; TOT mem = 19.9174461364746 (GB)
218 123 Gueguen Mikael
	-> nb user pid : 24
219 123 Gueguen Mikael
	-> r1i7n1 : RAM mem = 13.5929222106934	 (GB) ; TOT mem = 24.9528999328613 (GB)
220 123 Gueguen Mikael
	-> nb user pid : 24
221 123 Gueguen Mikael
	-> r1i7n2 : RAM mem = 14.2325859069824	 (GB) ; TOT mem = 25.5949440002441 (GB)
222 123 Gueguen Mikael
	-> nb user pid : 24
223 123 Gueguen Mikael
	-> r1i7n3 : RAM mem = 13.8947525024414	 (GB) ; TOT mem = 25.2552146911621 (GB)
224 123 Gueguen Mikael
	-> nb user pid : 24
225 123 Gueguen Mikael
226 123 Gueguen Mikael
</pre>
227 122 Gueguen Mikael
* @gload@ : charge machine donnée par l'outil de monitoring ganglia 
228 31 Gueguen Mikael
<pre>
229 31 Gueguen Mikael
[homer@thor]$ gload
230 31 Gueguen Mikael
		total cpus available  : 2460
231 31 Gueguen Mikael
		total used nodes      : 110
232 31 Gueguen Mikael
		total used process    : 1969
233 31 Gueguen Mikael
		1mn load on thor      : 78.9272357723577 %
234 31 Gueguen Mikael
		idle load on thor     : 20.4073170731707 %
235 31 Gueguen Mikael
 
236 31 Gueguen Mikael
</pre> 
237 95 Gueguen Mikael
* @showq, pestat, ustat@ : commandes supplémentaires pbs
238 59 Gueguen Mikael
* @pbsn@ : liste les noeuds et leurs états (@down, job-exclusive, free@)
239 61 Gueguen Mikael
> * connaitre les noeuds libres :
240 59 Gueguen Mikael
> <pre>
241 60 Gueguen Mikael
[homer@thor]$ pbsn |grep free
242 60 Gueguen Mikael
r1i4n11	free	65000000kb	20
243 60 Gueguen Mikael
r1i4n15	free	65000000kb	20
244 60 Gueguen Mikael
r1i5n13	free	65000000kb	20
245 60 Gueguen Mikael
r1i7n9	free	65000000kb	20
246 60 Gueguen Mikael
</pre>
247 61 Gueguen Mikael
> * compte le nombre de noeuds utilisés 
248 59 Gueguen Mikael
><pre>
249 60 Gueguen Mikael
[homer@thor ~]$ pbsn | grep job | wc -l
250 59 Gueguen Mikael
31
251 1 MOREL Alexandre
</pre> 
252 112 Gueguen Mikael
253 112 Gueguen Mikael
* @running_job_end@ renvoi le nombre de jours restants des calculs en run
254 110 Gueguen Mikael
><pre>
255 111 Gueguen Mikael
[homer@thor ~]$ running_job_end
256 110 Gueguen Mikael
       JID                user               date
257 110 Gueguen Mikael
----------------------------------------------------
258 1 MOREL Alexandre
   226217.thor           dmagne       24 days, 23:50:00
259 110 Gueguen Mikael
   226279.thor           dmagne       24 days, 23:50:00
260 110 Gueguen Mikael
   226280.thor           dmagne       24 days, 23:50:00
261 112 Gueguen Mikael
 ...
262 115 Gueguen Mikael
</pre>