160 likes | 351 Views
Andrej Filipčič. Vmesna programska oprema in ARC. Vmesna programska oprema. Področja: Computing element CE – sistem za izvajanje nalog Storage element SE – sistem za dostop in hrambo podatkov Sistem za prenos podatkov Informacijski katalogi Baze podatkov Uporabniški vmesniki
E N D
Andrej Filipčič Vmesna programska oprema in ARC ARC
ARC Vmesna programska oprema • Področja: • Computing element CE – sistem za izvajanje nalog • Storage element SE – sistem za dostop in hrambo podatkov • Sistem za prenos podatkov • Informacijski katalogi • Baze podatkov • Uporabniški vmesniki • Avtorizacija, avtentikacija, obračunavanje storitev • Pregled opreme: • Open Science Grid, OSG (ZDA) • gLite (EU) • ARC (EU, Nordugrid) • Unicore (Nemčija) • dCache, xrootd • FTS, LFC, DPM, castor (CERN)
ARC Infrastruktura GRID (EGI + ostali) • 700.000 jeder • 450 PB prostora na diskih • 400 PB prostora na trakovih • 350 centrov ( 100 s podporo MPI) • 57 držav • Investicije: ~ 109 €
ARC ATLAS
ARC Naloge ATLAS (15% infrastrukture)
ARC ATLAS in ARC (7% ATLAS)
ARC ARC CE
ARC Interoperabilnost za uporabnike
ARC Integracija z gručo
ARC Uporabniški računi
ARC Zakaj ARC • Preprost za uporabnike: (podoben uporabi sistema vrst - batch) • Opis naloge (job.xrsl), shell script (job.sh) • Zagon naloge: arcsub (qsub) • Status naloge: arcstat (qstat) • Rezultati naloge: arcget (oddaljena gruča) • Avtomatsko poišče ustrezno gručo • večje število nalog se razporedi po vseh razpožljivih gručah, centrih • Naloge, ki zahtevajo izbrano programsko opremo (RTE) se zaženejo le na gručah, ki opremo najavlja • Uporabnik ne potrebuje neposrednega dostopa do gruče • Administratorji gruče upravljajo z: • Dodeljevanjem dostopa uporabnikom • Dodeljevanjem deleža uporabe
ARC Zakaj ARC II • Deluje na “vseh” platformah • Vse distribucije Linux (Redhat, Fedora, Debian, Ubuntu, Gentoo, Suse, ….) • Windows • Mac OS X • Podpora večini vrstnih sistemov: torque/maui, SGE, LL, LSF, SLURM, condor, 3GBridge • ARC-CE • strežnik, integriran v obstoječo klasično gručo • Ne zahteva reorganizacije gruče • Preprosta konfiguracija: ena konfiguracijska datoteka • Visoka zmogljivost • Opravljene naloge: > 1Hz, omejiteve so drugje • Procesiranje velikega števila podatkov, (100TB na dan) • Porazdelitev obremenitve: • ARC-CE se lahko razporedi na več strežnikov
ARC ARC LIB • Osnovni jezik c++ • “backend” moduli: perl, bash, python • Preprosta prilagoditev nestandardnim postavitvam • Vmesniki do knjižnic (swig): • python, java • Dostop do celotne funkcionalnosti sistema • Hiter razvoj namenskih uporabniških ali strežniških komponent • Npr. vmesnik za ATLAS – 3000 vrstic v jeziku python
ARC Računske Naloge • Neodvisne naloge: ena naloga → rezultat • Povezane naloge: množica nalog → rezultat • Trivialno paralelne – pozamezna naloga je neodvisna (renderiranje posameznih slik filma, računanje pi z Monte-Carlo, …) • Paralelne - več nalog si izmenjuje vmesne rezultate (mpi naloge, npr. kvantni sistemi sistema teles)
ARC Organizacija pošiljanja nalog • Trivialne (A): • priprava skript za vse naloge • Zaganjanje nalog • čakanje na izvedbo • Zbiranje podrezultatov v končni razultat • Trivialne (B): avtomatski sistem • Daljši problemi • Priprava nalog, pošiljanje, zbiranje rezultatov • Konstantno število aktivnih nalog • Analiza delnih rezultatov • Paralelne naloge: • Podobna organizacija kot za trivialne
ARC Priporočila • Dolžina nalog: nekaj do 24 ur, izjemoma daljše • Poraba spomina: priporočeno 2GB na jedro • Večstopenjske naloge: če niso predolge, sicer raje posamezna enota na nalogo • Ponovno pošiljanje naloge v primeru težav (okvare, vzdrževanja) • Preizkus na manjšem številu nalog (kvote)