Vyhledávání


BOINC – virtuální laboratoř aneb oč tu vlastně běží

03.12.2016 10:35

Autor: Merlin SF, vytvořeno 21.2.2008

BOINC neboli Berkeley Open Infrastructure for Network Computing je velmi, velmi zvláštní fenomén. Je nejznámějším pojmenováním fenoménu, označovaného jako DC ( Distributed Computing ), neboli distribuovaných výpočtů. Jeho název Berkeley otevřená infrastruktura pro síťové výpočty v sobě nese informaci o místu jeho zrození, o University of Berkeley. A Berkeley zná snad každý z nás. Je jedním z předních světových center pro fyziku všech možných odvětví, od kvantové mechaniky až po astrofyziku.

1. Co že to vlastně je ?

Dnešní vědecká zkoumání využívají stále modernějších technologií při sledování nějakého jevu, což sebou přináší rostoucí počet dat, získaných pro další analýzu. A toto množství se dnes navyšuje téměř exponenciálně. A tady se nám nabízejí dvě možnosti technologie k jejich zpracování. Pojďme se podívat na první z nich.
 

2. Megacomputer

Již jsme si nastínili obrovské množství údajů, čekajících na další zpracování pomocí různých algoritmů. Nyní si představme hardwarové požadavky na počítač, který by byl určen jen pro jejich zpracování. Základním požadavkem je početní výkon. Dnes, počátkem roku 2008 víme, že jeden z nejúspěšněji používaných nových procesorů Intel, konkrétně mezi námi počtáři velmi oblíbený Intel Core 2 Duo Quad @2,40GHz má v základním taktu zmiňovaný početní výkon asi 5 500 000 000 operací za sekundu. Srozumitelněji výkon 5,5Gflops. Současný požadavek na početní výkon od průměrného projektu je však deset až stotisíckrát vyšší. Můžeme tedy zakoupit obrovskou halu, do níž umístíme pro příklad 10 000 počítačů osazených tímto procesorem. A tyto počítače zapojíme do sítě. Myslím, že dvacetipatrová hala velikosti ligového fotbalové hřiště by pro začátek mohla stačit.

Máme nyní strukturu, která představuje jakýsi „ideální počítač“. Můžeme být spokojeni, s investicí v řádu milionů dolarů jsme jej vybudovali. Jenže, nesmíme zapomenout na další roztomilou vlastnost každého počítače. Ke své činnosti potřebuje stálý přísun elektrické energie. A protože dnes víme, že průměrná spotřeba průměrného počítače s tímto procesorem je asi 180 W, a my jich máme v hale deset tisíc, potřebujeme příkon v hodnotě 1.800 kWh. Fajn, postavíme si za pár dalších milionů vlastní elektrárnu. A jdeme na to. Další omyl přátelé. Těch desettisíc počítačů má další negativní vlastnost. Vzhledem k faktu, že část elektrické energie se při jejich činnosti přemění na teplo, a ztrátové teplo bude třeba jen 50 W na jeden z nich, máme tu navíc 500kW tepelného výkonu. A to by vytopilo menší městečko. Jak známo, teplo a elektronické součástky se snesou je do určitého poměru. Nechceme-li si naši investici za miliony upéct, musíme účinně chladit = další náklady. A to jsme se ještě nedostali ke svícení, obsluze, údržbě a vrátnému. Máte-li pocit, že jsem nyní vyčerpal všechny nároky, mýlíte se. Trend vývoje počtu dat pro analýzu roste, jak jsme si již říkali, exponenciálně. Aby projekt fungoval i za rok prostřednictvím tohoto megapočítače, bude nutno pravděpodobně během jediného roku:

Upgradovat hardware na nejnovější úroveň, zdvihnout halu o dalších deset pater a zdvojnásobit počet zapojených počítačů. A to jsou další a další investice. A žádná banka na světě tohle financovat nebude, ani kdyby měla stoprocentní jistotu že na konci tohoto úsilí naleznete odpovědi na všechny záhady, objevíte nesmrtelnost a prostředek na léčbu všech chorob.

Pojďme se spolu nyní podívat na jeden zajímavý paradox, kterým je možnost zpracování zmiňovaných dat s minimálními náklady a maximální flexibilitou.
 

