400 000 pecetów w jednym komputerze

Największe drzewo świata rośnie w Kanadzie – ma 115 metrów wysokości i należy do gatunku sekwoi. Roadrunner, czyli kukawka kalifornijska, rozwijający na ziemi prędkość 27 km na godzinę jest najszybciej biegającym ptakiem Ameryki Północnej. Jaguar z kolei ma najsilniejsze szczęki ze wszystkich wielkich kotów – jego kły bez problemu rozrywają czaszki małp i kapibar, na które poluje. Krótko: ta trójka to najlepsi z najlepszych – każde w swojej dziedzinie.
Skumulowane osiągi obliczeniowe maszyn ze światowej listy 500 najszybszych superkomputerów świata od kilku lat rosną wykładniczo.
Skumulowane osiągi obliczeniowe maszyn ze światowej listy 500 najszybszych superkomputerów świata od kilku lat rosną wykładniczo.

Dzięki niezwykłym umiejętnościom tych stworzeń ich nazwy nadano innym mistrzom: superkomputerom. Roadrunner firmy IBM od maja 2008 roku zajmuje pierwsze miejsce na liście Top 500 – pięciuset najszybszych komputerów świata. Maszyna przetwarza 1,1 petaflopsa, czyli 1,1 biliarda (1015) operacji numerycznych na sekundę. Zbudowany przez Craya Jaguar dosłownie depcze jej po piętach, osiągając 1,06 petaflopsa. Ale wkrótce tej dwójce przybędzie nowy konkurent: Sequoia. Do 2011 roku IBM ukończy prace nad komputerem dysponującym niemalże 20-krotnie wyższą mocą obliczeniową niż Roadrunner. To mniej więcej tyle, ile oferuje 400 000 współczesnych pecetów z czterordzeniowym procesorem o częstotliwości 3 GHz. Aby pokazać, ile to jest 20 petaflopsów, IBM stworzył obrazowe porównanie. Sequoia potrafi wyliczyć w jeden dzień to, co zajęłoby 6 miliardom ludzi wyposażonych w kalkulatory aż 1000 lat.

Symulacja rozległa: Supernowe w superkomputerze

Ale właściwie czym są te niewyobrażalnie ilości danych, które obrabia się w superkomputerach? To głównie symulacje, czyli cyfrowe odtwarzanie naturalnych zjawisk. Dzięki nim da się na przykład ustalić, jak rozprzestrzeniają się toksyny w ludzkim ciele i ile potrwa, zanim się rozłożą, albo obliczyć przepływ strumieni lawy we wnętrzu Ziemi, symulować tworzenie się galaktyk i wybuchy supernowych czy też obserwować, jak bombardowanie laserem działa na różne materiały. To ostatnie zagadnienie jest istotne między innymi dla tych, którzy zajmują się budową akceleratorów cząstek używanych w leczeniu nowotworów. Z użyciem superkomputerów można też badać dziś wpływ nowych leków na żywe organizmy bez konieczności dręczenia szczurów w laboratoriach albo przewidzieć następne trzęsienie ziemi w Los Angeles, włącznie ze wskazaniem ulic, które najbardziej ucierpią.

– Superkomputery są dziś nieodzowne do prowadzenia badań. Obok teorii i eksperymentu stają się one trzecim elementem niezbędnym do rozwoju nauki – twierdzi Klaus Wolkersdorfer zarządzający wydziałem High-Performance Computing w centrum badawczym w Jülich, gdzie stoi Jugene – obecnie najszybszy superkomputer Europy. Wykonując 180 teraflopsów, Jugene  zajmuje 11. miejsce na liście Top500. A ma ogromne  szanse, by wkrótce znaleźć się w pierwszej trójce tego prestiżowego zestawienia – jesienią Jugene zostanie przebudowany i prawdopodobnie jako pierwszy w Europie przekroczy magiczną granicę 1 petaflopsa. Rozszerzenie Jugene’a to nie tylko sprawa prestiżu. – Naukowcy ciągle nas poganiają. Rezerwacja czasu pracy maszyny już pięciokrotnie przekracza jej możliwości. Mamy nadzieję, że od jesieni ten ogromny apetyt na moc uda się przynajmniej jako tako zaspokoić – mówi Wolkersdorfer. W rozszerzonym Jugenie obliczeń będzie dokonywać 294 912 procesorów PowerPC. Wszystkie zmieszczono w 72 szafach o wielkości budki telefonicznej. Sumaryczna pamięć operacyjna tego kolosa wyniesie 144 terabajty, uzyska on też dostęp do 6 petabajtów przestrzeni dyskowej. – Taktowanie procesorów na poziomie 850 MHz nie zaimponuje użytkownikom pecetów, ale szybciej się nie da. Już w tej chwili system pobiera 2,2 MW energii. Przy jeszcze wyższym taktowaniu oprócz większego zużycia prądu doszłoby także do zwiększonego wydzielania ciepła, a wtedy chłodzenie stałoby się prawdziwym problemem – twierdzi Wolkersdorfer.

