Domov
Novinky
Projekt
Archív ?lánkov
Optimalizácia
Návody
Galéria
Stiahnite si
Odkazy
Diskusné fórum
Fórum - archív
Vyh¾adávanie
TO-DO
Kontakt

BOINC.SK


Od 1.1.2002


Astronomick
snmok
da

APOD






Page Rank
 
 
Prechádzame na BOINC

Samotný názov je skratkou z anglického "Berkeley Open Infrastructure for Network Computing", èo sa dá vo¾ne preloži ako "Otvorená infraštukrúra pre sieové výpoèty z Berkeley". Tu mi pre úplnos nedá nespomenú, èo je to Berkeley. Je to univerzita v Kalifornii v Spojených štátoch. Systém BOINC je teda softvérová platforma špeciálne vyvinutá pre distribuované výpoèty, využívajúca dobrovo¾ne poskytnuté zdroje poèítaèov pripojených na internet. Táto infraštruktúra je vhodná na použitie v rôznych projektoch a jedným z nich je práve projekt SETI@home, pre ktorý bola vlastne táto platforma vyvinutá. Konkrétne sa budem ïalej venova práve využitiu uvedenej platformy pre projekt SETI@home, ale v zásade to platí aj pre iné projekty pod touto platformou.

O èo vlastne ide?

Samotný BOINC je systém typu klient-server, èo znamená, že sa skladá z dvoch èastí. Vlastne z troch, ale tretia èas, SETI@home klient, nie je priamo suèasou systému BOINC, je to len jeden z projektov.

Jedna èas beží na servry a stará sa o nieko¾ko vecí:

  • distribuovanie pracovných jednotiek - dobre známych "work unit", skrátene WU, užívate¾om zúèastneným na projekte,
  • prijímanie už spracovaných WU,
  • kontrola a porovnávanie prijatých výsledkov,
  • automatická distribúcia samotného klient modulu daného projektu v ktorom sa prevádza samotný výpoèet a to je vlastne ten dobre známy klasický SETI@home klient,
  • má na starosti aj web rozhranie, ktoré slúži na nastavenie parametrov pre klientov a práve tu si každý úèastník môže nastavi svoj profil, ve¾kos zásobníka s WU na svojom poèítaèi a niektoré iné parametre.