3. Mravenci a sloni aneb kdo udělá více práce

Statistika předvídá, že každý z vás milí čtenáři, který právě dorazil na tyto řádky, má k dispozici nějaký ten počítač. Na velikosti, výkonu a typu, operačním systému a formě vlastnictví příliš nezáleží. Záleží spíše na tom, k čemu a kdy jej používáte. Proč? Vysvětlím na modelové situaci, kterou lze použít stejně tak pro počítač doma nebo ve vaší kanceláři.

Přijdete ke svému PC a zapnete jej. Záleží na jeho typu a vybavení, operačním systému a vaší šikovnosti s hesly ve Windows, než plně „naběhne“. Spustíte nějakou tu aplikaci, gamesku nebo třeba Excel a začnete se věnovat interaktivní zábavě ( nebo trápení, podle typu té dané aplikace ). Co se však děje uvnitř počítače? V procesoru? V jednu chvíli zpracovává sadu instrukcí. Pak nic. A zase pracuje. A zase nic. To nic je zdánlivě nepatrné, ale je. A tady je ten paradox. Máte počítač. Běžící počítač. Počítač konzumující elektrickou energii. Ale chvílemi nic nedělající. A tyto chvíle je možno využít právě pro zpracování té obrovské spousty dat, která na to čeká. Jak?

 

Spojíme všechny takové počítače do jedné obrovské struktury. Po drobných kouscích poskládáme úctyhodný výpočetní výkon jen ze ztrátového času vašich lenošících procesorů. A předčíme se svými stroji všech typů a národností mnohonásobně výkon výše zmíněného megapočítače. No uznejte sami, není to geniální ? Je, viďte.

Nyní se zeptáte jak toho docílit. Jednoduše. Pojďme si trochu osvětlit princip BOINCu.
 

4. Datová samoobsluha a její regály

BOINC platforma je postavena na myšlence rozmělnění obrovských datových souborů na mnohem menší části, které je reálně schopen běžný počítač zpracovat v řádu několika hodin až dnů. Aby byl vyloučen zásah vyšší moci do tohoto systému, stal se jeho základem soubor zvaný Boinc Manager, obsahující mimo jiné také Boinc Core neboli jádro. Tento software je volně šiřitelný, a jeho úkolem je po instalaci do vašeho počítače po krátkém nastavení za vaší účasti komunikovat s vámi zvoleným projektem automaticky tak, aby vás neobtěžoval a současně vynecháním nutnosti manuálního ovládání eliminoval problém mezi klávesnicí a monitorem. Ale k samotnému prvotnímu nastavení se vrátíme až v instalačním návodu, nyní jej vynechme.

Onen Boinc manažer běží jako služba, a za vás komunikuje s vámi zvoleným projektem. Po přihlášení k projektu dojde ke stažení příslušné aplikace, především sady algoritmů a datových jednotek, takzvaných WU neboli workunits. Boinc manažer monitoruje vytížení vašeho procesoru. Když zjistí stav „nicnedělání“ zapojí do procesoru některou z uvedených jednotek a ten pěkně šupajdí zase do práce. Jakmile ale manažer zjistí požadavek vašeho systému nebo aplikace na prostředky procesoru, výpočet odpojí a čeká. A tak to běží až do doby, kdy je příslušná jednotka hotova, odeslána a nahrazena další, pokud jste v původním nastavení tuto volbu povrdili.

A určitě už vás napadlo, co že za to bude, když pomáháte svými počítači šetřit projektům výše uvedené náklady. Nic, přátelé, nic. Tedy skoro nic. Za každou spočítanou a odeslanou jednotku obdržíte na svůj účet příslušný kredit. Ne finanční a ne na skutečný účet. Pouze kredit virtuální o jehož funkci se ještě zmíníme ve druhé kapitole . Vaším administrátorským úkolem a současně právem je rozhodnout se, k jakému projektu a v jakém rozsahu se připojíte. A vaší odměnou je vědomí, že pomáháte v mnoha vědních oborech nalézt odpovědi a řešení, jimiž se projekty zabývají.

Pokud vás předchozí řádky zaujaly, a chcete se dozvědět více o jednotlivých vědeckých projektech a jejich zaměření, čekají na vás další informace  zde.