BOINC
Z Wikipedii
Berkeley Open Infrastructure for Network Computing (BOINC) (Otwarta Infrastruktura Przetwarzania Rozproszonego Berkeley) to rozwiązanie z dziedziny obliczeń rozproszonych, które pierwotnie powstało dla potrzeb projektu SETI@home, aktualnie wykorzystywane jest również w zastosowaniach innych niż SETI. BOINC jest rozwijany na Uniwersytecie Kalifornijskim w Berkeley w Kalifornii przez zespół pod kierunkiem szefa projektu SETI@home, Davida Andersona. BOINC jest otwartym oprogramowaniem wydawanym na licencji GNU LGPL.
Spis treści |
[edytuj] Podstawy działania
Oprogramowanie BOINC dzieli się na oprogramowanie pracujące po stronie serwera projektu, oraz na oprogramowanie uruchamiane przez wolontariuszy na swoich komputerach.
Do najważniejszych aplikacji pracujących po stronie serwera należy scheduler (serwer harmonogramów). Zajmuje się on dystrybucją fragmentów danych do obliczeń pomiędzy komputery uczestników projektu. W swoim działaniu scheduler uwzględnia między innymi możliwości komputerów uczestników (moc obliczeniowa, ilość pamięci RAM), oraz średni czas w ciągu doby, jaki komputery te przeznaczają na pracę z BOINC. W ten sposób unika się nadmiernego obciążenia słabych komputerów, oraz pozwala się na pełniejsze wykorzystanie mocnych maszyn.
Jeżeli na komputerze otrzymującym dane do obróbki nie została jeszcze zainstalowana aplikacja mająca je przetwarzać, jest ona również przesyłana do uczestnika projektu. W ramach jednego projektu może funkcjonować wiele aplikacji, a wysyłane dane mogą być przeznaczone dla którejkolwiek z nich.
Gdy na komputerze uczestnika znajdą się zarówno dane do obróbki, jak i odpowiednia aplikacja, rozpoczyna się przetwarzanie danych. Czas przetwarzania jednej porcji danych jest różny w zależności od projektu i waha się od kilkunastu sekund, do kilkuset godzin. Dzięki okresowemu zapisywaniu wykonanej pracy, obliczenia nie muszą odbywać się w jednym nieprzerwanym ciągu, lecz mogą być zawieszane, gdy zachodzi potrzeba przeznaczenia mocy obliczeniowej na inne zadania (lub po prostu wyłączenia komputera).
Na jednym komputerze mogą znajdować się jednocześnie dane i aplikacje wielu projektów platformy BOINC, lecz w danym momencie przetwarzana jest tylko jedna porcja danych na jednostkę CPU (procesory dwurdzeniowe i procesory wyposażone w technologię HT mogą przetwarzać jednocześnie dwie porcje danych). Jeżeli komputer jest podłączony do więcej niż jednego projektu, czas procesora jest przydzielany aplikacjom po kolei, zgodnie z ustalonymi przez uczestnika przydziałami dla poszczególnych projektów.
Po przetworzeniu porcji danych, wyniki obliczeń przesyłane są do serwera projektu. Jednocześnie komputer użytkownika żąda pewnej ilości tzw. punktów kredytowych, zależnej od czasu poświęconego na przetworzenie danej jednostki i mocy obliczeniowej procesora.
W większości projektów te same dane są rozsyłane do kilku użytkowników, co daje możliwość porównania ich wyników w celu weryfikacji i wykluczenia ewentulanych błędów i oszustw. Następnie uczetnikom którzy przeliczyli daną jednostkę przyznawana jest taka sama ilość punktów kredytowych, zależna od punktów zażądanych przez poszczególne komputery. Sposób wyliczenia tej ilości jest różny w różnych projektów (może to być wartość średnia, lub mediana, lub inna wartość).
[edytuj] Punkty kredytowe
Punkty kredytowe (ang. credits) są metodą nagradzania ochotników za przekazany przez nich czas ich komputerów. W teorii punkty kredytowe przyznawane przez wszystkie projekty mają odpowiadać takiej samej ilości wykonanej pracy. W praktyce okazuje się, że niektóre z projektów są bardziej hojne niż inne.
Punkty kredytowe pozwalają uczestnikom projektów na wzajemne współzawodnictwo w ramach różnorakich rankingów. (Ogólnoświatowych, krajowych itp.). Możliwe jest także łączenie się zawodników w zespoły, które również mogą ze sobą konkurować.
[edytuj] Bezpieczeństwo
BOINC w sposób automatyczny ściąga i uruchamia na komputerze ochotnika aplikację projektu, co może budzić uzasadniony niepokój o możliwość uruchomienia złośliwego oprogramowania. Aby temu zapobiec BOINC korzysta z cyfrowego podpisywania aplikacji, aby nie dopuścić do "podstawienia" fałszywej aplikacji w miejsce oryginalnej.
Użytkownicy ze swojej strony powinni zwrócić uwagę, czy projekty, do których chcą się podłączyć nie są podejrzane (w razie podejrzeń warto poszukać opinii na forach dyskusyjnych innych projektów). Co prawda jak dotąd nie pojawił się "fałszywy" projekt, ale taka możliwość istnieje. Warto też zwrócić uwagę na status danego projektu, ponieważ projekty "młode" czyli pre-alfa i alfa mogą powodowac niestabilna pracę systemu, ale zwykle projekty będące na stronie głównej Boinc są już pod tym względem bezpieczne.
Kolejnym potencjalnym zagrożeniem są nieoficjalne aplikacje obliczeniowe. Dla niektórych projektów dostępne są zoptymalizowne przez użytkowników wersje aplikacji, pozwalające znacznie (niekiedy kilkukrotnie) skrócić czas obliczeń. Należy jednak zwrócić uwagę, aby aplikacje te pobierać ze sprawdzonych źródeł. Ponownie w razie wątpliwości należy skonsultować się z forum dyskusyjnym danego projektu.
Generalnie wśród użytkowników BOINC krąży opinia, że praca w platformie naraża komputer na niebezpieczeństwo mniej niż przeglądanie stron WWW, należy jednak pamiętać że nie ma w 100% bezpiecznych aplikacji.
[edytuj] Projekty platformy BOINC
Projekt | Strona projektu | Dziedzina | Status |
---|---|---|---|
ABC@home | Odwiedź | matematyka | Beta |
Alife@home | brak | AI | Zarzucony? |
AlmereGrid | Odwiedź | Projekt rozwojowy | Rozwojowy |
BBC Climate Change Experiment | Odwiedź | klimatologia | Aktywny |
BURP | Odwiedź | grafika 3D | Pre-alfa |
Chess960@home | Odwiedź | Szachy losowe | Alfa |
ClimatePrediction.net | Odwiedź | klimatologia | Aktywny |
DepSpid | Odwiedź | testowanie WWW | Alfa |
Docking@Home | Odwiedź | biochemia | Alfa |
Einstein@home | Odwiedź | astrofizyka | Aktywny |
HashClash | Odwiedź | kryptografia, informatyka | Aktywny |
The Lattice Project | Odwiedź | biochemia | W przygotowaniu |
Leiden Classical | Odwiedź | termodynamika | Aktywny |
LHC@home | Odwiedź | inżynieria, fizyka | Aktywny |
LHC@home alpha | Odwiedź | inżynieria, fizyka | Rozwojowy |
MalariaControl.net | Odwiedź | epidemiologia | Alfa |
μFluids | Odwiedź | mechanika płynów | Alfa |
Nagrzewanie Stali @ home | brak | rozwojowy, metalurgia | Zakończony |
Nano-Hive@home | Odwiedź | nanotechnologia | Beta |
Orbit@home | Odwiedź | astronomia | Alfa |
Pirates@home | Odwiedź | Oprogramowanie BOINC | Rozwojowy |
PlanetQuest | Odwiedź | astronomia | W przygotowaniu |
Predictor@home | Odwiedź | biochemia | Aktywny |
Project Neuron | Odwiedź | projekt rozwojowy BOINC | Pre-alfa |
Proteins@home | Odwiedź | biochemia | Aktywny |
PrimeGrid (dawniej Message@home) | Odwiedź | projekt rozwojowy, kryptografia | Alfa |
QMC@home | Odwiedź | chemia kwantowa | Beta |
Rectilinear Crossing Number | Odwiedź | teoria grafów | Beta |
RenderFarm@home | Odwiedź | rozwojowy,grafika | ? |
Riesel Sieve | Odwiedź | matematyka | Beta |
Rosetta@home | Odwiedź | biochemia | Aktywny |
RALPH@home | Odwiedź | biochemia | Rozwojowy |
Seasonal Attribution Project | Odwiedź | klimatologia | Aktywny |
SETI@home | Odwiedź | astronomia, ufologia | Aktywny |
SETI@home/AstroPulse Beta | Odwiedź | astronomia, ufologia | Rozwojowy |
SIMAP | Odwiedź | biochemia | Aktywny |
Spinhenge@home | Odwiedź | nanotechnologia | Beta |
Sztaki Desktop Grid | Odwiedź | matematyka | Aktywny |
TANPAKU | Odwiedź | biochemia | Beta? |
translator@home | Odwiedź | tłumaczenie literatury | Wstrzymany |
VGTU@home | Odwiedź | ? | Alfa |
VTU@home | Odwiedź | Projekt rozwojowy dla VGTU@home | Alfa |
World Community Grid | Odwiedź | biochemia | Aktywny |
XtremLab | Odwiedź | statystyka | ? |
[edytuj] Status projektów - objaśnienie
- Aktywny - projekt działa zgodnie z założeniami
- Pre-alfa / Alfa / Beta - różne fazy testów
- W przygotowaniu - projekt w fazie przygotowań
- Wstrzymany - prace nad projektem przerwano (najczęściej z braku funduszy)
- Zarzucony - prace nad projektem zostały zakończone
- Rozwojowy - projekt służący rozwijaniu nowych wersji aplikacji, lub innym ulepszeniom platfromy BOINC
- Zakończony - projekt zakończony po osiągnięciu założeń
[edytuj] Projekty w Polsce
W ostatnich dniach sierpnia 2006 roku powstał pierwszy Polski projekt BOINC nazwany Nagrzewanie Stali @ home. Projekt został uruchomiony w ramach pracy magisterskiej studenta informatyki. Projekt działał przez niecaly tydzień, gromadząc w tym czasie ponad 130 uczestników z całego świata.
[edytuj] Linki zewnętrzne
[edytuj] Informacje o BOINC
[edytuj] Strony ze statystykami użytkowników
- BOINCstats - serwis dostępny także po Polsku
- BOINC Combined Statistics
- BOINC Statistics for the WORLD!
- The Knights Who Say Ni!
- MundayWeb.com
[edytuj] Systemy zarządzania kontami (AMS)
- BAM - (BOINC Account Menager) zintegrowany z serwisem BOINCstats
- Grid Republic
[edytuj] BOINC po polsku
- Polski Projekt Boinc - Strona stowarzyszenia
- Wikipedia Polskiego Projektu BOINC
- Artykuły o BOINC w języku Polskim
[edytuj] Polskie zespoły w BOINC
Patrz Dyskusja
- BOINC@Poland - na stronie dużo informacji o BOINC jak i o poszczególnych projektach, oraz aktywnie działające, otwarte dla wszystkich forum dyskusyjne.
- BOINC Poland Corporation - na stronie teamu można znaleźć masę informacji o BOINC oraz wszystkich projektach.
- Boinc-Polska.org - Polski Zespół Przetwarzania Rozproszonego. Na stronie m.in. szczegółowe informacje dotyczące platformy Boinc.