Wiki » History » Version 145

Gueguen Mikael, 03/28/2018 04:50 PM

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