Beowulf (informatyka)

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj
Ujednoznacznienie Ten artykuł dotyczy terminu informatycznego. Zobacz też: inne znaczenia tego słowa.
Beowulf

Beowulf – rodzaj klastra komputerowego realizowanego z założeniem uzyskania maksymalnej mocy obliczeniowej jak najmniejszym kosztem. Najczęściej budowany ze zwykłych, masowo produkowanych komputerów klasy PC, połączonych siecią Ethernet. Komputery tworzące taki klaster pracują zazwyczaj pod Linuksem, a do przetwarzania równoległego używa się bibliotek MPI, LAM lub PVM.

Pierwszy klaster tego typu, nazwany właśnie "Beowulf", stworzył w 1994 roku Donald Becker z NASA. Nazwa pochodzi od imienia bohatera staroangielskiej legendy.

Ze względu na nieduże koszty i dużą dostępność komponentów klastry typu Beowulf są często budowane i używane przez niewielkie grupy naukowców do prowadzenia badań w wielu dziedzinach: chemii, fizyce, mechanice. Klaster tego typu można również zorganizować z grupy stacji roboczych np. pracowni komputerowej.

Definicja z oryginalnego Beowulf HOWTO[edytuj | edytuj kod]

Beowulf to wielokomputerowa architektura, która może zostać użyta do obliczeń równoległych. Jest to system, który na ogół składa się z jednego węzła-serwera i jednego lub więcej węzła-klienta połączonego przez Ethernet lub jakąś inną sieć. Jest to system zbudowany w oparciu o powszechnie dostępne komponenty sprzętowe, jak każdy PC zdolny do uruchomienia Linuksa, standardowe karty Ethernet i switche. Nie zawiera unikalnych komponentów sprzętowych i jest łatwy w tworzeniu. Beowulf korzysta również ze zwykłego oprogramowania, jak system operacyjny Linux, Parallel Virtual Machine (PVM) oraz Message Passing Interface (MPI). Węzeł-serwer kontroluje cały klaster i udostępnia pliki klientom. Pełni on także funkcję konsoli klastra i jest jego bramą do zewnętrznego świata. Duże maszyny Beowulf mogą posiadać więcej niż jeden węzeł-serwer, oraz inne węzły stworzone dla specyficznych zadań, na przykład konsole lub stacje monitorujące. W większości przypadków węzły-klienci w systemie Beowulf są głupie, im głupsze tym lepiej. Węzły są konfigurowane i kontrolowane przez węzeł-serwer, i robią tylko to, co kazano im robić. W konfiguracji bezdyskowej klienci nie znają nawet swojego adresu IP lub nazwy, dopóki serwer im ich nie poda. Jedną z podstawowych różnic pomiędzy Beowulfem a architekturą Cluster of Workstations (COW) jest to, że Beowulf zachowuje się bardziej jak jedna maszyna, niż wiele stacji roboczych. W większości przypadków węzły-klienci nie posiadają klawiatur czy monitorów, a dostęp do nich jest możliwy jedynie przez odległe logowanie bądz opcjonalny terminal szeregowy. Węzły Beowulf można sobie wyobrazić jako pakiet CPU + pamięć, który może zostać podłączony do klastra, tak jak CPU czy moduł pamięci może zostać dołączony do płyty głównej.

Beowulf to nie żaden specjalny pakiet oprogramowania, nowa topologia sieci czy nowa nakładka na jądro. Beowulf to technologia łączenia komputerów Linux aby utworzyć równoległy, wirtualny superkomputer. Chociaż istnieje wiele pakietów oprogramowania, takich jak modyfikacje jądra, biblioteki PVM i MPI, narzędzia konfiguracyjne, które przyspieszają architekturę Beowulf, ułatwiają konfigurację i zwiększają użyteczność, jednak możliwe jest zbudowanie maszyny Beowulf wykorzystując standardową dystrybucję Linux, bez żadnego dodatkowego oprogramowania. Jeśli masz przynajmniej dwa usieciowione komputery Linux które dzielą przynajmniej katalog /home poprzez NFS, i ufają sobie nawzajem na tyle, aby uruchomić odległą powłokę (rsh), możesz się upierać że dysponujesz prostą, dwu-węzłową maszyną Beowulf.

Systemy operacyjne[edytuj | edytuj kod]

Obecnie istnieje wiele dystrybucji Linuxa oraz BSD, które wspierają budowę klastrów Beowulf. Na przykład:

Klaster może być zbudowany za pomocą Knoppix boot-ującego CD w połączeniu z OpenMosix. Komputery można automatycznie łączyć, bez skomplikowanej konfiguracji, Można utworzyć klaster Beowulf wykorzystujący wszystkie procesory i pamięci RAM w klastrze. Klaster Beowulf jest skalowalny do prawie nieograniczonej liczby komputerów, ograniczony jedynie przepustowością sieci.

Przypisy

Linki zewnętrzne[edytuj | edytuj kod]

Witryna projektu Beowulf