Condor rendszer röviden. IKTA NI-2000/0008 munkaszkasz zárókonferencia

Hasonló dokumentumok
Párhuzamos és Grid rendszerek

Párhuzamos és Grid rendszerek. Hol tartunk? Klaszter. Megismerkedtünk az alapfogalmakkal,

Hol tartunk? Párhuzamos és Grid rendszerek. Klaszterek története. Klaszter. TOP november. Klaszterek ma. Megismerkedtünk az alapfogalmakkal,

Hol tartunk? Párhuzamos és Grid rendszerek (3. ea) cluster rendszerek, hosszútávú ütemezők. Klaszterek története. Klaszter.

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)

Párhuzamos és Grid rendszerek

Párhuzamos és Grid rendszerek. Parallel programozás áttekintése. Történelmi áttekintés

alkalmazásfejlesztő környezete

Hozzáférés a HPC-hez, kezdő lépések (előadás és demó)

UNIX / Linux rendszeradminisztráció

Informatikai Rendszerek Intézete Gábor Dénes Foiskola. Operációs rendszerek oldal LINUX

NIIF Központi Elosztott Szolgáltatói Platform

Bevezetés a párhuzamos programozási koncepciókba

PVM programok áthelyezése GRID környezetbe

Az informatika alapjai. 10. elıadás. Operációs rendszer

Adatintenzív alkalmazások grid-es környezetben

(kernel3d vizualizáció: kernel245_graph.mpg)

Matematikai és Informatikai Intézet. 4. Folyamatok

ClusterGrid infrastruktúra: Hogyan? Stefán Péter, Szalai Ferenc, Vitéz Gábor,

Live free() or die() Az openmosix cluster szoftver

Virtualizáció. egy hardveren több virtuális rendszer működik egyszerre, virtuális gépekben futó önálló vendég (guest) operációs rendszerek formájában

Az MTA Cloud a tudományos alkalmazások támogatására. Kacsuk Péter MTA SZTAKI

RH/CentOS felügyelet SUSE Manager segítségével. Kovács Lajos Vezető konzultáns

Utolsó módosítás:

Alternatív processz állapot és statisztika lekérdezési módszer a Linux kernelben

A mai program OPERÁCIÓS RENDSZEREK. A probléma. Fogalmak. Mit várunk el? Tágítjuk a problémát: ütemezési szintek

BASH script programozás II. Vezérlési szerkezetek

univerzum Standard,Vanilla,PVM,MPI,Globus és Java. condor_shadow

Operációs rendszerek

S z á m í t ó g é p e s a l a p i s m e r e t e k

A futtatás elıtt az alábbi két dolgot kell tenni:

Utolsó módosítás:

Ellenőrzőpont támogatás PVM alkalmazások számára a magyar ClusterGriden

Data Integrátorok a gyakorlatban Oracle DI vs. Pentaho DI Fekszi Csaba Ügyvezető Vinnai Péter Adattárház fejlesztő február 20.

Operációs rendszerek. Bemutatkozás

Virtualizációs Technológiák Operációs rendszer szintű virtualizáció Konténerek Forrás, BME-VIK Virtualizációs technológiák

Az NIIF új szuperszámítógép infrastruktúrája Új lehetőségek a kutatói hálózatban

Magic xpi 4.0 vadonatúj Architektúrája Gigaspaces alapokon

Dialízis gép software komponensét alkotó unitok modul tesztje követelmény és struktúra alapon

Hálózati operációs rendszerek II. Novell Netware 5.1 Hálózati nyomtatás

ÜDVÖZÖLJÜK A HaXSoN BEMUTATÓN!

Weblog elemzés Hadoopon 1/39

Windows történet Windows 1.0. DOS kiegészítő Grafikus felület

Enabling Grids for E-sciencE. Grid bevezető INFSO-RI

Példa: LHC, CERN, Genf Enabling Grids for E-sciencE

Viczián István IP Systems JUM XIX szeptember 18.

A számítógép egységei

