Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s...

115
Korištenje računalnog klastera Isabella Emir Imamagić Sveučilišni Računski Centar (Srce)

Transcript of Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s...

Page 1: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Korištenje računalnog klastera Isabella

Emir Imamagić

Sveučilišni Računski Centar (Srce)

Page 2: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Sadržaj

Korištenje računalnog klastera Isabella

Page 3: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Ciljevi

• Ciljevi• upoznavanje s klasterskom okolinom

• upoznavanje sa sustavom za upravljanje poslovima

• upravljanje izvođenjem poslova

• specifičnosti računalnog klastera Isabella

• Što nije pokriveno• instalacija i održavanje klastera

• paralelni programski modeli i tehnologije

• prevođenje, prilagodba i uspostava aplikacija na klasterima

Korištenje računalnog klastera Isabella

Page 4: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Sadržaj

• Uvod• Paralelno računarstvo

• Računalni klasteri

• Sustavi za upravljanje poslovima

• Računalni klaster Isabella

Korištenje računalnog klastera Isabella

Page 5: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Sadržaj

• Podnošenje poslova• Opisivanje poslova

• Tipovi poslova• Serijski

• Interaktivni

• Paralelni

• Polja poslova

• Varijable okoline

• Napredno opisivanje poslova

Korištenje računalnog klastera Isabella

Page 6: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Sadržaj

• Upravljanje poslovima• Zaustavljanje poslova

• Privremeno zaustavljanje poslova

• Ponovno izvođenje poslova

• Izmjena parametara posla

• Informacije o poslovima

• Raspodijeljeni datotečni sustav BeeGFS

• Sustav za nadzor• Ganglia

• ScaleMP

Korištenje računalnog klastera Isabella

Page 7: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Uvod

Korištenje računalnog klastera Isabella

Page 8: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Paralelno računarstvo

• Dijeljenje problema u manje zadatke koji se mogu izvoditi paralelno

• Razlozi• fizičke granice sklopovlja (brzina svjetlosti, elektrona, …)

• ekonomski razlozi (viša složenost – viša cijena)

• granice učinkovitosti (dvostruka brzina ne znači dvostruku učinkovitost)

• veličina aplikacije (prevelika količina memorije i vremena za izvođenje)

Korištenje računalnog klastera Isabella

Page 9: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Paralelno računarstvo

• Prednosti• veća brzina izvođenja aplikacije

• bolje iskorištenje dostupnih resursa

• Mane• složenost razvoja aplikacija

• Tri velike prepreke• sklopovlje

• programska potpora

• algoritmi

Korištenje računalnog klastera Isabella

Page 10: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Paralelno računarstvo

• Područja primjene• astronomija

• meteorologija i modeliranje klime

• životne znanosti

• znanosti o Zemlji

• inženjerski problemi

• geologija

• vojne primjene

• ekonomsko modeliranje

Korištenje računalnog klastera Isabella

Page 11: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Paralelno sklopovlje

• Superračunala• najmoćnija dostupna računala

• za zahtjevne računalne probleme

• Vektorska superračunala• Cray SV, NEC SX

• Cray-1: 1976, 160.00 MFLOPS8.8 M$

• Velika paralelna računala• MPP (engl. massively parallel

processors)

• Connection Systems CM1 i CM2, Earth Simulator, Blue Gene

• IBM – Blue Gene/L: 2005, 360.00 (70.72) TFLOPS, ~100 M$

Korištenje računalnog klastera Isabella

Page 12: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Računalni klasteri

• “... skup umreženih samostalnih računala koji djeluju kao jedinstven računalni resurs” R. Buyya

• Ekonomična alternativa za superračunala

• sastoji se od standardnih komponenata

• “superračunalo za siromahe”

• Ključni faktori (80-tih)• mikroprocesori

• brze mrežne tehnologije

• Parallel Virtual Machine (PVM)

Korištenje računalnog klastera Isabella

Page 13: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Računalni klasteri

• Beowulf klaster (1994)• T. Sterling & M. Baker

• NASA Ames Centre

• Danas• široko rasprostranjeni u paralelnom računarstvu

• 85,2% Top500 liste najmoćnijih računala

Korištenje računalnog klastera Isabella

Page 14: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Računalni klasteri

• Top 500• popis najmoćnijih

računala

• program za mjerenje - Linpack

• 85,2 % popisa čine grozdovi

• 1. Sunway TaihuLight, Kina, 93 Pflops(10,6M jezgri), 273 M$

Korištenje računalnog klastera Isabella

Page 15: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Arhitektura klastera

• Komponente klastera• računalni čvorovi

• mreža

• operacijski sustav (OS)

• klasterski posrednički sustav (engl. middleware)

Korištenje računalnog klastera Isabella

Page 16: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Beowulf arhitektura

• Frontend• pristupno računalo

• pristup pomoću protokola ssh

• središnji servisi klasterskih posredničkih sustava

• dijeljeni diskovni prostor (direktorij /home)

Korištenje računalnog klastera Isabella

Page 17: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Beowulf arhitektura

• Čvorovi• dedicirana računala za izvođenje poslova

• povezani privatnom mrežom

• lokalni diskovni prostor (/scratch)

• Privatne mreže• visoka propustnost

• malo kašnjenje

• moguće korištenje više mreža

Korištenje računalnog klastera Isabella

Page 18: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Komponente klastera

• Računalni čvorovi• poslužitelji, radne stanice, osobna računala

• 32-bitna i 64-bitna arhitektura procesora• Intel Xeon, Itanium, AMD Opteron, Alpha