Druhá èas beží u klienta, teda na poèítaèi uèastníka projektu a má na starosti nasledovné veci:

  • komunikáciu so servrom, prijímanie WU a ich odosielanie po ukonèení výpoètu,
  • sledovanie dostatoèného naplnenia zásobníka s WU - pri poklese množstva WU v zásobníku si vyžiada nové WU od servra,
  • po zmene konfigurácie na servry sa postará aby sa táto zmena preniesla na klienta, kedže sa skoro všetko nastavuje priamo na servry cez web rozhranie ako to už bolo písané,
  • a pochopite¾ne zobrazuje informácie o aktuálnom stave, o komunikácii so servrom ale aj o kredite, prípadne dobre známe grafické zobrazenie z klasického šetrièa obrazovky ale už v novom kabáte pod grafickým rozhraním OpenGL (DirectX nebolo použité z dôvodu multiplatformovosti projektu BOINC (Windows, UNIX, ..).

Ako to funguje?

Pri prvej návšteve stránky projektu, v tomto prípade SETI@home, na adrese http://setiweb.ssl.berkeley.edu/, je potrebné kliknú na linku v ¾avej èasti: "Participate in SETI@home". Pokia¾ ste boli zúèastnení na klasickom projekte SETI@home, tzv. S@H1 (SETI@home 1), je možné využi informácie zo starého konta, váš profil, príslušnos k tímu. Vtedy si nové konto aktivujete využitím linky "activate the account", kde následne zadáte mailovú adresu. Na tú vám bude zaslaný nový aktivaèný k¾úè. Pokia¾ ale k tejto mailovej adrese už nemáte prístup, vaše staré konto sa použi nedá a musíte si vytvori nové. O niè ale neprídete, zrealizované WU v S@H1 sa neprenášajú do SETI@BOINC, keïže tu sa to eviduje úplne inak. Ale o tom neskôr. Jediná vec ktorá by Vás mohla mrzie je dátum registrácie, nebudete totiž už nieko¾koroèný úèastník, ale vlastne nováèik. Poznámka: Úèty zo S@H1 sa prenášali okolo 15. mája, takže ak ste si zmenili emailovú adresu po tomto termíne, nový systém SETI@BOINC o tom informáciu nemá a tento problém sa pod¾a oficiálneho vyjadrenia Davida Andersona ani nebude rieši. V prípade nového úèastníka, alebo pokia¾ je problém s prístupom k mailovej schránke, použite linku "Create a new account", kde staèí následne vyplni pár základných údajov, podobne ako v prípade S@H1 a na vašu emailovú adresu vám bude zaslaný aktivaèný kód.

Prvý krok je za nami. Úèet je vytvorený. Na dokonèenie už len treba stiahnu BOINC klienta, kliknú na linku "Download", vybra si správnu platformu vášho poèítaèa a po stiahnutí spusti inštaláciu (stiahnutý súbor).

Po nainštalovaní BOINC klienta sú nutné dve veci:

  1. Cez menu "Settings" nastavi "Proxy server" pokia¾ je to nutné a to väèšinou presne tak ako to máte nastavené vo vašom internetovom prehliadaèi. Pokia¾ máte aj napriek dobrému nastaveniu proxy servera stále problém pripoji sa – použite program Proxomitron, ktorý nájdete v sekcii Stiahnite si.
  2. Pripojenie k projektu. Koneène sme sa dostali k samotnému SETI projektu! Tiež cez menu "Settings" a vo¾bu "Attach to Projekt" je treba zada aktivaèný k¾úè, ktorý ste po registrácii dostali e-mailom a URL adresu projektu: http://setiathome.berkeley.edu, ktorú ste tiež obdržali e-mailom o registrácii.


Od tejto chvíle, ak všetko prebehlo dobre, ste úèastníkom projektu SETI@home a BOINC klient sa spojí so servrom, aby stiahol samotného SETI klienta, èo je vlastne klasický S@H1 klient, avšak upravený pre systém BOINC. Od tejto chvíle máte o SETI klienta postarané, pokia¾ bude novšia verzia, BOINC klient ju automaticky nahradí na vašom disku a nemusíte sa o niè stara.

Je možné sa pripoji k viacerým projektom a nastavi pre každý ko¾ko zdrojov z vášho poèítaèa mu chcete venova.

Následne si BOINC klient vyžiada WU od servra pre váš SETI klient a ten mu poskytne to¾ko WU, na taký èas, ako si nastavíte na servry. Pokia¾ ste sa tam ešte nedostali tak je to prednastavené na 1 deò.

Po stiahnutí prvého WU hneï spustí výpoèet. A teraz podobnejšie k nastaveniam.

Nastavenia

Nastavenia sú hlavne na web stránke vášho úètu ale niektoré sú na BOINC klientovi.

BOINC klient

Hlavné menu - File:
Run Always: klient bude beža stále bez oh¾adu na preferencie nastavené na vašom úète na webe, tam je totiž možné zadefinova, kedy má klient pracova a kedy nie.

Run based on prefferences: aktivita klienta sa riadi nastavením vo vašom úète.

Suspend: aktivita je úplne pozastavená.

Disable BOINC Network Access: zakázanie komunikácie so servrom.

Run Benchmarks: spustenie benchmarkov, tieto sú podstatné aby server vedel ako môže klientský poèítaè zaaži. Poèas behu benchmarkov sa nedoporuèuje niè robi s poèítaèom aby boli výsledky èím objektívnejšie. O výsledku sa dá dozvedie v záložke Messages. Táto položka sa nijak nevzahuje na váš budúci celkový kredit, ide len o optimálne zásobovanie klienta dátami na spracovanie.

Hide: klient sa skryje do tzv. SystemTray-a èo sú tie malé ikonky ved¾a èasu. Platí aj pre iné OS ako Microsoft Windows, ale toto chovanie sme nemali zatia¾ kde otestova.

Exit: ukonèenie.

Hlavné menu - Settings:

Attach to Project: slúži na pripojenie sa k projektu na ktorom sa užívate¾ chce podie¾a.

Proxy Server: nastavenie proxy servra, väèšinou rovnako ako pre interntový prehliadaè ale niekedy to môže by iné, doporuèuje sa nastavi tak ako v prehliadaèi.

Hlavné menu - Help:

About: informácia a verzii BOINC klienta na vašom poèítaèi.

Záložka - Projects:

V tejto záložke je zoznam projektov na ktorých sa systém zúèastòuje. Je tam zobrazený názov projektu, užívate¾ský úèet, kredit, priemerný kredit (zjednodušene povedané je to priemerný nárast kreditu za jeden deò), miera poskytnutých zdrojov pre daný projekt.

Po kliknutí pravým tlaèitkom na konkrétny projekt sa zobrazí menu:

Website: presmeruje na stránku projektu.

Update: obnova údajov so servrom, táto vo¾ba je vhodná na manuálne spojenie so servrom, kedy sa obnoví kredit, skontroluje sa èi nie je nutné stiahnu da¾šie WU a podobne. Rovnako sa práve touto vo¾bou oznámi na server po odoslaní už hotových WU, že sú hotové a žiada sa ich spracovanie. Samotné zaslanie hotového WU na server to totiž nerobí automaticky.

Detach: odpojenie od projektu.

Záložka - Work

Tu je zobrazená aktivita WU projektu, názov projektu, aplikácia projektu, názov WU, èas ktorý procesor na danom WU pracoval, priebeh spracovania, ko¾ko èasu chýba do ukonèenia WU, èas, do ktorého je treba WU dokonèi, stav WU.

Pravým tlaèítkom myši je možné zobrazi starú známu grafickú reprezentáciu ale teraz v novom šate, prostredníctvom OpenGL v 3D zobrazení.

Záložka - Transfers:

Ako hovorí názov, tu vidno aktuálny prenos WU, èi už sahovanie nových alebo odosielanie hotových.

Pravým tlaèítkom je možné manuálne zopakova pokus o prenos pokia¾ nieèo zlyhalo.

Záložka - Messages:

V nej sa zobrazujú správy od servra, príkazy ktoré sa naò posielajú a pokia¾ nieèo nefunguje, tak sa práve tu dá väèšinou zisti, èo sa deje. Takisto aj keï všetko funguje, tak sa to práve na tomto mieste dá "èíta".

Záložka - Disk:

Grafická reprezentácia využitia disku klientom BOINC ako aj jednotlivými projektami.

To¾ko teda ku klientovi ktorý beží na vašom poèítaèi. Teraz nás èaká užívate¾ský úèet na web rozhraní, kde sa nastavujú všetky dôležité parametre. Dosta sa naò sa môžete buï priamou adresou alebo cez hlavnú stránku projektu a kliknutím na linku "Your account".

Po zadaní aktivaèného k¾úèa je možné ho zapamäta (pomocou tzv. cookies) aby ste ho nemuseli zadáva stále. Toto sa ale nedoporuèuje na verejných poèítaèoch napríklad v internet kaviarni. Asi nechcete aby vám mohol ktoko¾vek meni vaše nastavenia :).