Operációs rendszerek. Az Executive és a kernel Policy és mechanizmusok szeparálása Executive: policy - objektum kezelés Kernel: mechanizmusok:

Operációs rendszerek Folyamatok 1.1

BASH SCRIPT SHELL JEGYZETEK

NIIFI HPC Szolgáltatás

Uniprogramozás. várakozás. várakozás. Program A. Idő. A programnak várakoznia kell az I/Outasítások végrehajtására mielőtt továbbfuthatna

AWK programozás, minták, vezérlési szerkezetek

Miért jó nekünk kutatóknak a felhő? Kacsuk Péter MTA SZTAKI

Gyakorla( útmutató és demonstrációk a SZTAKI Felhő használatához

OPERÁCIÓS RENDSZEREK I. BEVEZETÉS Koczka Ferenc -

Felhő demonstráció Gergely Márk MTA SZTAKI

Folyamatok. 6. előadás

Oracle Enterprise Manager 12c Cloud Control és 11g Grid Control összehasonlítás

HunGrid Grid technológiák hozzáférési lehetőségei az intézetben

Autóipari beágyazott rendszerek. Komponens és rendszer integráció

NIS + NFS+Automount. Összeállította: Sallai András

Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

Feladatok (task) kezelése multiprogramozott operációs rendszerekben

GRID AZ OKTATÁSBAN. Kápolnai Richárd, Németh Dénes, Dr. Szeberényi Imre,

Operációs rendszerek Memóriakezelés 1.1

A Java EE 5 plattform

BIG DATA ÉS GÉPI TANULÁS KÖRNYEZET AZ MTA CLOUD-ON KACSUK PÉTER, NAGY ENIKŐ, PINTYE ISTVÁN, HAJNAL ÁKOS, LOVAS RÓBERT

Operációs rendszerek III.

Occam 1. Készítette: Szabó Éva

Párhuzamos és Grid rendszerek

Párhuzamos és Grid rendszerek. Elosztott fájlrendszerek. AFS (Andrew File System) Nagyméretű klaszterekhez. Elosztott fájlrendszerek

TELJESÍTÉNYMÉRÉS FELHŐ ALAPÚ KÖRNYEZETBEN AZURE CLOUD ANALÍZIS

Tarantella Secure Global Desktop Enterprise Edition

SQLServer. SQLServer konfigurációk

P-GRADE fejlesztőkörnyezet és Jini alapú GRID integrálása PVM programok végrehajtásához. Rendszerterv. Sipos Gergely

Párhuzamos és Grid rendszerek

A PVM és az MPI új elemeinek vizsgálata Farkas Gergely

Adatbányászat és Perszonalizáció architektúra

Elosztott fájlrendszerek. Párhuzamos és Grid rendszerek. AFS (Andrew File System) AFS történelem Carnegie Mellon Egyetemen 1984-ben.

Optimalizáció ESX-től View-ig. Pintér Kornél ügyfélszolgála3 mérnök

Symantec Endpoint Protection

A 21. század adatközpontja Oracle Solaris alapon

OpenCL - The open standard for parallel programming of heterogeneous systems

Operációs rendszerek

Párhuzamos és Grid rendszerek. Hol tartunk? Elosztott rendszerek reneszánsza. Megismerkedtünk az alapfogalmakkal,

Hol tartunk? Párhuzamos és Grid rendszerek. Grid koncepció. Elosztott rendszerek reneszánsza. Grid hasonlat. Klaszter

Intelligens Érzékelők

A JGrid rendszer biztonsági architektúrája. Magyaródi Márk Juhász Zoltán Veszprémi Egyetem

Kommunikációs rendszerek teljesítőképesség-vizsgálata

Kaspersky Anti-Vírus

Számítógépek felépítése, alapfogalmak

Operációs rendszerek. Folyamatok kezelése a UNIX-ban

2016/06/23 07:47 1/13 Kérdések

Linux fájlrendszerek. Papp Zsolt. Rendszermérnök, Novell PSH.

ERLANG PROGRAMOK TRANSZFORMÁCI CIÓJA ERLANG

DCOM Áttekintés. Miskolci Egyetem Általános Informatikai Tanszék. Ficsor Lajos DCOM /1

Ellenőrzőpont támogatás PVM alkalmazások számára a magyar ClusterGriden 1

Private Cloud architektúra keretrendszer

Átírás:

Condor rendszer röviden Szeberényi Imre <szebi@iit.bme.hu> IKTA NI-2000/0008 munkaszkasz zárókonferencia 2001.10.12

A Condor rendszer jellemzői Speciá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. IKTA NI-2000 2

Condor pool Központi ütemező IKTA NI-2000 3

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. IKTA NI-2000 4

Követelmény és rangsor Követelmény: Requirements = Arch=="SUN4u Pontosan kell illeszkednie. Rangsor: Rank = Memory + Mips Ha választhat, akkor a nagyobbat fogja választani IKTA NI-2000 5

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" && OpSys == "LINUX" Rank = TARGET.Memory * 10 + TARGET.Disk + Mips IKTA NI-2000 6

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 IKTA NI-2000 7

Hogyan néz ki egy feladat futtatása? A job összeállítása Job bejelentése a Condor-nak Job-ot a Condor futtatja az általa kiválasztott gép(eken), 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. IKTA NI-2000 8

Egy egyszerű jobleíró universe = vanilla executable = mathematica input = in$(process).dat output = out$(process).dat queue 5 IKTA NI-2000 9

Feladatkörök Central Manager Execute Machine Submit Machine Checkpoint Server IKTA NI-2000 10

Condor pool elemei Checkpoint Server IKTA NI-2000 11

A rendszer részei (1) condor_master fő process, ez indítja a többi daemont condor_startd execute gépen hirdet condor_starter ez indul el először, ha job kerül gépre condor_schedd submit queue-t kezeli IKTA NI-2000 12

A rendszer részei (2) condor_shadow a submit gépen fut, a távoli process helyi párja condor_collector információ gyűjtő condor_negotiator a kérések és az erőforrások párosításáért felelős condor_ckpt_server condor_kbdd konzol állapotát figyeli (nem minden OS-hez) IKTA NI-2000 13

Contrib modulok: A rendszer részei (3) Condor View Checkpoint server PVM support MPI support Event daemon DAGMan Meta-Sheduler (Directed Acyclic Graph Manager) IKTA NI-2000 14

Milyen feladatok lehetnek? Elsősorban hosszú futási idejű, számításigényes feladatok. Különböző univerzumok léteznek Standard Vanilla PVM MPI Globus Scheduler IKTA NI-2000 15

Standard 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) IKTA NI-2000 16

