"Więcej czadu"

Jeszcze stosunkowo niedawno przetwarzanie równoległe było tylko popularnym w kołach akademickich, lecz całkowicie niekomercyjnym hasłem. Wszystko wskazywało na to, że maszyny wieloprocesorowe pozostaną chwilowo wyłącznie w fazie eksperymentalnej i że jesteśmy skazani na przetwarzanie sekwencyjne. Okazało się jednak, że stosunkowo szybki rozwój technologii i nagły wzrost zainteresowania producentów sprzętu i oprogramowania jej wykorzystaniem umożliwiły realizację komercyjnych zastosowań. Dzięki temu mamy już na rynku szeroką gamę ofert maszyn wieloprocesorowych, od prostych serwerów o dwóch procesorach klasy 486 do równoległych superkomputerów zawierających dziesiątki tysięcy równorzędnych jednostek centralnych. Przetwarzanie równoległe stało się czymś więcej niż nowym trendem informatyki; stało się ono jej przyszłością.

Jeszcze stosunkowo niedawno przetwarzanie równoległe było tylko popularnym w kołach akademickich, lecz całkowicie niekomercyjnym hasłem. Wszystko wskazywało na to, że maszyny wieloprocesorowe pozostaną chwilowo wyłącznie w fazie eksperymentalnej i że jesteśmy skazani na przetwarzanie sekwencyjne. Okazało się jednak, że stosunkowo szybki rozwój technologii i nagły wzrost zainteresowania producentów sprzętu i oprogramowania jej wykorzystaniem umożliwiły realizację komercyjnych zastosowań. Dzięki temu mamy już na rynku szeroką gamę ofert maszyn wieloprocesorowych, od prostych serwerów o dwóch procesorach klasy 486 do równoległych superkomputerów zawierających dziesiątki tysięcy równorzędnych jednostek centralnych. Przetwarzanie równoległe stało się czymś więcej niż nowym trendem informatyki; stało się ono jej przyszłością.

Komputery zrealizowane w technologii wieloprocesorowej oferują trzy zasadnicze cechy obce systemom sekwencyjnym. Pierwsza z nich, często uważana za najważniejszą, to zwiększona prędkość przetwarzania informacji ( w porównaniu z maszynami jednoprocesorowymi). W polskich warunkach można ją jednak uznać za cechę drugorzędną; wynika to z faktu, że większości naszych firm i przedsiębiorstw wystarcza moc oferowana przez tradycyjne maszyny. Jedynie tak znaczące przedsięwzięcia jak wielkie koncerny bankowe, ogólnoświatowe systemy rezerwacji, czy niektóre instytuty naukowe (gdzie do badań fizycznych, chemicznych czy biologicznych stosuje się superkomputery, często równoległe) potrzebują mocy większej niż oferowana przez maszyny jednoprocesorowe; takich przedsięwzięć jest zaś w Polsce stosunkowo mało. Na ogół jednak maszyny wieloprocesorowe są tańsze od równoważnych im mocą obliczeniową komputerów sekwencyjnych.

Drugą, znacznie ważniejszą w naszych warunkach cechą systemów wieloprocesorowych jest ich duża skalowalność. Ta cecha potrzebna jest bowiem wszelkim szybko rozwijającym się firmom. Jeśli więc dana firma kupuje serwer wieloprocesorowy początkowo o powiedzmy dwóch procesorach, po pewnym czasie zaś odczuwa potrzebę zwiększenia mocy obliczeniowej, to zamiast kupować nowy system (co często konieczne jest w przypadku maszyn sekwencyjnych) po prostu dokupuje kilka procesorów, liniowo zwiększając możliwości komputera (w zakresie mocy obliczeniowej). Niektóre systemy sekwencyjne (oraz większość wieloprocesorowych) mają taką opcje w zakresie modułów pamięci i dysków, jednakże aby zwiększyć moc obliczeniową jedyną możliwością pozostaje wymiana jednostki centralnej, np. i486DX2 na Pentium. Jest to jednak inwestycja mało opłacalna (stary procesor zostaje wyrzucony do śmieci) i oferująca ograniczone możliwości. Cóż bowiem ma zrobić użytkownik, dla którego nawet system z procesorem Pentium nie daje sobie rady z aktualnym obciążeniem?

Trzecia istotna cecha systemów wieloprocesorowych to wysoka dostępność. Oznacza to niskie prawdopodobieństwo "padnięcia" systemu, gwarantowane przez możliwość wzajemnego przejmowania aktualnie wykonywanych zadań przez procesory. Tak więc gdy jeden z procesorów ulega awarii, system wykazuje jedynie niewielki spadek mocy obliczeniowej, nie przestaje zaś działać (jak jest w przypadku maszyn jednoprocesorowych). Zadanie, które w wyniku awarii elementu zostało przerwane, jest kontynuowane przez pozostałe jednostki; użytkownik odczuwa to jedynie jako niewielkie opóźnienie dialogu. Systemy high-tolerance (czyli systemy o wysokiej odporności na błędy) prawie zawsze oparte są o architekturę wieloprocesorową. Są one niezbędne w warunkach, w których choćby chwilowa przerwa w pracy systemu może oznaczać krach firmy (np. w bankach czy systemach rezerwacji).

