„Budapest2 klaszter” változatai közötti eltérés
a (→Adatszinkronizáció) |
|||
33. sor: | 33. sor: | ||
Nagyobb fájlok ill. könyvtárstruktúrák szinkronizálásához a következő parancsokat kell használni | Nagyobb fájlok ill. könyvtárstruktúrák szinkronizálásához a következő parancsokat kell használni | ||
<pre> | <pre> | ||
− | Fel: rsync -a -e ssh DIRECTORY USER@login. | + | Fel: rsync -a -e ssh DIRECTORY USER@login.budapest2.hpc.niif.hu:/home/USER |
Le : rsync -a -e ssh USER@login.budapest2.hpc.niif.hu:/home/USER/DIRECTORY | Le : rsync -a -e ssh USER@login.budapest2.hpc.niif.hu:/home/USER/DIRECTORY | ||
</pre> | </pre> |
A lap 2015. május 20., 11:47-kori változata
Klaszter | Budapest2 |
Típus | HP |
core / node | 10 × 2 Xeon E5-2680v2 2.80GHz |
GPU / node | 2 × Nvidia K20 |
CN szám | 14 |
Tartalomjegyzék
[elrejtés]Belépés
ssh USER@login.budapest2.hpc.niif.hu
Nem alapértelmezett kulcs használata esetén a -i KULCS
kapcsolóval megadása szükséges (SSH és SCP parancsok).
Fájlok másolása SCP-vel
Letöltés a HOME könyvtárból és feltöltés a HOME könyvtárba:
Fel: scp FILE USER@login.budapest2.hpc.niif.hu:FILE Le : scp USER@login.budapest2.hpc.niif.hu:FILE FILE
Adatszinkronizáció
Nagyobb fájlok ill. könyvtárstruktúrák szinkronizálásához a következő parancsokat kell használni
Fel: rsync -a -e ssh DIRECTORY USER@login.budapest2.hpc.niif.hu:/home/USER Le : rsync -a -e ssh USER@login.budapest2.hpc.niif.hu:/home/USER/DIRECTORY
A törölt fájlok szinkronizálásához a --delete
opciót kell megadni.
Felhasználói felület
rövid CWD
|
BUDAPEST2[login] ~ (0)$
| | |
HPC állomás | |
rövid gép név |
előző parancs exit kódja
Modul környezet
Az elérhető modulok listáját a következő paranccsal kapjuk meg:
module avail
a már betöltött modulok listáját:
module list
Alkalmazást a következő paranccsal tölthetünk be:
module load APP
A NIIF által beállított környezeti változókat nce
parancs listázza ki.
Adatok megosztása projekt tagok számára
Fájlok ill. könyvtárak megosztásához ACL-eket kell beállítani. A HOME könyvtárat más felhasználó (OTHER) számára olvashatóvá, így tehetjük
setfacl -m u:OTHER:rx $HOME
Addott könyvtárat (DIRECTORY) írahtóvá:
setfacl -m u:OTHER:rxw $HOME/DIRECTORY
A kiterjesztett jogokat a következő paranccsal kérhetjük le:
getfacl $HOME/DIRECTORY
Közös home könyvtár használata
A szuperszámítógépek login gépeit összekötő közös fájlrendszer a következő könyvtár alatt található:
/mnt/fhgfs/home/$USER
Biztonsági mentést a közös könyvtárba a következő paranccsal tudunk végezni:
rsync -avuP --delete $HOME/DIRECTORY /mnt/fhgfs/home/$USER
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:
sbalance
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.
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
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ó:
sestimate -N NODES -t WALLTIME
ahol a NODES
a lefoglalni kívánt node-ok száma, a WALLTIME
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 sacct
paranccsal is ellenőrizni.
Állapotinformációk
Az ütemezőben lévő jobokról az squeue
, a klaszter általános állapotáról az sinfo
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:
scontrol show job JOBID
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:
sacct -l -j JOBID
A felhasznált memóriáról a következő parancs ad tájékoztatást:
smemory JOBID
A lemezhasználatról pedig a
sdisk JOBID
Slurm figyelmeztető üzenetek
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
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.
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
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.
smemory 430 MaxVMSize MaxVMSizeNode AveVMSize MaxRSS MaxRSSNode AveRSS ---------- -------------- ---------- ---------- ---------- ---------- 10271792K cn06 10271792K 6544524K cn06 6544524K 10085152K cn07 10085152K 6538492K cn07 6534876K
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:
sjobcheck JOBID
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 User
oszlop értékei 90 fölött vannak. Ez alatt valamilyen probléma lépett fel és a futást érdemes megszakítani.
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
Licenszek ellenőrzése
Az elérhető és éppen használt licenszekről a következő parancs ad információt:
slicenses