• Mrežna tehnoloije• Gigabit Ethernet, Infiniband, Myrinet, Quadrics QsNet II

• OS• Linux, HPUX, Solaris, MS Windows

Korištenje računalnog klastera Isabella

Page 19: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Sustavi za upravljanje poslovima

• Upravlja izvođenjem korisničkih aplikacija na klasteru• engl. Job Management System (JMS), batch system

• Posao – izvođenje aplikacije

• Vrste poslova• batch – ne zahtijevaju korisničku interakciju (npr. dugotrajna

računanja, obrada podataka)

• interaktivni – zahtijevaju korisničku interakciju (npr. grafička sučelja, unos dodatnih podataka, potvrđivanje akcija)

• serijski – zahtijevaju samo jedan procesor za izvođenje

• paralelni – zahtijevaju više procesora za izvođenje

Korištenje računalnog klastera Isabella

Page 20: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Sustavi za upravljanje poslovima

• Korisničko sučelje za podnošenje i upravljanje poslovima• podnošenje, upravljanje, dohvat detaljnih informacija o izvođenju

• Omogućava definiranje politike korištenja klastera• npr. fair-share, rezervacije, prioriteti, …

• Optimizira korištenje čvorova• raspoređivanje poslova po čvorovima

• praćenje opterećenja čvorovova

Korištenje računalnog klastera Isabella

Page 21: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Sustavi za upravljanje poslovima

• Otvoreni problemi• spremanje stanja poslova (engl. checkpointing)

• selidba poslova između čvorova (engl. process migration)

• preemption

• rezervacija čvorova (engl. advance reservation)

• otpornost na greške u radu čvorova (engl. fault tolerance)

Korištenje računalnog klastera Isabella

Page 22: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Sustavi za upravljanje poslovima

Korištenje računalnog klastera Isabella

Page 23: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Sustavi za upravljanje poslovima

• Son of Grid Engine (SGE)• napredno raspoređivanje poslova (fair share, tickets)

• definiranje projekata i grupa korisnika

• detaljno opisivanje čvorova

• prilagodba okoline za specifične paralelne aplikacije

• Torque + Maui• napredno raspoređivanje poslova

• rezervacije resursa

• precizno definiranje resursa kod paralelnih poslova

Korištenje računalnog klastera Isabella

Page 24: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Dijeljeni i paralelni datotečni sustavi

• Dijeljeni datotečni sustavi• omogućavaju transparentan pristup datotekama smještenim na

udaljenom računalu

• rješenja: NFS, GFS, AFS, Coda

• Paralelni datotečni sustavi• paralelno spremanje datoteka na više podatkovnih elemenata

• učinkovito spremanje velikih datoteka

• rješenja: Lustre, GlusterFS, BeeGFS

Korištenje računalnog klastera Isabella

Page 25: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Vrste klastera

• Klasteri s visokom učinkovitosti • engl. High Performance Computing

• Klasteri s visokom propusnošću• engl. High Throughput

• veliki broj neovisnih zadataka

• nije bitna učinkovitost čvorova nego broj

• Klasteri s visokom dostupnošću• engl. High availability

• izbjegavanje SPOF (engl. Single Point Of Failure)

• komercijalne primjene

Korištenje računalnog klastera Isabella

Page 26: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Vrste klastera

• Klasteri za ravnomjerno opterećenje • engl. Load Balancing

• ostvaruju ravnomjerno opterećenje aplikacije na čvorovima

• primjer: web poslužitelj

• Hibridni klasteri• sadrže specifične uređaje

• npr. matematički uređaji, Graphics Processing Unit (GPU)

Korištenje računalnog klastera Isabella

Page 27: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Računalni klaster Isabella

• Računalni klaster na Srcu• dostupan cijeloj akademskoj zajednici

• Arhitektura• brza mreža Infiniband

• Son of Grid Engine

• dijeljeni datotečni sustav BeeGFS• koristi Infiniband

• visoka dostupnost frontenda i podatkovnih elementa

Korištenje računalnog klastera Isabella

Page 28: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Računalni klaster Isabella

• 40 računalnih čvorova

• 704 CPU procesorskih jezgri

• 5 TB radne memorije

• 110 TB trajnog podatkovnog prostora (/home)

• 90 TB privremenog dijeljenog podatkovnog prostora (/shared)

• Infiniband QDR (40 Gb/s) i FDR (56 Gb/s)

• ScaleMP vSMP• aplikacije vide jedan poslužitelj s 160 jezgri i 2 TB radne memorije

Korištenje računalnog klastera Isabella

Page 29: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Računalni klaster Isabella

Korištenje računalnog klastera Isabella

Page 30: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Računalni klaster Isabella - VELEbit

• Resurs nabavljen u suradnji s Ministarstvom zaštite okoliša i ekologije

• 64 računala čvora

• 1.792 CPU procesorskih jezgri

• 8 TB radne memorije

• 220 TB trajnog podatkovnog prostora (/velebit)

• 12 TB privremenog dijeljenog podatkovnog prostora na SSD-u (/velebit-ssd)

Korištenje računalnog klastera Isabella

Page 31: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Računalni klaster Isabella

• Web stranice• novosti, tehničke informacije i dokumenti

• http://isabella.srce.hr

• Web stranice za nadzor• http://tannat.srce.hr/ganglia

• http://tannat.srce.hr/velebit

• Služba pomoći• problemi s posredničkim sustavom i aplikacijama

• pomoć u pripremi korisničkih aplikacija

[email protected]