Dokąd dąży równoległość?

Badania rynku wydają się dowodzić, że zainteresowanie technologią przetwarzania równoległego rośnie coraz szybciej. Wielkie firmy jak IBM, Intel czy Oracle poświęcają duże fundusze na rozwój technologii MPP (Massively Parallel Processing), która wydaje się najbardziej przyszłościową spośród technologii wieloprocesorowych. Cena systemów MPP, wobec gwałtownego rozwoju technologii, wyjątkowo szybko spada; przewiduje się, iż w roku 2000 na każde 10 komputerów klasy PC w przedsiębiorstwie przypadać będzie jeden serwer MPP (w cenie niewiele większej niż te 10 pecetów).

Aktualnie na rynku dominują jednak tańsze i prostsze systemy SMP (Symmetric MultiProcessing). Można je uznać za fazę przejściową między maszynami sekwencyjnymi a przetwarzaniem równoległym. Wynika to z faktu, że na tego typu komputerach bardzo łatwo można symulować maszynę jednoprocesorową o wielozadaniowym, wielodostępnym systemie operacyjnym (np. Unix czy VMS); w przypadku takiego wykorzystania systemu poszczególne procesory obsługują niezależne zadania, które w komputerze sekwencyjnym wykonywane byłyby współbieżnie (na przemian) w jednym procesorze. Maszyny SMP nie wykorzystują więc często w pełni możliwości przetwarzania równoległego, pozwalają jednak na używanie większości aplikacji przeznaczonych na maszyny sekwencyjne, co znacznie zmniejsza koszty migracji. Co prawda istnieją systemy operacyjne umożliwiające tzw. multithreading czyli wielowątkowość (np. Windows NT, OS/2 SMP). Pozwalają one na dzielenie zadań na wątki (fragmenty kodu) wykonujące się równolegle na niezależnych procesorach. Dopiero przy takiej pracy system wieloprocesorowy można nazwać równoległym.

Większość standardowych aplikacji jednak okazuje się być wprost stworzona do pełnego przetwarzania równoległego. Wszelkie obliczenia na tabelach, macierzach danych, sortowanie i wyszukiwanie mogą być tak efektywnie zaimplementowane na maszynach wieloprocesorowych, że aż wstyd byłoby wykonywać je sekwencyjnie. Dlatego też przewiduje się szybki wzrost zainteresowania równoległością i migrację na systemy MPP. Pozwolą one po prostu robić dokładnie to samo co dotychczas robiły systemy sekwencyjne, ale znacznie sprawniej (szybciej) i znacznie mniejszym kosztem.

Systemy wieloprocesorowe w CW

Zdając sobie sprawę z wagi systemów wieloprocesorowych i ze stosunkowo niskiego stopnia ich popularności w naszym kraju, proponujemy państwu przegląd produkowanych komputerów, od maszyn najprostszych, na które stać nawet małą firmę, aż do superkomputerów, które można potraktować bardziej jako ciekawostkę niż jako produkt, którym mogliby być zainteresowani potencjalni klienci w naszym kraju.

Wobec zniesienia ograniczeń COCOM-u, maszyny wieloprocesorowe są już dostępne w krajach dawnego bloku wschodniego i coraz więcej firm dystrybucyjnych/dealerskich zaczyna się nimi interesować. Artykuły prezentować będą konkretne rozwiązania, wybrane spośród ofert firm, które udostępniły nam swoje informacje. Wobec bardzo szerokiej gamy komputerów będziemy zmuszeni do ograniczania się często do skróconych opisów pojedyńczych maszyn, odsyłając osoby zainteresowane szerzej tą tematyką do producenta bądź dystrybutora w celu otrzymania dalszych informacji.

Naszą prezentację podzielimy na trzy zasadnicze części. Pierwsza dotyczyć będzie systemów ściśle sprzężonych, w tym przede wszystkim architektur klasy SMP i ich odmian. Tu znajdą państwo przede wszystkim bogatą ofertę serwerów plikowych i bazodanowych, choć także mniejsze superkomputery. W drugiej zajmiemy się systemami luźno sprzężonymi, w tym przede wszystkim klastrami stacji roboczych i niektórymi nietypowymi rozwiązaniami łączącymi systemy SMP w większe, luźno sprzężone zestawy. Trzecia część dotyczyć będzie systemów MPP - wysokowydajnych serwerów bazodanowych i superkomputerów.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200