Vanilla univerzum nincs checkpointing, nincs migráció meglevő futtatható kódot nem kell vátoztatni nincs korlátozás a rendszerhívásokkal szemben. NFS, vagy AFS kell!!!! IKTA NI-2000 17

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 IKTA NI-2000 18

MPI univerzum MPICH változtatás nélkül. Bináris kompatibilitás Csak ch_p4 device Dinamikusan nem változhat Nem állhat meg. NFS vagy AFS kell. IKTA NI-2000 19

Barátságos pool-ok (Flock) IIT IK SZTAKI IKTA NI-2000 20

Telepítés A telepítés bináris disztribúciókból történik. Nem minden környezethez létezik binaris disztribúció. Elterjedtebb munkaállomások UNIX változatai. PC-s környezethez Linux és Solaris van, de pl. FreeBSD nincs. NT, de csak Vanilla univerzummal. A telepítéshez perl script és kb 350 oldal doksi áll rendelkezésre. IKTA NI-2000 21

Egy Condor-PVM alkalmazás és a FLOCK funkció bemutatása Szeberényi Imre <szebi@iit.bme.hu> IKTA NI-2000/0008 munkaszkasz zárókonferencia 2001.10.12

Condor-PVM Nagyobb méretű elosztott PVM rendszer üzemeltetése nem egyszerű feladat. Condor-PVM felépíti a virtuális gépet, támogatást nyújt az üzemeltetésében, lehetővé teszi, hogy hibatűrő PVM alkalmazást készítsünk IKTA NI-2000 23