Nastavenia majú nieko¾ko sekcií:

  • Account information: základné informácie o úète,
  • Profile: užívate¾ský profil, dobre známy z predošlej verzie,
  • Preferences: nastavenia,
  • Account statistics: štatistiky,
  • Other: iné informácie.


Ïalej sa budeme venova nastaveniam, takže sekcii Preferences. Už z podstaty BOINC vyplýva, že sú dve skupiny nastavení. Jedny, "General", sa vzahujú na samotný systém BOINC a platia pre všetky projekty, na ktoré je užívate¾ pripojený a druhé sú len pre daný projekt, v tomto prípade SETI@home.

Nastavenia General

Parametre:

Do work while computer is running on batteries? - Poèítaè má pracova aj pokia¾ ide na betérie? Platí hlavne pre notebooky.

Do work while computer is in use? - Má poèítaè pracova aj pokia¾ sa používa? Táto vo¾ba vlastne prepína projektového klienta do režinu šetrièa obrazovky, spustí sa len keï sa na poèítaèi niè nerobí. Inak pracuje vždy, ale netreba sa obáva, že by spomalil poèítaè. Nový SETI@home klient totiž pracuje s ešte menšou prioritou ako klasický a využíva len ten èas procesoru kedy procesor poèítaèa nerobí niè iné.

Do work only between the hours of - Tu sa dá nastavi v ktorom èase má klient pracova, napríklad mimo pracovného èasu, alebo len v noci a podobne.

Confirm before connecting to Internet? - Opýta sa pred pripojením na internet?

Disconnect when done? - Odpoji po skonèení prenosu? Toto nastavenie je relevantné len pre klasické vytáèané dial-up pripojenie cez modem.