Korištenje računalnog klastera Isabella

Page 32: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Podnošenje poslova

Korištenje računalnog klastera Isabella

Page 33: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Podnošenje posla

• Komandno-linijski alat – qsub

• Sintaksa

• options – opcije za opisivanje poslova

• job_script – datoteka sa opcijama za opisivanje poslova

• Podnosi posao i vraća ID posla• ID posla se koristi za nadzor i upravljanje poslom

• Opcije• ekvivalentne opcijama koje se navode u datoteci za opisivanje

• opisane u nastavku …

Korištenje računalnog klastera Isabella

$ qsub [options] <job_script>

Page 34: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Provjera stanja poslova

• Naredba

• Prikazuje stanje svih poslova na klasteru

• Stanja poslova• qw – posao čeka u redu za izvođenje

• t – u tijeku je priprema za izvođenje posla

• r – posao u izvođenju

• Korisna opcija

• stanje poslova i čvorova

Korištenje računalnog klastera Isabella

$ qstat

$ qstat -f

Page 35: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Provjera stanja poslova

Korištenje računalnog klastera Isabella

$ qstat

job-ID prior name user state submit/start at queue slots

---------------------------------------------------------------------------------

2791 0.55500 blcr eimamagi r 07/04/2006 13:25:58 [email protected] 1

2792 0.60500 ParMPI eimamagi r 07/04/2006 13:31:43 [email protected] 4

2789 0.55500 Mgmt eimamagi r 07/04/2006 13:24:13 [email protected] 1

2790 0.55500 blcr eimamagi r 07/04/2006 13:25:58 [email protected] 1

Page 36: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Provjera stanja poslova

Korištenje računalnog klastera Isabella

$ qstat –f

queuename qtype used/tot. load_avg arch states

-------------------------------------------------------------------------

[email protected] BIPC 0/2 0.00 lx24-x86

----------------------------------------------------------------------------

[email protected] BIPC 0/2 0.00 lx24-x86

----------------------------------------------------------------------------

[email protected] BIPC 0/2 0.00 lx24-x86

----------------------------------------------------------------------------

[email protected] BIPC 0/2 0.00 lx24-x86

----------------------------------------------------------------------------

[email protected] BIPC 0/2 0.00 lx24-x86

----------------------------------------------------------------------------

[email protected] BIPC 1/2 0.26 lx24-x86

2789 0.55500 MgmtTask eimamagi r 07/04/2006 13:24:13 1

----------------------------------------------------------------------------

[email protected] BIPC 0/2 0.00 lx24-x86

----------------------------------------------------------------------------

[email protected] BIPC 0/2 -NA- lx24-x86 au

############################################################################

- PENDING JOBS - PENDING JOBS - PENDING JOBS - PENDING JOBS - PENDING JOBS

############################################################################

2790 0.00000 blcr_test eimamagi qw 07/04/2006 13:25:49 1

2791 0.00000 blcr_test eimamagi qw 07/04/2006 13:25:50 1

Page 37: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Opisivanje poslova

• Što se treba izvesti?

• Koji su argumenti?

• Gdje treba spremiti standardni izlaz i greške?

• Gdje se nalazi standardni ulaz?

• Koji podaci su potrebni za izvođenje poslova?

Korištenje računalnog klastera Isabella

Page 38: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Opisivanje poslova

• Gdje spremati privremene podatke i rezultate?

• Gdje je radni direktorij na čvorovima?

• Koje okoline varijable treba postaviti?

• Koliko procesora posao zahtjeva? Koju arhitekturu procesora?

• Koliko memorije, prostora na disku, vremena je potrebno?

Korištenje računalnog klastera Isabella

Page 39: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Opisivanje poslova

• Jezik za opisivanje poslova• omogućava opisivanje poslova

• dio je svakog sustava za upravljanje poslovima

• primjeri: izvođenje poslova na gridu, izvođenje u okolini s web servisima, sustavi za upravljanje poslovima na klasterima, …

• Jezik sustava SGE• datoteka je standardni shell

• atributi jezika se postavljaju kao dodatni parametri

Korištenje računalnog klastera Isabella

#$ -<parameter1> <value1>

#$ -<parameter2> <value2>

<command1>

<command2>

Page 40: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Osnovni parametri poslova

Korištenje računalnog klastera Isabella

Page 41: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Izvršna datoteka

• Lokacija korisničke datoteke

• Definira se kao i u standardnoj shell skripti

• exec.sge

• Podnošenje posla

Korištenje računalnog klastera Isabella

/bin/hostname

$ qsub exec.sge

Page 42: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Argumenti

• Argumenti aplikacije

• Definiraju se kao i u standardnoj shell skripti

• arg1.sge

• Definiranje parametara u pozivu qsub

• arg2.sge

• Podnošenje posla

Korištenje računalnog klastera Isabella

/bin/echo “Hello World”

/bin/echo $@

$ qsub arg2.sge “Hello World”

Page 43: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Ime posla

• Ime posla

• koristi se u prikazu stanja posla

• definira lokaciju podrazumijevanog izlaza i greške

• name.sge

Korištenje računalnog klastera Isabella

#$ -N <JobName>

#$ -N nameTest

/bin/hostname

Page 44: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Radni direktorij

• Direktorij u kojem se pokreće posao• bitan ukoliko aplikacija koristi relativne putanje

• definira lokaciju podrazumijevanog izlaza i greške

• Podrazumijevani je $HOME

• Trenutni direktorij (workDir1.sge)

• posao se pokreće u direktoriju u kojem se izvodi naredba qsub

