Felhasználói eszközök

Eszközök a webhelyen


slurm

A queue rendszer részletesebb bemutatása

A SLURM (Simple Linux Utility for Resource Management) rendszert használjuk. Ez a Lawrence Livermore National Laboratory fejlesztése.

Történeti áttekintést és más queue rendszerekkel összehasonlítást itt olvashat.

Legfontosabb parancsok

sbatch [param] scriptname.sh

Lefoglalja a kért erőforrásokat (node-okat) majd az egyik lefoglalt node-ban elindítja a kért scriptname.sh programot, 1 szálon. A script kimenete egy slurm-`job-id'.out file-ban képződik meg.

srun programname
  • sbatch scripten belül használva. Az sbatch által lefoglalt erőforrásban futtatja a megadott programot. Amennyiben a program egy script, úgy minden allokált magon elindít egy példányt.
  • Interaktívan használva. Lefoglalja a kért erőforrásokat (node-okat). Amennyiben a program egy script, úgy minden allokált magon elindít egy példányt. Megvárja, amíg a program(ok) véget érnek. Emiatt elsősorban rövidebb feladatokra, tesztelésre, hibakeresésre használható. Ha éppen üres a queue.
salloc [param]

Interaktívan használható. lefoglalja a kívánt erőforrásokat és shellt ad az indítási gépen (a fejgépen). Programfejlesztésre ajánljuk csak. Alkalmas arra, hogy a lefoglalt node -ra be lehessen interaktívan jelentkezni.

squeue

A queue rendszer állapotát írja ki. Milyen job-ok futnak, melyek várakoznak, stb.

sinfo

Az egész rendszerről ad egy áttekintő képet. Melyik partíción melyik node foglalt, melyik idle, melyik down.

scancel job-id

Ezzel lehet kilőni egy elindított jobot, a véget érése előtt. Ha nem adsz meg paramétert, akkor az összes jobodat (csak a tieidet) kilövi.

Legfontosabb kapcsolók, opciók:

Az alábbi kapcsolók egyaránt használhatók az sbatch, srun, salloc parancsoknál.

-p partition

A futtató partíció neve. Lehetséges értékek: hpc2019, login, flocking.

--nodes nodecount

Az allokálandó node-ok száma. Egyéb kapcsoló nélkül a slurm úgy gondolja, hogy node-onkét 1 program (pthread, openMP) fog futni. Lásd a –ntasks-per-node kapcsolót. A hpc2019 partícióhoz ajánljuk.

-n 3

3 processzormag allokálása. (3 szál indítása). A login, hpc2019 és a flocking partícióhoz ajánljuk.

Példák 16 szálú MPI programok indítására

Az alkalmazás természetétől függ, hogy hány szálon lesz a leggyorsabb. Előre megmondani nem tudjuk. Az eddig telsztelt MPI programok 100 szálon nem voltak gyorsabbak, mint 50 szálon. A leggyakoribb maximlális futásteljesítményt 20-50 szál között adták. Gyakori még, hogy a program logikája csak kettőhatvány szállal működik jól.

sbatch --nodes 1 --ntasks-per-node=16 scriptname.sh

Ez 1 node-ot allokál. Ezen a node-on indít 16 szálat.

sbatch --nodes 2 --ntasks-per-node=8 scriptname.sh

Ez 2 node-ot allokál. Mindkét node-on indít 8-8 szálat.

sbatch --nodes 4 --ntasks-per-node=4 scriptname.sh

Ez 2 node-ot allokál. Mindkét node-on indít 8-8 szálat.

sbatch --nodes 16 --ntasks-per-node=1 scriptname.sh

Ez 16 node-ot allokál. Mind a 16 node-on indít 1-1 szálat.

sbatch -n 16 scriptname.sh

Ez „valahogy” elindítja a programot 16 szálon. Ahogy a rendelkezésre álló erőforrások lehetővé teszik. 1 node-on az egészet, vagy 16 node-on egy-egy szálat.

Másfajta (nem MPI) programok indítása

Bővebben a swquide oldalon.

slurm.txt · Utolsó módosítás: 2021/03/03 00:26 szerkesztette: maulis