Keep enough work on disk to last between - Udržiava to¾ko WU na klientovi aby mohol pracova od X do Y dní. Toto je podstatná vo¾ba, tu sa vlastne nastavuje ve¾kos zásobníka na vašom poèítaèi. Kedže maximálny èas, za ktorý po spracovaní jednej WU dostanete pridelený kredit je cca. 14 dní (ak odošlete WU po tomto termíne, WU sa využije tak èi tak, ale nedostanete pridelený žiadny kredit), treba tieto parametre nastavi pod¾a uváženia. Systém sám práve na základe benchmarkov a ostatných nastavení zistí, ko¾ko WU pošle. Takže sa nenastavuje celkový poèet WU v zásobe ale èas, poèas ktorého môže klient pracova offline bez nutnosti sahova alebo odosiela dáta. Potom to pekne vidno na klientovi v záložke Messages ako si váš klient žiada od servra X sekúnd práce.

On multiprocessors, use at most – V prípade viacprocesorového poèítaèa môžete nastavi minimálny poèet procesorov, ktoré môže klient použi.

Write to disk at most every - zapisova medzivýsledky na disk každých N sekúnd.

Ostatné parametre nie sú až také podstané a preto ich tu nebudem rozvádza. Podstané je nieèo úplne iné. Každý užívate¾ má totiž možnos nieko¾kých takýchto nastavení, konkrétne 4 a to pod¾a toho kde sa poèítaè nachádza alebo v ktorej skupine je.

Primárna skupina, alebo hlavná. Jej nastavenia sa aplikujú pre poèítaèe, ktoré sú v skupine pre ktorú nie sú špeciálne nastavenia. Skupina Doma, V práci, V škole. Pre každú skupinu je možné ma iné nastavenie práve týchto parametrov. Zaradenie poèítaèa do danej skupiny sa tiež robí v týchto nastaveniach ale trochu inde.

Nastavenie SETI@home

Parametre:

Resource share - zdie¾anie zdrojov. Tu sa nastavuje, ko¾ko percent bude poèítaè venova práve tomuto projektu.

Ostatné parametre slúžia na nastavenie vzh¾adu klienta: Graphics preferences,
Color preferences,
URL of background image,
URL of logo image,
povolenie zasielania noviniek emailom,
Should SETI@home send you email newsletters,
zobrazenie informácií o poèítaèi na web stránke,
Should SETI@home show your computers on its web site,
a posledná vo¾ba, do ktorej skupiny poèítaè patrí pokia¾ sa mu žiadna nenastaví,
Default computer location.

Rovnako aj tieto nastavenie je možné prispôsobit osobitne pre doma, prácu a školu, tak ako spoloèné nastavenia.

Nastavenia máme za sebou. Posledná vec sú štatistiky, takže sa dostávame k sekcii "Account statistics" na hlavnej stránke správy užívate¾ského úètu.

Správa užívate¾ského úètu

SETI@home member since - údaj odkedy je užívate¾ zapojený do projektu.

Total credit - celkový kredit. Tu je potrebné pripomenú, že kredit sa neráta za poèet spracovaných WU ako tomu bolo doposia¾. Kredit sa po novom poèíta pod¾a celkového množstva spracovaných dát, nie pod¾a jednotkovej miery vypoèítaných WU. Ten inými slovami doslova zobrazuje, aký usilovný je èlen zapojený od projektu.

Recent average credit - posledný priemerný kredit za jeden deò.

Pending credit View - preh¾aï kreditu ktorý èaká na priznanie. Nový systém ako už bolo spomenuté pracuje tým spôsobom že každý WU sa pošle 3 rôznym úèastníkom a až ked všetci traja odošlú výsledky na server, ten ich porovná, spracuje a až potom sa prizná kredit. A práve tu je možné toto sledova. Ale aj keï sú všetky 3 WU úspešne spracované tak to trvá nejaký ten èas, hlavne zo zaèiatku, treba ma trpezlivos. Údaje o kredite sa nestratia.

Team None (find a team) - h¾adanie tímu, pripojenie k tímu, prípadne je na tomto mieste zobrazený tím, do ktorého patríte.

Computers View - preh¾ad poèítaèov. Tu je možné sledova ako ktorý poèítaè pracuje, pokia¾ ich je viac, je èo sledova. A práve tu je možné daný poèítaè prida do skupiny a urèi èi je doma, v práci, v škole a pod¾a toho sa naò budú aplikova nastavenia. Údaje o poèítaèi zistí systém sám a netreba ich tam dáva. Za zmienku stojí možnos spoji dva poèítaèe. Napríklad ak ste medzièasom zmenili procesor, pridali pamä alebo preinštalovali operaèný sytém tak BOINC zdetekuje nový poèítaè. A práve vo¾bou "Merge" je možné ich spoji a evidova ako jeden.