• podrazumijevani izlaz i greška idu u trenutni direktorij

Korištenje računalnog klastera Isabella

#$ -cwd

Page 45: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Radni direktorij

• Proizvoljan direktorij (workDir2.sge)

• mora biti navedeno prije izvršne datoteke

• bitno – ne utječe na lokacije podrazumijevanog izlaza i greške

Korištenje računalnog klastera Isabella

cd <working_directory>

Page 46: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Standardni izlaz i greška

• Podrazumijevana lokacija• ako ime posla nije definirano

• inače

• $WD – radni direktorij

Korištenje računalnog klastera Isabella

$WD/<job_script>.o<job_id> - izlaz

$WD/<job_script>.e<job_id> - greška

$WD/<job_name>.o<job_id> - izlaz

$WD/<job_name>.e<job_id> - greška

Page 47: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Standardni izlaz i greška

• Opcije (outerr1.sge)

• Bitno: izlaz i greška se dodaju na postojeći sadržaj

• Spajanje izlaza i greške (outerr2.sge)

Korištenje računalnog klastera Isabella

#$ -o <job_output>

#$ -e <job_error>

#$ -j y

Page 48: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Standardni izlaz i greška

• Opcije mogu pokazivati na direktorij

• Datoteke izlaza i greške bit će imenovane kao i u podrazumijevanoj lokaciji

• Preporuča se koristiti kod polja poslova

Korištenje računalnog klastera Isabella

#$ -o outputDir/

#$ -e outputDir/

Page 49: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Varijable okoline

• Podrazumijevano ograničen skup varijabli

• Definiranje pojedinih varijabli (env1.sge)

• Postavljanje svih trenutnih varijabli (env2.sge)

• (veliko V)

• Postavljanje u shell datotekama• ~/.bashrc, ~/.profile, ~/.cshrc

• paziti koji shell posao koristi

Korištenje računalnog klastera Isabella

#$ -v <name1>=<value1>

#$ -v <nameN>=<valueN>

#$ -V

Page 50: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Ljuska

• Podrazumijevani definiran po redu poslova• trenutno je /bin/sh

• Opcija (shell.sge)

• Primjer

Korištenje računalnog klastera Isabella

#$ -S <shell>

#$ -S /bin/sh

Page 51: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Vježba

• $HOME/tutorial/basic

Korištenje računalnog klastera Isabella

exec.sge – izvršna datoteka

arg1.sge – argumenti

arg2.sge – argumenti(qsub arg2.sge arg)

name.sge – ime posla

workDir1.sge – trenutni radni direktorij

workDir2.sge – proizvoljni radni direktorij

outerr1.sge – definiranje izlaza i greške

outerr2.sge – spajanje izlaza i greške

env1.sge – definiranje varijabli okoline

env2.sge – postavljanje svih varijabli

shell.sge – odabir shella

Page 52: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Vrste poslova

Korištenje računalnog klastera Isabella

Page 53: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Interaktivni poslovi

• Koristi se posebna naredba – qrsh

• Sintaksa

• opcije – opis posla (kao kod qsub)

• Podnosi interaktivni posao ili otvara shell na čvoru

• Što ako nema slobodnih čvorova?• podnošenje se prekida

• moguće kontrolirati opcijom

Korištenje računalnog klastera Isabella

$ qrsh <options> [job]

#$ -now y|n

Page 54: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Paralelni poslovi

• SGE sadrži Parallel Environment (PE)• skripte za izvođenje paralelnih aplikacija kroz SGE

• Opcija

• postaviti PEName u mpi

• CPUs – broj procesora potreban za izvođenje posla

• CPURange: SGE će alocirati dostupan broj procesa iz skupa vrijednosti (preferira se veći broj)

• CPUMin – CPUMax

• CPUNum1,CPUNum2,CPUMin – CPUMax,CPUNum3

Korištenje računalnog klastera Isabella

#$ -pe <PEName> <CPUs>|<CPURange>

Page 55: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Paralelni poslovi

• Primjeri

• posao zahtjeva 4 CPU-a i PE mpi

• posao zahtjeva 2 ili 4 CPU-a i PE mpi

Korištenje računalnog klastera Isabella

#$ -pe mpi 4

#$ -pe mpi 2,4

Page 56: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Paralelni poslovi

• Relevantne varijable okoline (parallelEnv.sge)

• Primjeri• parallelHosts.sge – korištenje datoteke $TMPDIR/machines za

izvođenje naredbe /bin/date na dodijeljenim čvorovima

Korištenje računalnog klastera Isabella

$TMPDIR/machines – datoteka koja sadrži popis

dodijeljnih čvorova

$NSLOTS – broj procesora

$NHOSTS – broj čvorova

Page 57: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Paralelni poslovi

• Dostupni PE-ovi na Isabelli:• mpi - općeniti paralelni poslovi

• mpisingle - sve jezgre se dodjeljuju na jednom radnom čvoru

• mpismp - jezgre se dodjeljuju 2 po radnom čvoru

• mpismp_4 - jezgre se dodjeljuju 4 po radnom čvoru

• mpismp_8 - jezgre se dodjeljuju 8 po radnom čvoru

• vsmp - jezgre se dodjeljuju na ScaleMP vSMP čvoru

• gpu - GPU poslovi (ne koristi se više)

Korištenje računalnog klastera Isabella

Page 58: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Paralelni poslovi - MPI

• MPI okoline na Isabelli• MVAPICH2 2.0 (podrazumijevana)