Condor felépíti a virtuális gépet Master pmvd PVM alkalmazás M Slave pmvd S S S S S C #1 #2 #3 #4 #5 #6 IKTA NI-2000 24

Heterogén PVM program Szimbolikus linkek alkalmazása: 0 --> SOLARIS26 --> SUN4SOL2 1 --> LINUX 2 --> SGI --> SGI64 Condor ARCH név PVM ARCH név Condor-PVM név Ezek a katalógusok tartalmazzák az architektúra függő részeket. (pl: 0/pi) IKTA NI-2000 25

pi.cmd jobleíró universe = PVM executable = SOLARIS26/pi input = pi.in output = pi.out error = pi.err log = pi.log IKTA NI-2000 26

pi.cmd jobleíró (2) ## Machine class 0 ## Requirements = (Arch == "SUN4u") && (OpSys == "SOLARIS26") machine_count = 1..3 queue IKTA NI-2000 27

pi.cmd jobleíró (3) ## Machine class 1 ## Requirements = (Arch == "INTEL") && (OpSys == "LINUX") machine_count = 1..8 queue IKTA NI-2000 28

PVM taszkok indása pvm_config(&nhost, &narch, &hostinfo); for (proc = i = 0; i < nhost; i++) { arch = hostinfo[i].hi_arch; sprintf(taskname, "%s/pi", arch); printf("starting %s\n", taskname); fflush(stdout); if (pvm_spawn(taskname, NULL, PvmTaskArch, arch, 1, &tids[proc+1]) == 1) { proc++; if (proc >= nprocs) break; } } IKTA NI-2000 29

Demo: Párhuzamos számítási példa Számítsuk ki az B A N B A f ( x) dx f( x) dx = h f( A h + i h) 2 i= 1 integrál értékét egyszerű numerikus közelítéssel! ahol h = B-A N N=8 esetén pl: f(x) P 1 P 2 t 1 t 2 t 3 t 4 t 5 t 6 t 7 t 8 A h Az egyes téglányok számítása egymástól függetlenül, párhuzamosan is elvégezhető. Pl. minden task csak minden M-edik téglányt számol ki, majd az összegezzük az eredményeket. IKTA NI-2000 30 P 3 B x

PVM alk. további processzeket hoz létre Nhost=13, Narch=5 Starting 0/pi, arch= 0(0), proc=1 Starting 0/pi, arch= 0(1), proc=2 Starting 0/pi, arch= 0(2), proc=3 Starting 1/pi, arch= 1(3), proc=4 Starting 1/pi, arch= 1(4), proc=5 Starting 1/pi, arch= 1(5), proc=6 Starting 1/pi, arch= 1(6), proc=7 Starting 1/pi, arch= 1(7), proc=8 Starting 1/pi, arch= 1(8), proc=9 Starting 1/pi, arch= 1(9), proc=10 Starting 1/pi, arch= 1(10), proc=11 Starting 4/pi, arch= 4(11), proc=12 Starting 4/pi, arch= 4(12), proc=13 IKTA NI-2000 31

Fut a PVM alkalmazás First instance on bagira: x = 0.22647 First isntance got x = 0.22590 from bvp6 First isntance got x = 0.22575 from bvp2 First isntance got x = 0.22361 from bvp7 First isntance got x = 0.22333 from bvp7 First isntance got x = 0.22304 from bvp8 First isntance got x = 0.22347 from bvp2 First isntance got x = 0.22319 from bvp3 First isntance got x = 0.22290 from bvp3 First isntance got x = 0.22633 from bagira First isntance got x = 0.22276 from kempelen First isntance got x = 0.22619 from bagira First isntance got x = 0.22604 from bagira First isntance got x = 0.22261 from kempelen sum = 3.14159298 err = 2.384186e-07 IKTA NI-2000 32

Egy nap statisztikája IKTA NI-2000 33

IKTA NI-2000 34

Köszönöm a figyelmet! IKTA NI-2000 35