Felhasználói eszközök

Eszközök a webhelyen


queuecomparison

Queue rendszerek bevezetés

Nagy számítási kapacitású rendszereknél elkerülhetetlenül szükség van arra hogy az alkalmazások futását valamilyen módon összehangoljuk, és megszervezzük az erőforrások elosztását. Mainframe rendszereken ennek nagy hagyományai vannak. A nagy cluster rendszerek megjelenésével szükségessé vált hasonló szoftverek írása nyílt rendszerek számára is. Korai példái ennek a Condor, az NQS (Network Queuing System) és az LSF (Load Sharing Facility). A modern queue rendszerek ezeknek leszármazottai. Talán a legelterjedtebb a PBS (Parallel Batch System) illetve Torque. Az IBM ehhez hasonló programja a LoadLeveler.

Mivel ezek az eszközök nem voltak problémamentesek, a Lawrence Livermore Laboratóriumban egy teljesen új queue rendszert fejlesztettek ki, ez a SLURM.

A queue rendszer a felhasználó rendelkezésére bocsájtja node-ok egy csoportját arra az időre, amíg a felhasználó programja lefut. Lehetővé teszi hogy a felhasználó programot indíthasson, azt leállíthassa, illetve annak futását megfigyelhesse. A felhasználó megadhatja, hogy milyen erőforrásokra van szüksége (nódusok száma, memória, szükséges processzorok/core-ok száma, esetleges extra feature-ok mint a hálózati interface típusa.) Az erőforrásokra limitet lehet megadni (esetleg maga a queue is betartat valamilyen limitet) melynek túllépése esetén a program abortál. A queue rendszer ütemezője megkeresi a feltételeknek eleget tevő node-okat, elegendő szabad node esetén a programot elindítja, egyébként pedig várakoztatja, ameddig el nem tud indulni.

Az erőforrások csoportokba szervezhetők, melyeket a SLURM partícióknak hív, ezeket rendszerint queue-nak szokták hívni. Ezekben a dokumentumokban mindkét terminológiát használjuk.

Esetünkben, mivel a node-ok száma viszonylag kicsi és az erőforrások homogének, az erőforrások típusa szerint definiáltuk a partíciókat. Egy partíció a fejgép a maga processzoraival, ez a nagy memóriaigényű SMP joboknak. A második partíció az új számoló node-okból áll. A harmadik pedig a régi IBM blade-eket foglalja magába.

Összehasonlítás

A SLURM alapvetően a régi queue rendszerekhez hasonlóan működik. A fontosabb parancsok:

Funkció PBS LoadLeveler SLURM
Interaktív futtatás mpirun poe srun
Jobinditás qsub llsubmit sbatch
Node-ok megadása -lnodes-rmpool -N vagy –nodes=
Taskok száma node-onként -I -l mppwidth- -n
Queue/partíció megadása -q - -p
Futó jobok listázása qstat llq squeue
Node-ok listázása qstat -an llstatus -l sinfo
Job leállítása qkill llcancel scancel
Jobnév -N - -J
Levél küldése -m abe automatikus –mail-type=ALL
Userid, amire a levél megy -M - –mail-user
queuecomparison.txt · Utolsó módosítás: 2013/02/01 18:23 szerkesztette: dancsa