Hol tartunk? Párhuzamos és Grid rendszerek (3. ea) cluster rendszerek, hosszútávú ütemezők zeberényi Imre BME IIT <szebi@iit.bme.hu> Megismerkedtünk az alapfogalmakkal, architektúrákkal. Egyszerű absztrakciós modellt alkottunk a párhuzamos gépek leírására. Megismertük a párhuzamos programok tervezésének egy módszerét (PCAM). M Ű E G Y E T E M 1 7 8 2 Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -1- Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -2- Klaszter Párhuzamos rendszerek fejlődésének egyik fontos állomása, amit ma több gyártó ismét elővett. közös állományrendszer laza szoros csatolás batch feldolgozás hosszútávú ütemezés Klaszterek története Kezdetek: szg. hálózatok megjelenése 60- as évek vége 70-es évek eleje. Igazi fejlődés a 70-es évek vége, 80-as évek eleje. (DEC, VAXcluster) elosztott, párhuzamos számítás megosztott fájlrendszer megosztott perifériák Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -3- Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -4- Klaszterek ma Nagy rendelkezésre állást biztosító klaszter Terheléskiegyenlítő klaszter zámítási klaszter házi: beowulf gyártóktól: TOP500 Grid klaszter grid site-ok Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -5- Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -6-1
Csak 11. az első európai Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -7- Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -8-379 rendszerben (75%) Intel processzor. 12% IBM Power és AMD Opteron. 336 rendszerben Quad-core processzor. HP 209 IBM 188 Az 50-es listára a belépő 50 Tflop/s Az első 10-ből 7 az Amerikai Energiaügyi Minisztériumnál van. Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -9- Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -10- Myrinet 10G, réz v. üveg Gigabit Ethertnet 1G, réz v. üveg Infiniband 10G, réz NUMAlink 6.4G, réz Összeköttetések Fájlrendszerek NF (NF 1,2,3,4) (1985, un) V4-et kivéve állapotmentes AF (CMU) Kerberos, nagy cache, nagy cellaszám jól skálázható F (Lustre, un) objektum orientált jól skálázható Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -11- Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -12-2
Ütemezők Condor (Uni. of Wisconsin) DQ (Florida tate Uni) LoadLeveler (IBM) Maui, Moab (Cluster Resources) LF (Platform) PB, OpenPB (Alatair) un Grid Engne (UN) Torque (Cluster Resources) A Condor rendszer jellemzői peciális ütemező (batch) rendszer Elosztott, heterogén rendszerben működik. Alapvetően a szabad CPU ciklusok kihasználására tervezték. Képes egy működő feladatot áthelyezni az egyik gépről a másikra (migráció). Az ún. ClassAds mechanizmussal képes a rendszerben levő változó erőforrásokat az igényeknek megfelelően elosztani. Opportunista környezet. Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -13- Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -14- Condor pool Központi ütemező Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -15- ClassAds lényege A rendszerben levő erőforrások különböző jellemzőkkel (teljesítmény, architektúra, op. rendszer, stb.) rendelkeznek. A job összeállításánál ezekre a jellemzőkre igényeket lehet előírni, amit a Condor rendszer megpróbál kielégíteni. (Párosítja az igényt az erőforrással) A job összeállításánál lehetőség van preferenciák megadására, ami alapján a Condor rangsorolni fog és kiválasztja az igénynek leginkább megfelelő gépet. Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -16- ClassAds lényege (2) Így nincs szükség a batch rendszerekben megszokott sorokra. (Úgyis a rosszat választanánk) Követelmény és rangsor Követelmény: Requirements = Arch=="UN4u Pontosan kell illeszkednie. Rangsor: Rank = Memory + Mips Ha választhat, akkor a nagyobbat fogja választani Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -17- Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -18-3
A dolgok két oldala (1) A kifejezések a két hirdetés adatterében értékelődnek ki (ada, adb). Felhasználó (igénylő) oldala: Requirements = Arch == "INTEL" && Opys == "LINUX" Rank = TARGET.Memory * 10 + TARGET.Disk + Mips Erőforrás oldal: A dolgok két oldala (2) Friend = Owner == "haver" Trusted = Owner!= "judas" Mygroup = Owner == "zoli" Owner == "jani" Requirements = Trusted && (Mygroup LoadAvg < 0.5 && KeyboardIdle > 10*60) Rank = Friend + MyGroup*10 Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -19- Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -20- Central Manager Execute Machine ubmit Machine Checkpoint erver Feladatkörök Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -21- Condor Pool = Process pawned Central Manager (Frieda s) = ClassAd Communication Pathway negotiator schedd collector Cluster Node Desktop schedd Desktop schedd Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -22- Job indítás Condor flock chedd tartd tarter Condor job-ok your workstation Condor personal Condor Pool hadow Customer Job "Barát" Condor Pool ubmit Condor yscall Lib Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -23- Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -24-4
Milyen feladatok lehetnek? Elsősorban hosszú futási idejű, számításigényes feladatok. Különböző univerzumok léteznek tandard cheduler Vanilla MPI Grid Java Local Parallel VM tandard univerzum checkpointing, automatikus migráció meglevő programot újra kell fordítani, esetleg csak linkelni az alkalmazás nem használhat bizonyos rendszerhívásokat: pl. fork, socket, alarm, mmap ( elkapja a file műveleteket) Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -25- Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -26- Vanilla univerzum nincs checkpointing, nincs migráció meglevő futtatható kódot nem kell vátoztatni nincs korlátozás a rendszerhívásokkal szemben. NF, vagy AF kell!!!! PVM univerzum MW jellegű PVM programok környezete Binárisan kompatibilis PVM 3.4.2 + taszk kezeléshez kieg. Dinamikus VM kialakítás. Heterogén környezet támogatása Egy user csak egy példányban futathat deamont Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -27- Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -28- Condor felépíti a virtuális gépet MPI univerzum PVM alkalmazás M Master pmvd lave pmvd MPICH változtatás nélkül. Bináris kompatibilitás Csak ch_p4 device Dinamikusan nem változhat Nem állhat meg. NF vagy AF kell. C #1 #2 #3 #4 #5 #6 Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -29- Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -30-5
Futtatás lépései A job összeállítása Job bejelentése a Condor-nak Job-ot a Condor futtatja az általa kiválasztott gép(eken), gp( szükség esetén átmozgatja egy másik gépre. Job befejeződik, a Condor e-mail-t küld a felhasználónak. Egy egyszerű jobleíró universe = vanilla executable = mathematica input = in$(process).dat output t= out$(process).dat t queue 50 Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -31- Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -32- Egy másik jobleíró un Grid Engine (GE) universe = vanilla executable = /bin/hostname output = hostname.out.$(process) error = hostname.err.$(process) log = hostname.log queue 3 A Condor-hoz hasonló ütemező. Queue-kat definiál. Hangsúlyos a terhelés kiegyensúlyozása. Backup ütemező. Check-point. Migrálási lehetőség. Négy szerepkör:, submit, exec, admin, Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -33- Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -34- GE komponensei Párhuzamos és Grid rendszerek BME-IIT z.i. 2011.02.23. -35-6