Berkeley Open Infrastructure for Network Computing
Z Wikipedie, otevřené encyklopedie
Berkeley Open Infrastructure for Network Computing (BOINC) je infrastruktura pro distribuované výpočty, která umožňuje provozovat projekty jako je SETI@Home. Tento software je svobodný s otevřeným kódem a je vydán pod licencí LGPL. BOINC je vyvíjen skupinou, která pochází z Kalifornské univerzity v Berkeley a je vedena Davidem Andersonem, ředitelem projektu Seti@Home.
SETI@Home je jedním nejznámějších projektů využívající BOINC. Úspěch SETI@Home, který se krátce po svém spuštění stal nejvýkonnější počítačovou sítí na světě [zdroj?], všechny přesvědčil, že distribuované výpočty se můžou použít i pro mnoho jiných výpočetně náročných vědeckých projektů. Záměrem BOINCu je umožnit badatelům různých oborů, například molekulární biologie, klimatologie nebo astrofyziky, jednoduchý přístup do výpočetní sítě osobních počítačů na celém světě s ohromným výkonem.
BOINC je založen na myšlence, že po světě běží naprostá většina počítačů nevyužita. Moderní operační systémy dokážou tento nevyužitý výkon spotřebovat, aniž by došlo k výraznému zpomalení aplikací, které uživatel používá.
Obsah |
[editovat] Design a struktura BOINCu
BOINC je navržen jako otevřená struktura pro každého, kdo by se rád zapojil do projektu distribuovaného počítání. Většina projektů využívajících BOINC je neziskových a závisejí, pokud ne zcela, tak převážně na dobrovolnících. To ale neznamená, že BOINC nemůže být použit pro zisk. BOINC sestává ze serveru a klientů, kteří spolu komunikují při distribuci pracovních jednotek. Každý klient pak jednu jednotku zpracuje a vrátí ji serveru, aby si posléze vyžádal další.
[editovat] Struktura serveru
Hlavní součástí je takzvaný backend server, který může běžet na jednom nebo několika strojích, takže je BOINC možno snadno nastavit pro potřeby různě velkých projektů. Servery BOINCu běží na počítačích s Linuxem a pro své webové a databázové systémy používají Apache, PHP a MySQL. BOINC jen distribuuje pracovní jednotky a sám žádnou vědeckou práci nedělá. Vědecké výpočty běží na počítačích uživatelů a výsledky jsou zpracovány až po tom, co jsou ověřeny a přesunuty z BOINCu do vědecké databáze.
[editovat] Struktura klienta
Klient BOINCu je malá aplikace, která spravuje práci na počítačích připojených do některého z projektů postavených na tomto systému. Jakýkoliv počítač připojený k BOINCu může zpracovávat data pro libovolný počet projektů v různých odvětvích výzkumu. Klient zodpovídá za stahování a odesílání pracovních jednotek a výsledků z nich. Kromě toho je klient zodpovědný také za přidělování času, který počítač stráví při výpočtech pro jednotlivé projekty podle nastavení uživatele.
Klient systému BOINC se nemůže z bezpečnostních důvodů sám updatovat, ale samotné vědecké aplikace jsou automaticky stahovány, jakmile se počítač přidá k některému z projektů. Toto umožňuje jednoduše vydat a distribuovat nové verze vědeckých aplikací bez zprostředkování uživatelem a prodlení.
[editovat] Ohodnocení uživatele připojeného do BOINCu
Z různých statistických důvodů BOINC zahrnuje také systém ohodnocení uživatelů. Tento systém také zabraňuje podvádění, a tím znehodnocení vědeckých výpočtů.
Pro ohodnocování uživatelů se používá jednotka cobblestone pojmenovaném po Jeffu Cobbovi z projektu SETI@Home. Uživatel získá 100 cobblestonů, pokud jeho počítač s následujícími parametry pracoval 1 den.
- 1 miliarda operací za sekundu s čísly s plovoucí řádovou čárkou (založeno na benchmarku Whetstone)
- 1 miliarda operací za sekundu s celými čísly (založeno na benchmarku Dhrystone)
Těchto parametrů dnešní osobní počítače celkem běžně dosahují. V případě, že má uživatel rychlejší počítač, cobblestony mu přibývají rychleji a naopak.
Projekty využívající BOINC uvolňují své statistiky ve formátu XML, takže kdokoli je může po svém zpracovat. Vznikly tak už mnohé statistické webové stránky třetích stran, které porovnávají výkon jednotlivých uživatelů, týmů, do kterých se uživatelé mohou sdružovat, jednotlivých typů počítačů, operačních systémů a také zemí. Uživatelé tak mohou mezi sebou svým způsobem závodit, což při garanci zachovaní hodnověrnosti výsledků přináší zvýšení výkonu celé sítě.
[editovat] Projekty využívající BOINC
[editovat] Biologie, lékařství
- Rosetta@home—Výzkum struktury proteinů
- Malariacontrol.net—Vědecká činnost v oblasti výzkumu šíření Malárie
- QMC@home—Výzkum v oblasti kvantové chemie
- SIMAP—Simap se zaměřuje na analýzu známých proteinů a zkoumá podobnost jejich funkcí
- Folding@home—Výzkum struktury proteinů
- Predictor@home—Hledání struktur bílkovin
[editovat] Astronomie, fyzika
- Einstein@Home—Hledání gravitačních vln
- LHC@home—Optimalizace detektorů na urychlovači LHC v CERNu
- SETI@home—Hledání mimozemských signálů
- Astropulse—Nové hledání signálů z Vesmíru
- PlanetQuest—Hledání nových planet
- Cosmology@Home—Práce s modely popisujícími náš vesmír
- MilkyWay@Home—Výzkum vývoje Mléčné dráhy
- Orbit@Home—Monitoring srážek vesmírných těles s planetami
[editovat] Matematika
- SZTAKI Desktop Grid—Hledání zobecněných systémů dvojkových čísel
- PrimeGrid—Rozklad čísel na prvočísla
- ABC@Home—Projekt zkouší prvočísla a,b,c, pro která platí takzvaná ABC rovnice (hypotéza) a + b = c
- Enigma@Home—Cílem projektu je dešifrovat zprávy zakódované Enigmou M4
- Leiden Classical—Projekt se pokouší o vysvětlení některých základů vědy
- RieselSieve—Hledání prvočísel za pomoci Riesel teorie
[editovat] Grafika
- BURP—Vývoj distribuovaného systému pro renderování 3D animací
- BRaTS@Home—Výpočty v oblasti Ray Tracingu
- RenderFarm@Home—Projekt zaměřený na renderování grafiky
[editovat] Ostatní projekty
- The Lattice Project—Projekt sdružující aplikace z různých oblastí
- Climateprediction.net—Předpověď klimatu
- Pirates@Home—Testovací projekt pro Einstein@Home
- World community Grid-Projekt sdružující aplikace z různých oblastí, pod patronaci IBM

