Prawdziwy Beowulf

Opublikowane:

28.08.2025

Ogromne koszty wczesnych własnościowych superkomputerów to jeden z powodów (utrzymującej się do dzisiaj) dominacji Linuksa w tym obszarze.

Ogromne koszty wczesnych własnościowych superkomputerów to jeden z powodów (utrzymującej się do dzisiaj) dominacji Linuksa w tym obszarze.

W ostatnim czasie dużo się mówi w mediach społecznościowych na temat obliczeń o wysokiej wydajności (HPC) i rentowności Linuksa (w przeciwieństwie do innych systemów operacyjnych, takich jak Microsoft Windows i FreeBSD) w tej dziedzinie. Pomyślałem, że w tym miesiącu napiszę o tym, dlaczego wszystkie z 500 najszybszych na świecie komputerów działają pod GNU/Linuksem.

Około 1995 roku rynek superkomputerów miał pewne problemy. Urządzenia te były bardzo drogie, głównie ze względu na to, że firmy (na przykład Cray, HP Enterprise El Capitan, CDC 6600) wydawały miliony dolarów na projekty wyspecjalizowanego sprzętu, własne systemy operacyjne i prawdopodobnie własne kompilatory (oraz wiele innych rzeczy), aby tworzyć swoje superkomputery, które potem niezbyt dobrze się sprzedawały. W efekcie firmy te wypadały z rynku.

W tym czasie dwóch ludzi z NASA, Dr Thomas Sterling i Donald Becker, wpadło na pomysł rozbicia dużych problemów na mniejsze i – korzystając ze standardowego sprzętu (pecetów i sieci Ethernet) – stworzyli coś, co nazwali systemami Beowulf.

Nawet zakup nowego peceta pozwala nam uzyskać wydajność superkomputera za około 1/40 ceny specjalnie do tego celu stworzonego sprzętu. Ewentualnie, patrząc na to z innej perspektywy, możemy dostać 40 razy większą wydajność za te same pieniądze.

Don Becker dużo pracował nad tym, aby każdy sterownik Ethernetu pod Linuksem działał dobrze i zaczął pokazywać, jak możemy (czasami) odrzucone komputery włączyć do systemów Beowulf, aby wykonywały pożyteczną pracę.

Oczywiście, nie rozwiązali wszystkich problemów wymagających superprzetwarzania, ale poradzili sobie z pewną klasą ważnych zagadnień: dynamiką płynów.

Dynamika płynów dotyczy wszystkiego: pogody, wybuchów nuklearnych, pływów oceanicznych, a nawet ciał stałych. Jeśli spróbujesz przejrzeć petabajty danych z każdej sekundy doświadczeń (działania wielkich zderzaczy), stwierdzisz, że to dużo taniej będzie kupić 3.000 pecetów od Intela niż 3.000 systemów SPARC (Scalable Processor Architecture).

Innym powodem przejęcia przez Linuksa takich zadań jest to, że raczej nie kupimy w lokalnym sklepie komputerowym pakietu „Microsoft Office dla Superkomputera”.

Oprogramowanie superkomputera zwykle jest pisane przez ludzi, którzy pracują w państwowych laboratoriach lub społecznościach badaczy, i oni kompilują je sami. Może korzystali kiedyś z systemów SPARC lub SGI, ale one były oparte na Uniksie, więc API Linuksa od razu było dla nich znajome.

Według mnie nie ma instytucji, która by lepiej to obrazowała niż CERN, w którym znajduje się jeden z największych zderzaczy. We wczesnych dniach systemów Beowulf ludzie z CERN poprosili mnie o rozmowę, aby wyjaśnić pewien problem. Zarząd chciał oszczędzić pieniądze, zastępując systemy SPARC komputerami Intel Windows NT, a programiści i inżynierowie zamienili systemy Windows NT na Linuksa. Chociaż menadżerowie tego nie rozumieli, to odpowiedź inżynierów mówiąca, że chcą mieć znajome API, miała dla nich dużo sensu.

Dodajmy, że skoro główne API to były Linuksy, a najczęściej używany zestaw instrukcji był Intela, to można było też korzystać na swoim superkomputerze z aplikacji pulpitowych Linuksa.

Czasami Linux zyskiwał, bo miał „szczęście”. W 1995 roku jeździłem do klientów Digital Equipment Corporation i, w drodze do Australii, zatrzymałem się na Hawajach, aby zobaczyć się z przyjacielem. Jeden z jego współlokatorów interesował się komputerami, więc dałem mu płytę z Red Hat Linuksem.

Dwa lata później powiedziano mi o fajnym systemie Beowulf z Los Alamos o nazwie „Loki”. Korzystał on z Linuksa, więc zacząłem dzwonić do, jak się okazało, tego samego współlokatora na potrzeby artykułu do Linux Journal. Kiedy odebrał, powiedział: „Pewnie mnie nie pamiętasz? Byłem studentem, któremu dałeś płytę z Red Hatem – dlatego właśnie w Los Alamos pracujemy z tym systemem”.

Słyszałem też inne historie o różnych „zwycięstwach” Beowulfa, na przykład o Kamiennym Superkomputerze z Oak Ridge Labs, nazwanym na cześć starej historii o zupie z kamienia albo o tym, że systemy Beowulf z Linuksami ciągle wygrywały nagrody za wydajność i cenę do wydajności na corocznych konferencjach o superkomputerach. Wisienką na torcie było to, że nagroda ta nazwana została na cześć Gordona Bella, który (w tamtym czasie) pracował w grupie zajmującej się wysoką wydajnością w Microsofcie.

Z czasem pojawiły się wyspecjalizowane projekty, takie jak „Rocks”, pozwalające łatwo instalować systemy Beowulf oraz zarządzać nimi, i wszystko to było za darmo.

Ciągle pamiętam dzień, w którym Red Hat ogłosił, że będą pobierać opłaty za wsparcie na bazie liczby procesorów. Było to na konferencji o superkomputerach i niemal z dnia na dzień podstawowym systemem Beowulfa przestał być Red Hat, na rzecz innych dystrybucji.

Podobnie jak z innymi rzeczami, nie ma jednej konkretnej odpowiedzi na pytanie dlaczego GNU/Linux „wygrał” z MS Windowsem i FreeBSD. Jest kilka różnych odpowiedzi oraz jedna słodka maskotka.

maddog-2-fmt 

Jon „maddog” Hall jest autorem, wykładowcą, informatykiem i jednym z pionierów Wolnego Oprogramowania. Od 1994 roku, kiedy po raz pierwszy spotkał Linusa Torvaldsa i ułatwił przeniesienie jądra na systemy 64-bitowe, pozostaje orędownikiem Linuksa. Obecnie jest prezesem Linux International®.

Aktualnie przeglądasz

Wrzesień 2025 - Nr 259
LM259_Sep-2025

Top 5 czytanych

Znajdź nas na Facebook'u

Opinie naszych czytelników

Nagrody i wyróżnienia