Jednak znacznie ważniejsze niż taktowanie jest odpowiednie oprogramowanie. Dla przykładu Photoshop wcale nie pracowałby szybciej na Jugenie niż na standardowym notebooku – zwykły program nie potrafi bowiem korzystać z tak wielu procesorów. Wszystkie aplikacje muszą zostać napisane specjalnie z myślą o superkomputerze i jego wielordzeniowej architekturze. Aby zrobić to tak dobrze, jak tylko możliwe, zespół programistów z Jülich blisko współpracuje z instytutami naukowymi, które przeprowadzają na Jugenie swoje symulacje.

– Programowanie równoległe to prawdziwe wyzwanie – mówi Klaus Wolkersdorfer. – Problem polega na takim zaprogramowaniu przepływu danych pomiędzy procesorami, żeby jeden chip nie musiał czekać na wyniki uzyskane przez inny.

Dokładna prognoza pogody: Deszcz na ganku, słońce na tarasie

Dokładnie nad tym samym problemem głowią się obecnie programiści IBM z Rochester w stanie Minnesota. Tylko że nie chodzi tu – jak w przypadku Jugene’a – o koordynację pracy prawie 300 000 procesorów, lecz o zmierzenie się z bez porównania większą liczbą chipów. Inżynierowie z Północnej Ameryki budują bowiem wspomnianą na wstępie Sekwoję (Sequoia) – maszynę, która za trzy lata powinna wysunąć się na czoło Top 500. W tym superkomputerze będzie pracować 1,6 miliona procesorów, jego pamięć operacyjna wyniesie 1,6 petabajta, a wszystko będzie upakowane w 96 modułach zajmujących łącznie powierzchnię 340 m2. Przewidywane osiągi to 20 petaflopsów.

Tej ogromnej mocy obliczeniowej Sequoia będzie używać głównie do jednego celu: symulacji starzenia się broni atomowej. Zleceniodawca, National Nuclear Security Administration (agenda zajmująca się bezpieczeństwem nuklearnym), będzie sprawdzać, czy niekiedy już kilkudziesięcioletni arsenał atomowy ciągle nadaje się do użycia, czy też zaczyna powoli stwarzać niebezpieczeństwo.

Tylko przy okazji, jeśli Sequoia będzie dysponować wolnymi zasobami, zostanie skierowana do wykonywania zadań cywilnych. Sejsmolodzy i meteorolodzy mogą wtedy liczyć na jeszcze dokładniejsze prognozy. IBM szacuje, że nowa maszyna umożliwi przewidywanie warunków pogodowych z dokładnością do 100 m2, a także – choć brzmi to nieprawdopodobnie – fenomenów atmosferycznych takich jak słońce na tarasie i deszcz padający w przydomowym ogródku. Wiadomo już także, że prognozowanie trzęsień ziemi i bezpiecznych dróg ewakuacyjnych będzie 50 razy dokładniejsze niż obecnie, a naukowcy będą w stanie przewidzieć wpływ fal sejsmicznych na poszczególne budynki na powierzchni nawet tak rozległej jak Los Angeles.  Różnica pomiędzy pożeraczami teraflopsów w Europie i USA nie dotyczy tylko szybkości. Superkomputer z Jülich wykorzystują wyłącznie cywile. Co więcej, naukowcy muszą oświadczać na piśmie, że opublikują wyniki swoich prac – inaczej nie mogą liczyć na dostęp do maszyny. Odwrotnie jest z Sekwoją: to, co będzie ona obliczać po uruchomieniu w 2011 roku, zostało w dużym stopniu utajnione. Dla Herberta Corneliusa apetyt na ultraszybkie maszyny nie jest zaskoczeniem. Dyrektor Advanced Computing Center w Intelu zajmuje się bowiem technologiami przeznaczonymi do superkomputerów jutra – nowe procesory, interfejsy i oprogramowanie. – Technika komputerowa umożliwia dziś symulacje, które przed laty były nie do wyobrażenia. Można wyliczać zachowanie się przewodzących nanostruktur albo obserwować procesy, w których biorą udział różnorodne obszary ciała – jak podczas symulacji przepływu krwi przez serce. Przy tego typu symulacjach właściwości fizyczne takie jak przepływ prądu muszą być brane pod uwagę na równi z czynnikami chemicznymi i biologicznymi. A wszystko rozgrywa się w piko- albo nanosekundowych odcinkach czasu. To czynniki bardzo podnoszą zapotrzebowanie na moc obliczeniową – dodaje Cornelius.