• MVAPICH2 2.0 s prevodiocima GNU 4.9

• ScaleMP MPICH2 (podrazumijevana na ScaleMP)

• Intel MVAPICH2 2.0 (preporučena)

Korištenje računalnog klastera Isabella

$ module load mvapich2-x86_64

$ module load mvapich2-gcc49-x86_64

$ source /opt/ScaleMP/mpich2/1.4/etc/mpich2.sh

$ module load mvapich2-intel-x86_64

Page 59: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Paralelni poslovi - MPI

• Pokretanje posla• navesti naredbu module load ako nije podrazumijevana okolina

• pokretanje aplikacije (parallelMPI.sge):

• primjer aplikacije prevedene s MVAPICH2 2.0 s prevodiocima GNU 4.9:

Korištenje računalnog klastera Isabella

mpirun_rsh -np $NSLOTS -hostfile $TMPDIR/machines

/home/NPB.parallel

module load mvapich2-gcc49-x86_64

mpirun_rsh -np $NSLOTS -hostfile $TMPDIR/machines

/home/NPB.parallel.gcc49

Page 60: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Polje poslova

• Višestruko izvođenje aplikacije• svaki zadatak ima svoj ID (<ID_posla>.<ID_zadatka>)

• svaki zadatak se samostalno raspoređuje

• Opcija

• firstID – prvi ID

• lastID – posljednji ID

• step – korak rasta vrijednosti ID-ja između prvog i posljednjeg (podrazumijevano:1)

Korištenje računalnog klastera Isabella

#$ -t <firstID>:<lastID>:<step>

Page 61: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Polje poslova

• Primjer

• Pokreće 5 zadataka s ID-jevima: 1,3,5,7,9

• Relevantna varijabla okoline $SGE_TASK_ID• moguće je ulaz razdijeliti u više datoteka

• koristiti $SGE_TASK_ID za dodjeljivanje datoteka zadacima

Korištenje računalnog klastera Isabella

#$ -t 1:9:2

Page 62: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Polje poslova

• Standardni izlaz i greška• obavezno navesti relativnu putanju

• u suprotnom će izlaz i greška biti prepisani od pojedinih zadataka

• Primjeri:• jobArray.sge: primjer polja serijskih poslova

• parallelMPIJobArray.sge: primjer polja paralelnih poslova

Korištenje računalnog klastera Isabella

Page 63: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Napredno opisivanje poslova

Korištenje računalnog klastera Isabella

Page 64: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Privremeni rezultati

• Ne koristiti direktorije u $HOME• smanjuje učinkovitost aplikacije

• opterećuje frontend klastera

• opterećuje mrežu klastera

• Ne stvarati proizvoljne direktorije• u slučaju greške podaci ostaju na čvoru

• upitno vlasništvo nad direktorijima

• upitna učinkovitost pristupa direktorijima

Korištenje računalnog klastera Isabella

Page 65: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Privremeni rezultati

• Koristiti scratch ($TMPDIR)• /scratch/<jobID>.<taskID>.<queue>

• stvara se za pojedini posao (na svim čvorovima)

• automatski se uklanja po završetku posla

• scratch.sge – kako koristiti scratch direktorij

Korištenje računalnog klastera Isabella

Page 66: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Privremeni rezultati – BeeGFS

• Paralelni datotečni sustav BeeGFS

• Dostupan na Isabelli i Srce CRO NGI sjedištu• /shared

• Ukupno raspoloživo 90 TB

• Nema automatskog uklanjanja direktorija

• shared.sge – kako koristiti shared direktorij

Korištenje računalnog klastera Isabella

Page 67: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Resursi

• Omogućavanje boljeg raspoređivanja poslova• navođenje daje poslovima veći prioritet!

• Korisno u slučaju greške u programu• posao se zaustavi u grešci i okupira čvor

• posao sadrži memory leak

• Opcija

Korištenje računalnog klastera Isabella

#$ -l <resource>=<value>

Page 68: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Resursi

Korištenje računalnog klastera Isabella

arch – arhitektura čvora (e.g.lx26-x86, lx24-amd64)

hostname – adresa čvora (compute-0-1.local)

vmem – količina virtualne memorije (format: <num>K|M|G)

rss – količina stvarne memorije

stack – veličina stoga

data – ukupna količina memorije (bez stoga)

fsize – ukupna veličina datoteka

cpu – procesorsko vrijeme (format:

[<hours>:<min>:]<sec>)

rt – stvarno vrijeme

Page 69: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Resursi

• Resursi (osim hostname & arch) imaju• soft (s_<resource>) vrijednost

• hard (h_<resource>) vrijednost

• Bitno: ako se ne postavi ispravno, postavljanje vrijednosti resursa može uzrokovati prekid posla

• u pozadini SGE koristi naredbu ulimit

• Bitno: vrijednosti se ne mogu mijenjati za aktivne poslove

• Primjer

• posao zahtjeva stvarno vrijeme izvođenja od 48 sati

Korištenje računalnog klastera Isabella

#$ -l h_rt=48:0:0

#$ -l s_rt=48:0:0

Page 70: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Resursi

• SGE omogućava dodjeljivanje proizvoljnih parametara čvorovima

• Primjer (Isabella & različite platforme čvorova)

• Moguće vrijednosti

Korištenje računalnog klastera Isabella

#$ -l vendor=<value>

HP – compute-0,2-*, vsmp

Page 71: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Resursi

• Primjer (Isabella & tražena memorija)

• korisno za poslove koji zahtijevaju veliku količinu memorije

