Módosítások

Budapest2 klaszter

5 314 bájt hozzáadva, 2015. május 20., 11:46
nincs szerkesztési összefoglaló
rsync -avuP --delete $HOME/DIRECTORY /mnt/fhgfs/home/$USER
</pre>
 
== SLURM ütemező használata ==
A szupergépen CPU óra (gépidő) alapú ütemezés működik. A felhasználóhoz tartozó Slurm projektek (Account) állapotáraól a következő parancs ad információt:
<code>
sbalance
</code>
A második oszlopban (Usage) az egyes felhasználók elhasznált gépideje, a negyeik oszlopban pedig a számla összesített gépideje látható. Az utolsó két oszlop a maximális (Account Limit) és a még alérhető (Available) gépidőről ad tájékoztatást.
<pre>
Scheduler Account Balance
---------- ----------- + ---------------- ----------- + ------------- -----------
User Usage | Account Usage | Account Limit Available (CPU hrs)
---------- ----------- + ---------------- ----------- + ------------- -----------
bob * 7 | foobar 7 | 1,000 993
alice 0 | foobar 7 | 1,000 993
</pre>
 
=== A gépidő becslése ===
Nagyüzemi (production) futtatások előtt gépidőbecslést érdemes végezni. Ehhez a következő parancs használható:
<code>
sestimate -N NODES -t WALLTIME
</code>
ahol a <code>NODES</code> a lefoglalni kívánt node-ok száma, a <code>WALLTIME</code> pedig a futás maximális ideje.
 
'''Fontos, hogy a lefoglalni kívánt gépidőt a lehető legpontosabban adjuk meg, mivel az ütemező ez alapján is rangsorolja a futtatásra váró feladatokat. Általában igaz, hogy a rövidebb job hamarabb sorra kerül. Érdemes minden futás idejét utólag az <code>sacct</code> paranccsal is ellenőrizni.'''
 
=== Állapotinformációk ===
Az ütemezőben lévő jobokról az <code>squeue</code>, a klaszter általános állapotáról az <code>sinfo</code> parancs ad tájékoztatást. Minden beküldött jobhoz egy egyedi azonosítószám (JOBID) rendelődik. Ennek ismeretében további információkat kérhetünk. Feladott vagy már futó job jellemzői:
<code>
scontrol show job JOBID
</code>
 
Minden job egy ún. számlázási adatbázisba (accounting) is bekerül. Ebből az adatbázisból visszakereshetők a lefuttatott feladatok jellemzői és erőforrás-felhasználás statisztikái. A részletes statisztikát a következő paranccsal tudjuk megnézni:
<code>
sacct -l -j JOBID
</code>
 
A felhasznált memóriáról a következő parancs ad tájékoztatást:
<code>
smemory JOBID
</code>
 
A lemezhasználatról pedig a
<code>
sdisk JOBID
</code>
 
==== Slurm figyelmeztető üzenetek ====
<pre>
Resources/AssociationResourceLimit - Erőforrásra vár
AssociationJobLimit - Nincs elég CPU idő vagy a maximális CPU szám le van foglalva
Piority - Alacsony prioritás miatt várakozik
</pre>
Az utóbbi esetben, csőkkenteni kell a job által lefoglalni kívánt időt. Egy adott projekt részére maximálisan 512 CPU-n futhatnak jobok egy adott időben.
 
Az ütemezőben 3 feladat van. Az első egy arrayjob, éppen erőforrásra vár (PENDING). A második egy MPI job, ami 4 node-on fut már 25 perce (TIME). A harmadik egy egy node-os OMP futtatás, éppen most indult el. A feladatik nevei (NAME) egyénileg adható meg. Rövid, informatív neveket érdemes adni.
<pre>
squeue -l
 
Wed Oct 16 08:30:07 2013
JOBID PARTITION NAME USER STATE TIME TIMELIMIT NODES NODELIST(REASON)
591_[1-96] normal array alice PENDING 0:00 30:00 1 (None)
589 normal mpi bob RUNNING 25:55 2:00:00 4 cn[05-08]
590 normal omp alice RUNNING 0:25 1:00:00 1 cn09
</pre>
 
Ennek a 2 node-os batch jobnak a jellemző memóriaterhelés a következő volt: kb. 10GB virtuális és 6.5GB RSS memóriát használt el node-onként.
<pre>
smemory 430
 
MaxVMSize MaxVMSizeNode AveVMSize MaxRSS MaxRSSNode AveRSS
---------- -------------- ---------- ---------- ---------- ----------
10271792K cn06 10271792K 6544524K cn06 6544524K
10085152K cn07 10085152K 6538492K cn07 6534876K
</pre>
 
==== CPU felhasználás ellenőrzése ====
Nagyon fontos meggyőződni arról, hogy az alkalmazás kihasználja-e a rendelkezésre álló gépidőt. Egy futó alkalmazás a következő paranccsal tudunk monitorozni:
<code>
sjobcheck JOBID
</code>
 
Ez a job 4 node-on fut. A LOAD csoport a gép általános terheléséről ad információt és kb. a core-ok számával egyezik meg. A helyes felhasználásról a CPU csoport ad tájékoztatást. Ideális esetben a <code>User</code> oszlop értékei 90 fölött vannak. Ez alatt valamilyen probléma lépett fel és a futást érdemes megszakítani.
<pre>
Hostname LOAD CPU Gexec
CPUs (Procs/Total) [ 1, 5, 15min] [ User, Nice, System, Idle, Wio]
cn08 24 ( 25/ 529) [ 24.83, 24.84, 20.98] [ 99.8, 0.0, 0.2, 0.0, 0.0] OFF
cn07 24 ( 25/ 529) [ 24.93, 24.88, 20.98] [ 99.8, 0.0, 0.2, 0.0, 0.0] OFF
cn06 24 ( 25/ 529) [ 25.00, 24.90, 20.97] [ 99.9, 0.0, 0.1, 0.0, 0.0] OFF
cn05 24 ( 25/ 544) [ 25.11, 24.96, 20.97] [ 99.8, 0.0, 0.2, 0.0, 0.0] OFF
</pre>
 
==== Licenszek ellenőrzése ====
Az elérhető és éppen használt licenszekről a következő parancs ad információt:
<code>
slicenses
</code>
214
szerkesztés

Navigációs menü