Superkomputer: Za 10 lat padnie granica exaflopsa

Ale istnieją obszary symulacji, w przypadku których petaflopsy to ciągle… za wolno. –  Na przykład wyliczenie opływu cząstek powietrza wokół lecącego samolotu jest ciągle niemożliwe – mówi Cornelius. – Abyśmy mogli uzyskać dokładne wyniki, cyfrowy model musi być bardzo precyzyjny. Trzeba budować okrągłe powierzchnie z wielokątów – a one są płaskie. Im bardziej szczegółowy model, tym bardziej skomplikowane obliczenia. Dlatego konstruktorzy obliczają jedynie opływy poszczególnych części samolotu. Przetwarzanie nie może trwać przecież w nieskończoność. Symulacje detalu przeprowadza się maksymalnie dwa do trzech razy w ciągu dnia,  aby inżynierowie mogli z wynikami pracować dalej nad jego ulepszaniem.

Końca popytu na moc obliczeniową nie widać. Za dziesięć lat zostanie przekroczona granica exaflopsa – to 1000 petaflopsów. – Teoretycznie jest to możliwe już dziś – można po prostu spiąć razem tak wiele komputerów, że osiągną założony wynik – twierdzi Cornelius. – Nie wiem jednak, czy wystarczyłaby jedna elektrownia atomowa, aby dostarczyć energii takiemu centrum obliczeniowemu. I taka maszyna miałaby wielkość powiatowego miasta. Za to z nazwą dla takiego superkomputera byłoby łatwiej – ironizuje Cornelius.  – Idealna nazwa to… projekt “Mamut”.

Historia superkomputerów

1943 Colossus jako pierwszy osiągnął 1000 flopsów i służył Brytyjczykom do rozszyfrowywania dokumentów przejętych w ambasadach nazistowskich.

1961  to pierwszy komputer z 64-bitową architekturą – przez 4 kolejne lata najszybszy na świecie.

1984 W ZSRR powstaje M-13 – wykonując 2,4 miliarda operacji na sekundę, zostaje pierwszym gigaflopsowym superkomputerem świata.

1997 Intel buduje Asci Red, pierwszy teraflopsowy komputer, który zajmuje pierwsze miejsce na liście Top 500 przez kolejne 3 lata.

2008 Superkomputer Roadrunner firmy IBM jako pierwszy na świecie przekracza magiczną granicę jednego petaflopsa.

2011 Sequoia osiągnie 20 petaflopsów. Na zdjęciu pokazujemy bazujący na identycznej architekturze superkomputer Dawn.

Nautilus: Zielony superkomputer Warszawy

Superkomputer z najmniejszym apetytem na energię nie może zbyt wiele – ale to, co robi, robi bardzo oszczędnie.

Osiąga 536 megaflopsów na wat pobranego prądu – albo inaczej: wykonuje 536 milionów operacji w jednej watosekundzie – ta cecha sprawia, że stojący w Warszawie Nautilus jest najbardziej energooszczędnym superkomputerem świata. W czerwcu 2008 roku znalazł się na pierwszym miejscu na liście Green500 (www.green500.org).

Tym, co czyni Nautilusa tak oszczędnym, są procesory. Zastosowano w nim bowiem jednostki PowerXCells, stworzone przez IBM do obliczeń wektorowych – idealne do symulacji właściwości przepływowych, które przeprowadza się na Nautilusie. Obecnie najszybszy superkomputer świata, Roadrunner, nie jest tak oszczędny – osiąga maksymalnie 444,49 megaflopsów na wat.