• ne postavlja ograničenje kao vmem

• ne osvježava se automatski

• količina memorije u izražena u GB koju posao treba za izvođenje jednog procesa

• Primjer posao zahtjeva 20 jezgri i 200 GB RAM-a

Korištenje računalnog klastera Isabella

#$ -l memory=<value>

#$ -pe mpi 20

#$ -l memory=10

Page 72: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Resursi

• Primjer (Isabella & traženi scratch prostor)

• korisno za poslove koji zahtijevaju veliku količinu prostora na scratchu

• ne postavlja ograničenje na korištenom prostoru

• ne osvježava se automatski

• količina memorije u izražena u GB koju posao treba za izvođenje jednog procesa

• Primjer posao zahtjeva 4 jezgre i 200 GB scratch prostora

Korištenje računalnog klastera Isabella

#$ -l scratch=<value>

#$ -pe mpisingle 4

#$ -l scratch=50

Page 73: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Resursi

• Primjeri• resourceHost.sge – zahtjeva adresu i arhitekturu

• resourceVendor.sge – zahtjeva atribut vendor

• resourceMemory.sge – zahtjeva nedovoljnu količinu memorije

• resourceTime.sge – zahtjeva nedovoljno procesorsko vrijeme izvođenja posla

• resourceMemory2.sge – zahtjeva veliku količinu memorije

• resourceScratch.sge – zahtjeva veliku količinu scratch prostora

• ulimit.sge - izlaz naredbe ulimit prilikom postavljanja ograničenja memorije

Korištenje računalnog klastera Isabella

Page 74: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Projekti

• Korisnici su podijeljeni u projekte• SGE koristi projekte za definiranje prioriteta i fair-share

• mogu se koristiti za naplaćivanje korištenja

• Podrazumijevani projekt je u definiciji korisnika

• Može se definirati opcijom

Korištenje računalnog klastera Isabella

#$ -P <projectName>

Page 75: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Red poslova

• SGE podržava više redova poslova• za različite vrste poslova, korisnika, …

• za različite vrste čvorova (interaktivni, veliki SMP-ovi)

• Može biti definiran opcijom

Korištenje računalnog klastera Isabella

#$ -q <queueName>

Page 76: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Red poslova

• Redovi na Isabelli• all.q

• red za serijske poslove

• parallel.q• red za paralelne poslove

• tecaj• red za potrebe tečaja

• velebit• red za potrebe projekta od MZOE

• vsmp.q• red za ScaleMP vSMP čvor

• vsmp-test.q• red za potrebe tečaja o ScaleMP

Korištenje računalnog klastera Isabella

Page 77: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Obavijesti

• Email obavijesti o izmjeni stanja poslova• korisno za dugotrajne poslove

• Definiranje email adrese

• Definiranje uvjeta u kojem se šalju obavijesti

• b – kod početka izvođenja

• a – kada je posao prekinut

• e – kada je posao završen

• n – ne slati obavijesti (podrazumijevana opcija)

Korištenje računalnog klastera Isabella

#$ -M <emailAddress>[,<emailAddress>]…

#$ -m aben

Page 78: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Obavijesti

• Primjer

• poslati obavijest na adresu [email protected] prilikom prekida ili završetka posla

Korištenje računalnog klastera Isabella

#$ -m ae

#$ -M [email protected]

Page 79: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Ponavljanje poslova

• Što prilikom greške u izvođenju?• problem na čvoru

• problem u poslu

• U nekim slučajevima je poželjno automatsko ponavljanje

• Opcija

Korištenje računalnog klastera Isabella

#$ -r y|n

Page 80: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Rezervacija čvorova

• SGE omogućava rezervaciju čvorova• prilikom raspoređivanja SGE rezervira čvorove

• bitno za višeprocesorske poslove

• Opcija

Korištenje računalnog klastera Isabella

#$ -R y|n

Page 81: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

SGE varijable okoline

Korištenje računalnog klastera Isabella

$JOB_ID – ID posla

$JOB_NAME – ime posla

$NSLOTS – broj dodijeljenih CPU-ova

$NHOSTS – broj dodijeljenih čvorova

$PE_HOSTFILE – datoteka sadrži popis dodijeljenih

čvorova

$SGE_O_PATH – vrijednost varijable PATH na frontendu

$SGE_O_WORKDIR – direktorij u kojem je pokrenut qsub

$SGE_STDOUT_PATH – lokacija datoteke za izlaz

$SGE_STDERR_PATH – lokacija datoteke za grešku

$SGE_TASK_ID – ID zadatka (vidi polja poslova)

$TMPDIR – privremeni direktorij posla

$QUEUE – ime reda poslova

Page 82: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Upravljanje poslovima

Korištenje računalnog klastera Isabella

Page 83: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Prikaz stanja poslova

• Naredba

• Korisne opcije

• p – poslovi koji čekaju u redu

• r – aktivni poslovi

• s – privremeno zaustavljeni aktivni poslovi

• h – privremeno zaustavljeni poslovi u redu

• detaljni prikaz stanja posla (npr. zašto se posao ne izvodi)

Korištenje računalnog klastera Isabella

$ qstat <options>

$ qstat –s rpsh

$ qstat –j

Page 84: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Prikaz stanja poslova

• prikaz stanja poslova i čvorova

• prikaz detaljnih informacija o čvorovima (resursi)

• dodatne informacije o poslovima (npr. projekti, prioriteti)

• detaljni podaci o prioritetima poslova

Korištenje računalnog klastera Isabella

$ qstat –f

$ qstat –F