Results View - preh¾ad výsledkov zaslaných na server.

Message board posts - príspevky do diskusných fór.


Systém SETI@home/BOINC


Celý systém SETI@home fungujúci na platforme BOINC pozostáva z nieko¾kých programov, nazývaných aj moduly, ktoré bežia na nieko¾kých poèítaèoch (na jednom aj nieko¾ko programov naraz) a zabezpeèujú plnú funènos celého systému. Akutálny stav týchto programov, servrov na ktorých bežia ale aj stav niektorých zásobníkov je možné sledova na tejto stránke.
Text "Running zelenom" políèku znamená že program je funkèný, naproti tomu text "Not running" v èervenom znamená že program nie je sputesný (to ešte nemusí znamena problém, niektoré programy sa spúšajú pod¾a potreby).

Programy

Data-driven web pages: Verejné web stránky na ktorých generovanie je nutný prístup k databáze. Stránky ako sú fórum, stránky obsahujúce štatistiky, informácie o verziách klienta a podobne. Tieto sú niekedy ruène pozastavené pokia¾ je databáza nefunkèná.
Scheduler: Rozhoduje ktoré pracovné jednotky budú odoslané/prijaté od konkrétneho klienta. Pokia¾ je tento vypnutý, nie je možné odosla ani prija žiadnu pracovnú jednotku.

Feeder: Plní zásobník Schedulera s pracovnými jednotkami ktoré su pripravené na odoslanie ku klientom. Scheduler je dostatoène vyažený komunikáciou s klientami a preto túto èinnos musí vykonáva tento modul.

File_deleter: Maže vstupné/výstupné súbory ktoré už nie sú potrebné. Tento program sa stará o to aby boli upload/download disky tak vyèistené ako je to možné.

Transitioner: Udžiava informácie o stavoch a vzahoch medzi pracovnými jednotkami a výsledkami. Zjednodušene, eviduje informácie o všetkých výsledkoch na ktorých sa pracuje a snaží sa o ich následné spracovanie. Stále sa dookola pýta otázky: Je táto pracovná jednotka pripravená na odoslanie? Už bol prijatý tento výsledok? Je to správny výsledok? Môže sa zmaza? Keïže je stále ve¾ké množstvo výsledkov a jednotiek na ktorých sa pracuje, je potrebné aby bolo spustených nieko¾ko týchto modulov súèastne aby sa udržal nepretržitý tok pracovných jednotiek a výsledkov. "Transitioner queue" (zásobník tohoto modulu) hovorí ko¾ko jednotiek/výsledkov je v zásobníku a èakajú na spracovanie. Ve¾ké èíslo znamená že nastal problém v servrovom systéme.

Sah_validate: Potvrdzuje SETI@home výsledky tým že porovnáva prijaté výsledky od nieko¾kých užívate¾ov. Pokia¾ bol prijatý dostatoèný poèet výsledkov jednej pracovnej jednotky a výsledky sú rovnaké tak pridelí kredit pre všetkých zúèastnených užívate¾ov. Jeho zásobník, "Validator queue", hovorí ko¾ko výsledkov momentálne èaká na kontrolu a pridelenie kreditu.

Sah_assimilator: Vyberá vedecké informácie zo skontrolovaných výsledkov a vkladá ich do hlavnej databázy projektu SETI@home kde sa ïalej analyzujú.

Sah_splitter: Èíta pásky (alebo ich obrazy na disku) ktoré obsahujú surové dáta z rádioteleskopu a vytvára pracovné jednotky pre BOINC/SETI@home klientov. Minimálne jeden je potrebný aby sa produkovali pracovné jednotky a to aj väèšinou staèí.Pokia¾ je spustený len jeden tak to znamená že je snaha minimalizova záaž na upload/download disky.


To je všetko. Niektorým možnostiam som sa možno nevenoval dostatoène a preto privítam akéko¾vek námety a pripomienky ktoré následne zakomponujem do tohoto dokumentu.
A ako sa zaradi no nášho tímu? Staèí klinú na linku.
Ïalšie informácie o BOINC je možné nájs na http://slavko.sk/boinc

slavko.sk

slavko[zavináè]seti[bodka]sk

Vytvoril: MeX [16. júl 2004] / Upraven: [14. október 2004 12:12:35] / Poet zobrazen: [10202]