Wbrew prawu Moore’a

Konstruktorzy komputerów coraz częściej rozglądają się za rozwiązaniami wieloprocesorowymi. Jednak obecnie stosowane systemy, składające się z kilku jednostek centralnych, mają poważne ograniczenia wydajnościowe.

Zarówno w przypadku architektury SMP (Sym- metric MultiProcessing), stosowanej w wieloprocesorowych pecetach, jak i rozwiązań klastrowych używanych w serwerach uniksowych największym wrogiem wydajności jest prędkość wymiany informacji pomiędzy współpracującymi jednostkami centralnymi. Jak wykazują wyniki testów przeprowadzonych przez firmę IBM, zintegrowanie dwóch procesorów w jednym układzie scalonym powoduje dwukrotny wzrost szybkości działania systemu w stosunku do identycznego komputera, w którym to wykorzystano dwa oddzielne, niezależne CPU. W tym roku, dzięki rozwojowi technologii wytwarzania półprzewodników, do produkcji seryjnej trafią dwa typy pionierskich układów zawierających w swojej strukturze więcej niż jedno jądro procesora. Są to IBM Power4 oraz Sun MAJC-5200 – obie kości należą do nowej generacji procesorów, nazywanej CMP (Chip MultiProcessing).

Kto gra pierwsze skrzypce

Pierwszym tego typu układem, opracowanym jeszcze w 1999 roku, jest IBM Power4. Składa się on ze 170 milionów tranzystorów! Zawiera w swoim wnętrzu dwie 64-bitowe, pięciodrożne, superskalarne jednostki wykonawcze pracujące z częstotliwością 1 GHz. We wnętrzu krzemowej struktury znalazły się też uwspólniona pamięć podręczna L2 o pojemności 1,5 MB oraz tablica znaczników odwołań (tzw. tagów) do pamięci cache trzeciego poziomu. Pamięć L2 jest ośmiodrożną, 128-bitową pamięcią asocjacyjną, w której ze względu na wielkość zastosowano zaawansowane mechanizmy korekcji błędów. Konstrukcja cache’u umożliwia przesyłanie do procesorów 100 gigabajtów danych w ciągu jednej sekundy.

Dwuprocesorowy moduł Power4 może współpracować z 32-megabajtową liniową pamięcią podręczną L3, znajdującą się poza obrębem samego jądra. Zewnętrzna szyna systemowa układów z pierwszej serii pracuje z częstotliwością 500 MHz, a więc o połowę mniejszą od szybkości procesorów, komunikacja z pamięcią L3 odbywać ma się zaś w tempie 333 MHz. Konstruktorzy przewidzieli jednak możliwość zwiększenia FSB do ponad 1 GHz. Co ciekawe, każdy seryjny układ Power4 (tzw. MCM – MultiChip Module) będzie zawierał w swoim wnętrzu cztery opisane dwuprocesorowe moduły, przekazujące między sobą dane z prędkością 35 gigabajtów na sekundę. Pierwsze maszyny z megaukładem Power4 pojawią się w drugiej połowie br.

Coś dla mas

Nieco mniej “siłowe” rozwiązanie, przeznaczone przede wszystkim dla multimedialnych stacji roboczych, proponuje firma Sun. Jej układ MAJC-5200 składa się z dwóch procesorów pracujących z częstotliwością 500 MHz. Każda jednoska ma do swojej dyspozycji 16 KB czterodrożnej asocjacyjnej pamięci podręcznej dla instrukcji oraz uwspólniony 16–kilobajtowy cache dla danych. Oba CPU zawierają cztery niezależne równoległe moduły wykonawcze. Podobnie jak w intelowskim Itanium, procesory MAJC korzystają ze 128-bitowych rozkazów VLIW (Very Long Instruction Word). Paczka instrukcji VLIW może składać się z jednego, dwóch, trzech lub czterech 32–bitowych rozkazów, przeznaczonych dla kolejnych modułów wykonawczych, a dwubitowy wskaźnik informuje o całkowitej długości słowa. Każdy “wewnętrzny” procesor ma do swojej dyspozycji 224 rejestry, w tym 96 rejestrów ogólnego przeznaczenia, dostępnych dla każdego modułu, oraz 128 (po 32 dla jednej jednostki wykonawczej) rejestrów lokalnych.

MAJC-5200 umożliwia wielowątkowe przetwarzanie danych, a specjalny przełącznik procesora dzieli dane na poziomie bitów, przesyłając odpowiednio informacje do obu jednostek CPU. Rozwiązanie takie pozwala na uniknięcie pustych cykli obliczeniowych. Obecnie większość dostępnego oprogramowania nie jest zoptymalizowana pod kątem wielowątkowego przetwarzania danych, dlatego procesor wykorzystuje wirtualną maszynę Javy do spekulatywnego generowania wątków aplikacji napisanych w tym języku.

Ponieważ MAJC-5200 przeznaczony jest do obsługi programów multimedialnych, konstruktorzy z firmy Sun zoptymalizowali przetwarzanie danych pod kątem kodowania i dekodowania filmów w formacie MPEG-2 oraz strumieniowego przetwarzania dźwięków. Procesor został też wyposażony w niezależny moduł wstępnego przetwarzania grafiki 3D – odpowiednik modułu T&L stosowanego w najnowszych kartach graficznych – kontroler PCI, kontroler dostępu do pamięci i dwa niezależne układy (North Universal Port Architecture oraz South UPA) do obsługi transmisji danych. Jak widać, MAJC-5200 jest wielofunkcyjnym “kombajnem”, mogącym obyć się bez chipsetu płyty głównej. Układy wykonane w technologii 0,22 mikrona powinny być dostępne w sprzedaży w chwili ukazania się tego numeru CHIP-a, a szybsza 700-megahercowa (technologia 0,13 mikrona) wersja MAJC-5200+ trafi na rynek pod koniec roku.

Po co to komu

W opinii wielu ekspertów nowa architektura układów wieloprocesorowych umożliwi na obecnym etapie rozwoju technologii osiągnięcie wydajności większej, niż przewiduje to prawo Moore’a (podwajanie się mocy obliczeniowej co 18 miesięcy). Jednak o ile Power4 jest rozwiązaniem przeznaczonym dla systemów komputerowych wykorzystywanych do skomplikowanych obliczeń naukowych lub wysoko wydajnych serwerów sieciowych, o tyle propozycja firmy Sun skierowana jest do użytkowników wykorzystujących komputer w codziennej pracy, np. przy montażu wideo. Pojawienie się na rynku szybkich jednoukładowych maszyn wieloprocesorowych przyczyni się z pewnością do znacznego spadku cen klasycznych konstrukcji SMP. Może już w przyszłym roku, kupując nowego peceta, będziemy się zastanawiali nie nad częstotliwością zegara, ale nad tym, czy nie lepiej zainwestować kilka groszy więcej w drugi CPU.

Info

Grupy dyskusyjne
Uwagi i komentarze do artykułu:
#
Pytania techniczne:
#

Internet
Power4
http://~/power4.html
MAJC-5200
http://www.sun.com/microelectronics/MAJC/

Więcej:bezcatnews