$ qstat –ext

$ qstat –pri

Page 85: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Prikaz stanja poslova

• sažetak stanja pojedinih redova poslova

• detaljan prikaz informacija o jednom poslu

• filtriranje poslova prema resursima

• prikaz poslova u definiranom redu poslova

Korištenje računalnog klastera Isabella

$ qstat –g c

$ qstat –j <jobId>

$ qstat –l <resource>=<value>

$ qstat –q <queue>

Page 86: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Prikaz stanja poslova

• prikaz poslova od određenog korisnika (*-za sve)

• prikaz poslova koji koriste definiranu paralelnu okolinu

• dodatne informacije o traženim resursima

Korištenje računalnog klastera Isabella

$ qstat –u <user>

$ qstat –pe <name>

$ qstat –urg

Page 87: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Prikaz stanja poslova

• Korištenje filtera• bitno u produkciji sa stotinama poslova

• Primjer

• prikaz paralelnih poslova na strojevima tipa HP u redu poslova all.q

• prikaz svih poslova i čvorova korisnika pero na 64-bitnih čvorovima

Korištenje računalnog klastera Isabella

$ qstat –s r –pe mpi –l vendor=IBM –q all.q

$ qstat –s r –f –user pero –l arch=lx24-amd64

Page 88: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Prikaz radnih čvorova

• Naredba

• prikazuje broj procesora, jezgri, radne memorije po čvoru

• Ispis vrijednosti resursa

Korištenje računalnog klastera Isabella

$ qhost

$ qhost -F vendor,scratch,memory

Page 89: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Zaustavljanje poslova

• Naredba

• Moguće zaustaviti sve poslove korisnika

• Za zaglavljene poslove koristiti prisilno zaustavljanje

Korištenje računalnog klastera Isabella

$ qdel <jobID>

$ qdel –u <user>

$ qdel –f <jobID>

Page 90: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Privremeno zaustavljanje poslova

• Privremeno zaustavljanje poslova u redu

• Naredba

• Nema utjecaja za aktivne poslove

Korištenje računalnog klastera Isabella

$ qhold <jobID>

$ qrls <jobID>

Page 91: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Privremeno zaustavljanje poslova

• Korisno prilikom ponavljanja izvođenja• ukoliko je potrebno izmijeniti parametre posla

• npr. izmjena resursa

• Izmjene parametara kod ponavljanja izvođenja• privremeno zaustaviti posao (qhold)

• pokrenuti ponovno raspoređivanje posla (qmod –r)

• izmijeniti parametre (qalter)

• nastaviti izvođenje posla (qrls)

Korištenje računalnog klastera Isabella

Page 92: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Ponovno izvođenje poslova

• Ponovno raspoređivanje posla

• aktivni posao se zaustavlja i vraća u red poslova

• kada je čvor na kojem se posao izvodio nedostupan

• prethodno koristiti qhold ako se ne želi odmah ponoviti izvođenje posla

• Ponovno izvođenje posla

• podnosi se kopija posla

Korištenje računalnog klastera Isabella

$ qmod –r <jobID>

$ qmod –f –r <jobID>

$ qrerun <jobID>

Page 93: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Izmjena parametara posla

• Naredba

• Primjer

• onemogućiti automatsko ponovno izvođenje posla

• onemogućiti slanje email obavijesti

Korištenje računalnog klastera Isabella

$ qalter <options> <jobId>

$ qalter –r n –m n <jobId>

Page 94: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Informacije o poslovima

• Dohvat podataka o završenim poslovima• moguće koristiti isključivo za završene poslove

• Naredba

• Primjeri

• detaljne informacije o poslu <jobId>

• detaljne informacije o svim poslovima (velika količina podataka)

Korištenje računalnog klastera Isabella

$ qacct <options>

$ qacct –j <jobId>

$ qacct –j

Page 95: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Informacije o poslovima

• prikaz informacija o svim poslovima definiranog korisnika

• prikaz sažetka potrošnje definiranog korisnika• ako se ne definira <user> prikazuju se podaci za sve korisnike

• prikaz sažetka svih poslova koji su koristili definirani broj procesora• ako se ne definira <count> prikazuju se podaci za sve vrijednosti

Korištenje računalnog klastera Isabella

$ qacct –j –o <user>

$ qacct –o <user>

$ qacct –slots [<count>]

Page 96: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Informacije o poslovima

• prikaz informacija o svim poslovima za definirani projekt

• prikaz sažetka potrošnje definiranog projekta• ako se ne definira <projekt> prikazuju se podaci za sve projekt

Korištenje računalnog klastera Isabella

$ qacct –j –P <projekt>

$ qacct –P <projekt>

Page 97: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Informacije o poslovima

• prikaz informacija o svim poslovima za definirani red poslova

• prikaz sažetka potrošnje definiranog reda poslova• ako se ne definira <red> prikazuju se podaci za sve projekt

Korištenje računalnog klastera Isabella

$ qacct –j –q <red>

$ qacct –q <red>

Page 98: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Raspodijeljeni datotečni sustav BeeGFS

Korištenje računalnog klastera Isabella

Page 99: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

BeeGFS

• Raspodijeljeni podatkovni sustav

• Razvijen od strane Fraunhofer Institute for Industrial Mathematics (ITWM)

• inicijalno razvijen 2005. za potrebe HPC (engl. High PerformanceComputing) klastera

• Prethodno ime FhGFS• engl. Fraunhofer Gesellschaft File System

• 2014. objavljeno novo ime i osnovan spin-off ThinkParQ

