Wiki » History » Version 153

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