Raziskovalna skupina z odseka za fiziko visokih energij z Instituta "Jožef Stefan" (F9 IJS) je že več kot desetletje članica mednarodne kolaboracije ATLAS in sodeluje pri gradnji večnamenskega detektorja na Velikem hadronskem trkalniku v Evropskem laboratoriju za fiziko delcev CERN. Kot član kolaboracije ATLAS se je naš odsek vključil v projekt LCG in leta 2003 sodeloval pri prijavi projekta EGEE. Jeseni 2003 smo izvedli prvo fazo projekta Postavitev pilotne implementacije servisov in protokolov Grid v Sloveniji in posodobitev računalniške infrastrukture odseka, tako da smo članicam EGEE ob začetku projekta (prvega aprila 2004) lahko izročili v uporabo sodobno računalniško gručo pod imenom SiGNET (Slovenian Grid NETwork) in v projekt vstopili kot enakovredni partnerji (oziroma celo med uspešnejšimi in naprednejšimi, saj smo bili med prvimi gručami z delujočo 64-bitno arhitekturo).
V okviru projekta EGEE smo prejeli del finančnih sredstev za vzpostavitev gručce z virov Evropske skupnosti, pomemben delež pa je prispevala Republika Slovenija v okviru ciljnega razvojnega programa (CRP) Konkurenčnost Slovenije 2001-2006" (SI-CRP, http://www.mszs.si/slo/znanost/dejavnost/ciljni_raziskovalni_programi.asp) v okviru ciljnega razvojnega težišča "Informacijska družba".
Med našimi cilji je tudi sodelovanje s slovenskimi institucijami in disemnicaija in penetracija tehnologije v Sloveniji. Ker smo usmerjeni predvsem v raziskavo in produkcijo, pripravljamo predvsem servise in dokumentacijo, ki slovenskim organizacijam omogočajo, da se z našo pomčjo vključijo v uporabo tehnologij Grid.
Med pomembnimi koraki za vzpostavitem infrastrukture za uvajanje tehnologije Grid v Sloveniji je bila ustanovitev lastnega izdajatelja elektronskih potrdil za znanost in raziskovanje: SiGNET CA (http://signet-ca.ijs.si). SiGNET CA je pooblaščeni član zveze EUGridPMA (The European Policy Management Authority for Grid Authentication in e-Science, http://www.eugridpma.org/). EUGridPMA koordinira infrastrukturo javnih ključev (Public Key Infrastructure, PKI), namenjenih za overjanje pri uporabi sistemov Grid. Člani zveze EUGridPMA priznavajo in sprejemajo potrdila drugih članov mreže zaupanja. EUGridPMA distribuira sprejeta korenska (vrhovna) potrdila članskih uradov za potrdila. To pomeni, da lahko imetniki elektronskih potrdil, ki jih izdaja SiGNET CA, sodelujejo z vsemi organizacijami, ki uporabljajo potrdila članov EUGridPMA.
Za delovanje Gruče SiGNET smo ustanovili tudi virtualno organizacijo SiGNET, ki je postala prvi uporabnik SiGNET CA, največji transnacionalni uporabnik pa je virtalna organizacija ATLAS, v okviru katere Odsek za eksperimentalno fiziko osnovih delcev sodeluje v kolaboraciji ATLAS.
V letu 2005 smo z nadaljnim testiranjem tehnologij Grid in razvojem programske opreme ter širitvijo gruče SiGNET, ki je poleg velikega števila dodatnih namenskih procesorskih pridobila tudi datotečni element mreže Grid (Grid data element), gručo iz faze testiranja pripeljali do zmožnosti za praktično uporabo. Od leta 2006 sodeluje v globalnem testiranju z obremenitvijo infrastrukturo v okviru t.i. Service Challange, na njej pa tečejo računske naloge domačih raziskovalcev ter virtualne organizacije ATLAS, tako da je gruča večinoma polno obremenjena.
Gruča SiGNET je sestavljena iz dveh skupin sistemov, iz namenske gruče z arhitekuro AMD64 in gruče delovnih postaj z različnimi arhitekturami. Konfiguracija je naslednja:
osrednji strežnik (ki deluje tudi kot strežnik za delovne postaje): dvoprocesorski AMD Opteron 246 s 4 GB pomnilnika, zunanjo diskovno enoto SCSI s sistemom diskov IDE s skupno kapaciteto 2 TB, tračno enoto 240 Ultrium ter dvema mrežnima izhodoma Ethernet 1 GBit/s
podatkovni strežnik: dvoprocesorski AMD Opteron 250 s 4 GB pomnilnika, zunanjo diskovno enoto SCSI s sistemom diskov SATA (serial ATA/IDE) s skupno kapaciteto 6 TB ter mrežnih izhodom Ethernet 1 GBit/s (dodan pozimi 2004/2005)
dodatni podatkovni strežnik: štiriprocesorski AMD Opteron 250 s 16 GB pomnilnika,ter dvema mrežnima izhodoma Ethernet 1 GBit/s, ki izvaja tudi virtualna okolja (dodan spomladi 2005).
zunanja diskovna enota fiberchannel/SCSI s sistemom diskov SATA (serial ATA/IDE) s skupno kapaciteto 12 TB, priključena na stikalo fiberchannel, ki je neposredno preko vzporedno-dostopnega podatkovnega sistema GPS dostopno z vseh strežnikov, posredno pa preko strežnikov in 1 Gbit/s povezave na vseh elementih gruče (dodan spomladi 2005).
podatkovna knjižnica s podatkovnimi trakovi in robotskim podajalcem (dodana pozimi 2004/2005)
51 namenskih računalnikov v gruči: dvoprocesorski AMD Opteron 240 z 1 GB pomnilnika (21) ali AMD Opteron 244 z 2 GB, mrežnim izhodom Ethernet 1 GBit/s, vhodom USB in oddaljeno konzolo (serijsko ali po namenskem omrežju) ter lokalnim diskom (~80 GB)
delovne postaje odseka F9: 22 64-bitnih dvojedrnih delovnih postaj s procesorji AMD Athlon64 (~Athlon64 X2 4200+) in mrežnimi priključki s kapaciteto 1-Gbit/s ter lokalnim diskom za uporabo računskih aplikacij (~240 GB).
usmerjevalnik prometa RS 32000 s kapaciteto prenosa 64 GB/s in interni gigabitni usmerjevalniki v strežniških omarah za interni in kontrolni promet.
V vsem sistemu je več kot 150 procesorjev; v sistemu grid vedno sodeluje več kot 120 procesorjev.
Strežniki in namenski računalniki gruče SiGNET stojijo v posebnem hlajenem prostoru z lastno električno napeljavo. Strežniki in usmerjevalniki prometa imajo lastne enote za prenapetostno zaščito in neprekinjeno napajanje. Delovne postaje odseka F9 so priključene na električno napeljavo s prenapetostno zaščito in neprekinjenim napajanjem (UPS).
Gruča SiGNET je bila ena od prvih delujočih gruč, ki je uporabljala 64-bitno tehnologijo i32-64 (ali AMD-64) s procesorji Opteron in je ob vzpostavitvi pritegnila precejšnjo mednarodno pozornost, tako da je družba AMD posredno spremljala postavitev.
Usmerjevalnik prometa RS 32000 je nastavljen tako, da oblikuje dve podomrežji s povezavami Ethernet 1 Gbit/s. Eno podomrežje vključuje računalnike namenske gručo in strežnik, drugo pa povezuje strežnik in usmerjevalnike prometa na odseku F9 IJS, na katere so preko priključkov s kapaciteto 1Gbit/s priključene delovne postaja in drugi strežniki na odseku. Vsako od obeh omrežij ima samostojno povezavo z Arnesovim vozliščem v Ljubljani (Slovensko akademsko in raziskovalno omrežje: http://www.arnes.si/) in preko njega do omrežja GÉANT2 (druga fazna skupnega projekta gigabitnega omrežja Evropske skupnosti, evropskih raziskovalnih omrežij in organizacije DANTE, http://www.dante.net/geant/). Samostojna povezava namenskega dela gruče zagotavlja zadostno kapaciteto za prenos podatkov procesov grid. Kapaciteta povezave do omrežja GÉANT2 je trenutno (l. 2006) 2,5 Gbit/s, vendar bo treba pred začetkom zajemanja podatkov z eksperimentov Velikega hadronskega trkalnika (LHC, predvidoma konec 2007) in pred vsakršnim sodelovanjem z obsežnejšimi raziskovalnimi projekti kapaciteto priključka povečati.
Računalniki na odseku F9 IJS SI uporabljajo prosto programsko opremo in operacijski sistem GNU/Linux. Na strežniku in namenskih računalnikih v gruči je bila prvotno nameščena distribucija SuSE za arhitekturo AMD-64 (http://www.suse.com/), ki je najbolje in zelo zgodaj podpirala arhitektura AMD-64, na namenskih strežnikih pa so bile nameščene distribucije Gentoo (i686, Alpha, http://www.gentoo.org/) in Debian Sarge (http://www.debian.org/) ter na delovnih postajah Fedora Core za i686 in AMD-64 (http://fedora.redhat.com/) ter SUSE AMD-64. V letih 2005 in 2006 smo po intenzivnem testiranju večino sistemov opremili s prilagojeno distribucijo Gentoo, ki omogoča skrajno optimizirano pripravo distribucije in gradnjo stabilnih sistemov z zelo sodobno programsko opremo, nekatere storitve vmesniške programske opreme LCG/gLite pa tečejo na namenski distribuciji GNU/Linux SLC (Scientific Linux CERN) - bodisi neposredno ali v podrejenih okoljih chroot/VMWare/XEN.
Za imenik sistemskih podatkov o uporabnikih in skupinah ter overjanje
uporabljmo OpenLDAP in Kerberos 5, ki preko varnostnega sistema
pluginov pam
deluje z vsemi sistemskimi orodji, preko pluginov v
bazah podatkov in spletnih strežnikih pa tudi v spletnih vmesnikih.
Na strežnikih teče datotečni strežnik OpenAFS, ki eksportira celico
f9.ijs.si
(http://www.openafs.org/. AFS je delno razpršen
omrežni datotečni sistem, ki posameznikom, projektom in programski
opremi omogoča dostop do datotek preko enotnih poti v imeniku /afs
kjerkoli v Internetu. AFS za overjanje uporablja kupončke sistema
Kerberos, posamezni segmenti datotečnega sistema pa so na strežniku
shranjeni kot samostojne datoteke, zato AFS omogoča preprosto in varno
izvajanje vmesnih kopij, varnostnih kopij in obnavljanje izgubljenih
podatkov. Sistem AFS ni odvisen od operacijskega sistema: z
odjemalskimi programi za AFS se lahko v datotečni sistem vključujejo
računalniki z različnimi, tudi komericalnimi operacijskimi sistemi
(npr. prenosniki s sistemom Mac OS X ali sodobnejšimi različicami
MS Windows). Vse delovne postaje in strežniki imajo nameščeno
podporo za AFS v sistemskem jedru.
700 MB diskovja je na voljo za AFS, 1TB pa je eksportiran preko mrežnega datotečnega sistema NFS kot prostor za začasno hranjenje podatkov ("scratch space"). Poleg tega vsak računalnik v gruči uporablja in preko NFS eksportira svoj lokalni disk, ki je namenjen za začasno lokalno shrambo in obdelavo podatkov. Za fizični zapis na diskih uporabljamo datotečni sistem XFS (http://oss.sgi.com/projects/xfs/).
Največji diskovni nabor uporablja datotečni sistem GFS (Global File System), ko omogoča hkraten vzporeden dostop z več računalnikov. Diskovni sistem je postavljen v nabor RAID in priključen preko optične povezave FiberChannel in optičnega stikala na vse tri osrednje strežnike, ki ga preko NFS posredujejo računskim vozliščem v gruči. Takšna konfiguracija je v okviru grida EGEE edinstven primer, vendar omogoča izredno hiter in zelo zanesljiv (deluje tudi v primeru odpovedi katerega od strežnikov) ter za strežnike neobremenjujoč dostop za branje ter s stališča računskega vozlišča še vedno hitro (strežnik NFS deluje kot vmesna shramba) dostop za pisanje z zelo veliko logično diskovno enoto (partition), kar pomeni mnogo preprostješe vzdrževanje in administracijo. (Več o datotečnem sistemu GFS: http://sources.redhat.com/cluster/gfs/.)
Neinteraktivne procese ("batch jobs") na gruči vodi sistem, kompatibilen s specifikacijo PBS (Portable Batch System, prim. http://www.openpbs.org/) - ti sistemi imajo odprt vmesnik za nadzor nad distribucijo procesov: gruča SiGNET uporablja distributor ("sceduler") tipa PBS (Portable Batch System) in sicer sodobnejšo izvedbo MAUI Cluster Scheduler (http://www.clusterresources.com/products/maui/), ter upravaljalnik sredstev (resource manager) TORQUE (http://www.clusterresources.com/products/torque/). Neinteraktivni procesi imajo podporo za uporabo datotečnega sistema AFS in dobijo lasten kuponček za Kerberos.
Pri internem razvoju programske opreme uporabljamo distribuiran
upravljalec prevajalnikov distcc
(http://distcc.samba.org/). Distribuirano prevajanje programske
opreme med razvojem nove opreme in pripravljanjem programskega okolja
bistveno pospeši delo, obremenitve, ki jih nadzira vsak uporabnik sam,
pa so kratke in lokalne, tečejo pa samo na delovnih postajah, tako da
ne obremenjujejo namenskega dela gruče in ne vplivajo na računske
zmožnosti gruče.
Ob prvem zagonu gruče SiGNET smo po obširnem testiranju izbrali programsko opremo NorduGrid ARC http://www.nordugrid.org/middleware/. Izbiro je narekovala preprosta namestitev, zanesljivost in fleksibilnost sistema, kar nam je omogočilo, da smo si sistemom GridCOSI lahko zelo hitro na 64-bitni arhitekturi namesitili obstoječe 32-bitne različiče programske opreme za ekperiment Atlas in se vključili v eksperiment Atlas Data Challenge 2. (<http://atlas.web.cern.ch/Atlas/GROUPS/SOFTWARE/DC/).> Preprostost namestitve je bila še posebej pomembna, ker smo v gručo poleg namenskih računalnikov vključiili tudi delovne postaje oddelka F9 IJS, kar pomeni, da je morala programska oprema za grid delovati na različnih distribucijah in različicah operacijskega sistema GNU/Linux, in to na različnih strojnih arhitekturah.
V juniju in juliju 2005 smo namestili tudi LCG Grid Middleware (http://lcg.web.cern.ch/LCG/activities/middleware.html), programsko opremo za grid, ki je nastala pod vodstvom projekta LCG (http://lcg.web.cern.ch/LCG/) na osnovi izsledkov projkta DataGrid (http://eu-datagrid.web.cern.ch/eu-datagrid/). Dokler oprema gLite še ni dovolj stabilna, je to uradna programska oprema za grid v projektu EGEE.
Z novonameščeno opremo, ki na gruči teče vzporedno z NorduGrid ARC, smo se vključili v Srednjeevropski regionalni nadzorni center EGEE (EGEE CE ROC). Rezultati nadzornih in testnih sistemov za gručo SiGNET so dostopni na naslednjem naslovu: http://goc.grid.sinica.edu.tw/gstat/SiGNET/. Gl. tudi splošni pregled: http://goc.grid.sinica.edu.tw/gstat/. Od leta 2005 je celotna gruča vključena v oba sistema, poleg produkcijske različice LCG Grid Middleware oziroma sedaj že gLite pa v testnem okolju preizkušamo tudi razvojno različico.
Grid-COSI (Grid enabled Chroot Operating System Image) je mehanizem za namestitev in vzdrževanje sistemskih okolij gostujočih virtualnih organizacij ter za nadzor nad okoljem izvajanja aplikacij grid. Je v celoti plod dela naše raziskovalne skupine, nastal pa je kot naš doprinos v postopku razvoja in standardizacije tehnologij grid v okviru skupine NorduGRID kot dodatni modul za sistem ARC.
Osnovni pristop k prenosljivosti in kompatibilnosti v računalniških tehnologijah je standardizacija vmesnikov in protokolov. Standardizacija pa ima različne ravni.
Programski vmesnik vključuje vse ravni standardizacije, ki omogočajo kompatibilnost in prenosljivost izvorne kode. Programski vmesnik lahko določa uporabo funkcijskih klicev in metod določenega programa, sistemske ali samostojne knjižnice, določa pa lahko tudi protokole, format zapisa nastavitvenih datotek, podatkovnih datotek, vmesnike za poizvedbo o nastavitvah in zmožnostih sistema, ukaze ukazne vrstice itd.
Programske vmesnike definira operacijski sistem, sistemske knjižnice, pa tudi uporabniške knjižnice in programi.
Izvorno kodo programa, ki uprablja določen programski vmesnik, naj bi bilo mogoče prevesti na vseh platformah, ki podpirajo ta vmesnik.
Strojni vmesnik ali ABI določa konvencije za strojni jezik, zapis izvedbene strojne datoteke in knjiňice, binarne klice sistemskih funkcij in knjižnic, podatkovne strukture sistemskih servisov, način shranjevanja podatkov v pomnilnik (Big Endian, Little Endian) itd.
Strojni vmesnik morata podpirati strojna arhitektura (običajno gre za tip procesorja oz. podprte oblike strojne kode), jedro operacijskega sistema in razvojna programska orodja.
Programi in knjižnice, prevedeni za določeni strojni vmesnik, lahko delujejo s sistemskim jedrom, ki podpira ta vmesnik, in drugimi programi in knjižnicami, ki so prevedeni za ta strojni vmesnik. S knjižnicami, prevedenimi za drugačen strojni vmesnik, ne morejo delovati, tudi če strojna arhitektura in sistemsko jedro podpirata oba vmesnika.
Primer različnih strojnih vmesnikov z istim operacijskim sistemom je
npr. sistem GNU/Linux na različnih arhitekturah>. Značilen primer
strojne arhitekture, ki podpira dva različna strojna vmesnika, je
arhitektura AMD64 , ki hkrati podpira x86
in x86_64
.
Strojna arhitektura opisuje obstoječa sistemska sredstva - tip procesorja, strojnke kode, sistemskega vodila, V/I enot, dostopa do pomnilnika, diskov, uporabniških vmesnikov itd.
Lahko obstja več različnih arhitektur, ki uporabljajo isti tip
procesorja, vendar zahtevajo drugačno sistemsko podporo. Najbolj znani
primeri te vrste so stare platforme družb Apple, Amiga in Atari s
procesorji M86xxx
družbe Motorola.
Določeno arhitekturo lahko podpirajo različni tipi procesorjev. AMD,
Intel in Transmeta npr. izdelujejo procesorje, ki kljub bistveno
različni implementaciji podpirajo arhitekturo I32
in strojni
vmesnik x86
.
Prodajalci komericalne programske opreme pogosto navajajo le kompatibilnost programske opreme s strojno arhitekturo in različico operacijskega sistema. Ob eksploziji novih cenovno dostopnih strojnih arhitektur in različnih prostih distribucij operacijskih sistemov, ki jih podpirajo, se postopoma uvaja natančna specifikacija kompatibilnosti in zahtev programske opreme na ravni programskih in strojnih vmesnikov.
Grid-COSI prinaša fleksibilno rešitev za enega največjih problemov tehnologij grid, ki ga predstavlja raznolikost programskih in strojnih okolij. Različni radikalni pristopi, kot je poenotenje operacijskih sistemov in strojnih arhitektur na vseh sodelujočih računalnikih ali popoln prehod na prenosljive tehnologije, (npr. okolje Java v grid Toolkit 4.0) se temu problemu izogibajo ali ponujajo delne, navidezne rešitve, ki s sabo prinašajo neoptimalen izkoristek strojnih sredstev ali povzročajo dodatno delo, ker omejujejo uporabo programskih orodij in programskih knjižnic. Predvsem te rešitve v resnici problem le odlagajo, dokler se zaradi zastarelosti posameznega dela takšne poenotene platforme vprašanja kompatibilnost, prenosljivosti in različnih arhitektur ne pojavijo še v hujši obliki.
Programska oprema za raziskave na prodročju fizike visokih energij je
večinoma napisana v treh programskih jezikih, to so C++
, C
in
Fortran
. Gre za prevedene jezike, ki imajo velike zbirke splošnih
in specializiranih knjižnic in omogočajo odličen izkoristek strojne
opreme. Interpretirani programski jeziki, kot so Perl
, Python
,
Ruby
in Java
, se občasno uporabljajo kot sistemska orodja,
vmesni moduli (middleware) in pri implementaciji spletnih ter
grafičnih uporabniških vmesnikov. Zato je treba programsko opremo
prevesti v binarno obliko, preden je uporabna za izvajanje na
posameznih računalnikih v račualniškem grozdu, za to pa je treba
namestiti vse knjižnice, programsko opremo in servise ter razvojna
orodja, ki jih zahteva postopek prevajanja posameznega programa.
Prvi problem, ki se pojavi, so razlike med operacijskimi sistemi in programskimi okolji. Čeprav na vseh računalnikih uporabljamo operacijski sistem GNU z sistemskim jedrom Linux, različne distribucije, različice jeder, različice razvojnih okolij in nameščene programske opreme pomenijo zelo raznoliko okolje, kjer lahko pride do vrste nekompatibilnosti, ker je programska oprema laho odvisna od posamezne različice (ali pa je zaradi napake odvisna od podrobnosti v implementaciji) posameznega programskega vmesnika (API). Ta problem v kolaboraciji Atlas in v Evropskem laboratoriju za fiziko delcev CERN na sploh rešujejo s standardizirano distribucijo sistema GNU/Linux, ki se imenuje Scientific Linux CERN in so ga razvili na osnovi distribucije RedHat (gl. http://linux.web.cern.ch/linux/). Vendar pa ta rešitev ni splošna, ob prehodu na novo različico distribucije pa pride do vseh navedenih problemov.
Drugi problem so različna strojna oprema in strojni vmesniki.
Dodaten izziv ob postavitvi gruče SiGNET je predstavljala priložnost,
da bi z uporabo nove sistemske arhitekture družbe AMD (AMD-64) dobimo
bistveno zmogljivejšo gručo, kot bi bilo to mogoče z uporabo
arhitekutre I32. Strežniski s procesorji AMD Opteron imajo izredno
hiter dostop do pomnilnika in velik vmesni pomnilnik, kar je zelo
pomembno za računsko zahtevne aplikacije na področju fizike visokih
energih, poleg tega hkrati podpirajo dva strojna vmesnika (ABI, glej
okvirček), x86
in 64-bitni vmesnik x86_64
z dodatnimi
procesorskimi registri in 64-bitnim naslavljanjem pomnilnika. Podpora
za uveljavlji strojni vmesnik x86
zagotavlja strojno
kompatibilnost, vendar programska oprema, prevedena za strojni vmesnik
x86
, ne izkorišča vseh zmožnosti nove arhitekture. Če hočemo
izkoristiti tako kompatibilnost kot kapacitete nove arhitekture,
morata operacijski sistem in programska oprema grid hkrati podpirati
izvajanje aplikacij, prevedenih za eni ali drugi strojni vmesnik.
Grid-COSI je fleksibilen vmesnik, ki na osnovi specifikacije
posameznega zahtevka za izvajanje v gridu in razpoložljivih različic
zahtevane aplikacije izbere najboljšo kombinacijo programskega (API)
in strojnega (ABI) vmesnika in pripravi ustrezno sistemsko
okolje. Kombinacija izvirnega nameščenega sistema in virtualnega
sistema, ki ga zagotavlja Grid-COSI, dajeta aplikaciji popolno
kompatibilno sistemsko okolje, ki se izvaja s polno hitrostjo in brez
strojne emulacije. Sistem Grid-COSI svoje delo opravi s pomočjo
sistemskega klica chroot
, vrste drugih sistemskih klicev in
nastavitev, funkcij linkerja in zahtevnejših funkcij datotečnih
sistemov operacijskega sistema GNU/Linux.
S pomočjo sistema Grid-COSI vmo v grozdu omogočili sočasno izvajanje aplikacij, ki zahtevajo različne različice operacijskega sistema in različne strojne vmesnike (in torej nekatere tečejo v 32-bitnem, druge pa v 64-bitnem načinu). Z nadalnjim razvojem sistema smo izboljšali fleksibilnost sistema, ga integrirali s vmesniško programsko opremo LCG EGEE in ga postopoma integriramo s prihajajočo arhitekturo gLite. Kljub relativno počasnemu razvoju podpore za multiple arhitekture (Multiarch) v različnih distribucijah operacijskega sistema GNU/Linux še vedno pripravljamo tudi tesnejšo integracijo Grid-COSI s sistemskimi funkcijami.
Kot programsko okolje za gruče na odseku F9 IJS že dlje časa razvijamo sistem Gled.
Gled
(Generic Lightweight Environment for Distributed computing,
http://www.gled.org/) je ogrodje in orodje za hiter razvoj
aplikacij v jeziku C++ z grafičnim uporabniškim vmesnikom (GUI),
tridimenzionalno grafiko (OpenGL) in podporo za razpršene arhitekture
in serializacijo podatkovnih struktur. Gled je namenjen za razvoj
aplikacij za raziskave na področju fizike visokih energij in
interaktiven razvoj uporabniških vmesnikov, servisov in aplikacij na
področjih razprsenih računalniških sistemov in tehnologij grid.
Gled temelji na sistemu ROOT, ogrodju za objektno-orientirano analizo in obdelavo podatkov, tako da so v Gledu na voljo številni servisi tega okolja, kot npr. interpreter jezika C++ CINT, interaktivni vmesniki za reprezentacijo podakov, vmesniki za izdelavo dokumentacije in poročil itd. (prim. http://root.cern.ch/). Gled vsebuje mehanizme za delo s kompleksnimi zbirkami objektov, serializacijo objektov, grafično pregledovanje im manipulacijo z zbirkami objektov, ogrodje za dinamično vizualizacijo in vgrajen trodimenzionalni vmesnik za grafiko OpenGL s strojno podporo.
Sistem Gled vsebuje kompleksen in vsestranski sistem za razpršeno izvajanje aplikacij v grozdih, v katerem je posamezen proces, ki je z drugimi povezan v hierarhiji mrežnih povezav po protokolu TCP/IP lahko strežnik, posrednik (proxy), odjemalec in grafični vmesnik, pri čemer lahko posamezen proces opravlja več funkcij. Ogrodje za razvoj razpršenih aplikacij vključuje mehanizme za overjanje in sistem dovoljenj (access control), oddaljeno izvajanje klicev in sinhrono izvajanje klicev po grozdu, oddaljeno izmenjavo podatkov, hierarhicno posredovanje zbirk objektov in kontroliran multithreading po vsem grozdu.
Gled vsebuje preprosta orodja za razširjanje sistema z dodajanjem lastnih zbirk knjižnic (library sets, libsets). Ta orodja pripravijo ogrodje za nove zbirke knjižnic, objektov in grafičnih implementacij (rendering extensions). Za preprosta opravila je na voljo vmesnik za skripte v jeziku C++ in interaktivni interpreter za C++. Običajna aplikacija v sistemu Gled je sestavljena iz zbirke knjižnic, ki implementirajo funkcije aplikacije in elemente grafičnih vmesnikov, in skripte v C++, ki nastavi parametre vmesnikov in razpršene gruče ter zažene ustezne funkcije v knjižnicah. Takšna arhitektura omogoča zelo hiter razvoj.
Sistem Gled je že v eksperimentalni razvojni fazi — aplikacije na njegovi osnovi so že v uporabi, lahko pa tudi samostojno upravlja z gručami, v letih 2005 in 2006 je bil uporabljen kot demonstracijski prikaz delovanja programske opreme eksperimenta LHC ATLAS v gridu EGEE v EU, ZDA in v Indiji. Trenutno poteka nadaljnji razvoj sistema, zlasti nadaljnja integracija s sistemom ROOT in integracija z različnimi ravnmi programske opreme za upravljanje z virtualnimi gručami grid, del sistema Gled pa je bil vgrajen kot del ogrodja ROOT in bo tako v splošni uporabi v fizikalnem znanstvenem okolju.
Gled je izjemno dragocen kot orodje za prototipno in interaktivno testiranje protokolov in algoritmov za upravljanje z gručami. Nadaljnji razvoj sistema Gled kot okolja za razvoj distribuiranih aplikacij, ki težejo na gručah v gridu, ni samo splošno koristen - takšna okolja so za razvoj aplikacij na področju fizike osnovnih delcev in projekta LCG nenadomestljiva.
Objava za javnost © 2004-2006 Odsek F9, Institut "Jožef Stefan". Datum zadnje objave: oktober 2006.