• Komercijalna programska potpora• dostupan je besplatno ili uz plaćanje podrške

• neke funkcionalnosti zahtijevaju plaćanje podrške

Korištenje računalnog klastera Isabella

Page 100: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

BeeGFS

• Operacijski sustavi• Red Hat Linux 5, 6 i 7

• Suse Linux 11 i 12

• Debian Linux 7 i 8

• Datotečni sustavi za pohranu podataka• XFS - preporučeni sustav za podatkovni servis

• ext4 - preporučeni sustav za imenički servis

• drugi datotečni sustavi sukladni specifikaciji POSIX (ext3, ext4, RaiserFS)

• Mrežne tehnologije• Ethernet (1Gb/s i 10Gb/s)

• Infiniband (RDMA)

Korištenje računalnog klastera Isabella

Page 101: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Arhitektura

Korištenje računalnog klastera Isabella

Page 102: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

BeeGFS u Srcu

• Klaster Isabella i CRO NGI• statistike: http://www.cro-ngi.hr/crongi_stats/

• Korisnički direktorij (home)• ukupno 110 TB

• 4 podatkovna poslužitelja

• 1 imenički servis

• iSCSI spremišni element

• 1 Gb/s Ethernet

• koristiti za ulazne i izlazne podatke

Korištenje računalnog klastera Isabella

Page 103: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

BeeGFS u Srcu

• Direktorij za pohranu privremenih datoteka (scratch)• učinkovit rad s velikim datotekama

• ukupno 90 TB

• 4 podatkovna poslužitelja

• 4 imenička servisa

• 40 i 56 Gb/s Infiniband

• koristiti za velike privremene podatke

Korištenje računalnog klastera Isabella

Page 104: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

BeeGFS

Korištenje računalnog klastera Isabella

Page 105: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

BeeGFS

Korištenje računalnog klastera Isabella

Page 106: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Korisne naredbe

• Provjera dostupnosti servisa

• Provjera iskorištenja direktorija svih servisa

Korištenje računalnog klastera Isabella

beegfs-check-servers -p /beegfs

beegfs-df -p /beegfs

Page 107: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Sustavi korišteni u prošlosti

• GlusterFS• CRO NGI

• podatkovne usluge Filesender, GSS, JKP

• ukupno preko 200 TB prostora

• napušten zbog slabije učinkovitosti od BeeGFS-a i ujednačavanja raspodijeljenih podatkovnih sustava

• Lustre• klaster Isabella

• 6 poslužitelja (2 MDS, 2 OSS, 2 mosta između mreža Infiniband i Ethernet)

• visoka dostupnost (Heartbeat)

• napušten zbog složenosti održavanja, korištenja nestandardne jezgre i prestanka održavanja od strane Oraclea

Korištenje računalnog klastera Isabella

Page 108: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Sustavi korišteni u prošlosti

• GFS• klaster Isabella i CRO NGI

• klasterski datotečni sustav

• omogućava pristup istom logičkom disku na spremišnom sustavu s više poslužitelja

• napušten zbog loše učinkovitosti

• NFS• klaster Isabella i CRO NGI

• korisnički direktorij (home)

• napušten zbog loše učinkovitosti pri velikom opterećenju

• još uvijek se koristi na manjim klasterima

Korištenje računalnog klastera Isabella

Page 109: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Sustavi za nadzor

Korištenje računalnog klastera Isabella

Page 110: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Ganglia

• Sustav za nadzor• prikuplja informacije o čvorovima

• razmjenjuje informacije između frontenda i čvorova

• arhivira podatke

• Web sučelje• prikaz grafova pojedinih parametara (CPU, memorija, mreža, disk)

• povijest: sat, dan, mjesec, godina

• http://tannat.srce.hr/ganglia

Korištenje računalnog klastera Isabella

Page 111: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Ganglia

Korištenje računalnog klastera Isabella

Page 112: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Statistike o korištenju

• Stranica Srca• podaci iz sustava za nadzor Zabbix i Son of Grid Engine

• http://tannat.srce.hr/acc/

Korištenje računalnog klastera Isabella

Page 113: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

PHPQstat

• Web aplikacija za prikaz aktivnih poslova

• Web prikaz ispisa iz naredbi• qhost

• qstat

• Moguće je filtriranje po korisniku

• http://tannat.srce.hr/PHPQstat/

Korištenje računalnog klastera Isabella

Page 114: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Reference

• Sun of Grid Engine• dokumentacija: http://arc.liv.ac.uk/SGE/howto/

• mailing lista http://gridengine.org/mailman/listinfo/users

• man stranice naredbi

• BeeGFS• http://www.beegfs.com/content/

• Ganglia• http://ganglia.info

Korištenje računalnog klastera Isabella

Page 115: Korištenje računalnog klastera Isabella - srce.unizg.hr · Ciljevi •Ciljevi •upoznavanje s klasterskom okolinom •upoznavanje sa sustavom za upravljanje poslovima •upravljanje

Srce politikom otvorenog pristupa široj javnosti

osigurava dostupnost i korištenje svih rezultata rada

Srca, a prvenstveno obrazovnih i stručnih informacija

i sadržaja nastalih djelovanjem i radom Srca.

Ovo djelo je dano na korištenje pod licencom

Creative Commons Imenovanje-Nekomercijalno

4.0 međunarodna.

www.srce.unizg.hr creativecommons.org/licenses/by-nc/4.0/deed.hr www.srce.unizg.hr/otvoreni-pristup

Hvala na pažnji!

Pitanja?