Wielordzeniowa przyszłość

Pamiętam, jak jeszcze kilka lat temu wydajność procesorów zależała przede wszystkim od pomysłowej architektury, liczby jednostek wykonawczych, pojemności pamięci podręcznej i oczywiście, częstotliwości zegara. Wszyscy ścigali się wówczas "na zegary". Dziś wszyscy ścigają się "na liczbę rdzeni". Ale myli się ten, kto uważa, że wszystko inne nie ma już znaczenia.

Dwa rdzenie na start

Dwurdzeniową erę, trochę niespodziewanie, rozpoczął Intel, prezentując na chwilę przed Athlonem 64 X2 procesor o kodowej nazwie Presler (Pentium D). Nie był to jednak procesor dwurdzeniowy z prawdziwego zdarzenia. Presler był czymś pomiędzy tradycyjnymi konfiguracjami dwuprocesorowymi, gdzie każdy układ instalowany jest w oddzielnej podstawce, a Athlonem 64 X2, który dwa rdzenie skrywa w jednej krzemowej strukturze. Intel, zwyczajnie, ale i pomysłowo, umieścił w jednej obudowie dwa układy, starannie wyselekcjonowane pod kątem częstotliwości pracy i wydzielanego ciepła, i umożliwił im komunikację poprzez tą samą szynę FSB. Niestety, wszystkie dane wymieniane pomiędzy rdzeniami przechodzą przez chipset płyty głównej, co skutecznie zwiększa opóźnienia i tym samym, zmniejsza wydajność Preslera.

Reklama

Pierwszym w pełni dwurdzeniowym procesorem był wspomniany już Athlon 64 X2. AMD miała przy jego budowie ułatwione zadanie. Athlon 64 (K8) od samego początku projektowany był bowiem z myślą o konfiguracji dwurdzeniowej. Szeregowa szyna HyperTransport (HTT), pozwalająca na bardzo wydajne łączenie typu punkt-punkt różnych układów, idealnie nadaje się do sprzężenia dwóch rdzeni w jednym krzemie.

Zintegrowany kontroler pamięci dba o to, by taka konstrukcja otrzymywała dane bez zbędnych opóźnień (procesor, zamiast wysyłać zapotrzebowanie do chipsetu, który następnie pobiera dane z RAM-u i dopiero po tym przesyła je dalej, może wykorzystując szynę HTT samodzielnie pobrać dane z pamięci operacyjnej). I wreszcie specjalny przełącznik krzyżowy (Crossbar Switch) odpowiedzialny za efektywną wymianę danych pomiędzy rdzeniami, a przede wszystkim za możliwie bezkonfliktową komunikację obu rdzeni z pamięcią operacyjną komputera. Wszystkie te elementy obecne były w Athlonie 64 od momentu jego premiery i zwyczajnie czekały na wykorzystanie w dwurdzeniowej konfiguracji. Nic więc dziwnego, że kiedy ten moment w końcu nadszedł (AMD wdrożyła odpowiednio zaawansowany proces produkcji), Athlon 64 X2 zachwycił wydajnością, przez długi czas królując nad dwurdzeniowym Pentium D.

Intel po premierze dwurdzeniowego Athlona stracił inicjatywę. Mało tego, po raz pierwszy w rywalizacji z AMD to Intel musiał zachęcać klientów niższą ceną, a nie wyższą wydajnością. W zaciszu izraelskich laboratoriów powstawał jednak procesor, który w dwurdzeniowej konfiguracji także miał czuć się jak ryba w wodzie. I tak, trochę niespodziewanie, na rynku pojawił się Conroe, który w wersji Core 2 Duo przyćmił Athlona 64 X2. Siła tego procesora wynika z dwóch faktów.

Pierwszą z nich jest nowa, bardzo wydajna architektura, bazująca na udanym Pentiumie M. Pozwala ona na wykonywanie w dowolnej kolejności (out of order execution) nawet 4 instrukcji w jednym cyklu zegara (Athlon 64 ograniczony jest do 3), ponadto umożliwia skuteczne łączenie mikro i makroinstrukcji i wykonywanie ich za jednym zamachem oraz posiada bardzo zaawansowane i skuteczne mechanizmy przewidywania tego, co będzie procesorowi potrzebne i dostarczania niezbędnych danych z wyprzedzeniem.

Drugim, nie mniej ważnym,rozwiązaniem jest wspólna pamięć podręczna drugiego poziomu (cache L2), która eliminuje konieczność zachowywania spójności danych przechowywanych w dwóch oddzielnych cache L2, znacznie zmniejszając opóźnienia, które były bolączką Preslera. Technologia Smart Cache dynamicznie dzieli pojemność cache L2 i, w miarę potrzeb, przydziela odpowiedni rozmiar każdemu z rdzeni. Dodatkowo, dopiero co zaktualizowane i zapisane dane, będące wynikiem pracy pierwszego rdzenia, może natychmiast odczytać i wykorzystać drugi, nie czekając, aż te zostaną przeniesione do pamięci operacyjnej.

Następnym krokiem na drodze do wielordzeniowości była premiera intelowskiego procesora o kodowej nazwie Kentsfield. Jest to kuzyn znanego nam Preslera. Jedyna różnica polega na tym, że zamiast dwóch rdzeni P4 mamy tutaj dwa dwurdzeniowe układy Core 2 Duo zamknięte w jednej obudowie. Oba procesory nadal muszą dbać o spójność (koherencję) danych aktualizując je na bieżąco poprzez mostek północny chipsetu.

Cała konstrukcja Core 2 Quad składa się z (bagatela!) 582 mln tranzystorów, a mimo to, dzięki energooszczędnej architekturze i możliwości elastycznego wyłączania nie tylko całych rdzeni, ale i poszczególnych, nieaktywnych jednostek wykonawczych, wszystko działa sprawnie i w stosunkowo niskiej temperaturze. Dzieje się tak także dlatego, że większą część Kentsfielda stanowi pamięć podręczna drugiego poziomu - układ ten zawiera jej aż 8 MB, czyli po cztery megabajty na każdy procesor. No i wreszcie, nie bez znaczenia jest wymiar produkcji, w jakiej powstają najnowsze procesory Intela. Szybko i efektywnie wdrożona technologia 65 nm sprawia, że Kentsfield może zostać bezpiecznie podkręcony z częstotliwości 2,4 GHz nawet do 3,5 GHz!

Odpowiedzią AMD na Core 2 Quad Intela jest platforma Quad FX. Tutaj także mamy do czynienia z dwoma dwurdzeniowymi procesorami, ale umieszczonymi nawet nie w jednej obudowie, a po prostu w dwóch podstawkach. Nie są to jednak zwykłe, dwurdzeniowe Athlony 64 FX. Nie miałyby one bowiem wystarczającej liczby szyn HyperTransport do skutecznego połączenia czterech CPU w jeden organizm. AMD wzięła więc na warsztat serwerowe Opterony z trzema szynami HTT i przystosowawszy je do pracy z tradycyjnymi, niebuforowanymi pamięciami, ochrzciła jako Athlony 64 FX-70 (2,6 GHz), -72 (2,8 GHz) i -74 (3,0 GHz), zgodne z platformą Quad FX. Innymi słowy AMD stworzyła, na potrzeby konkurencji z Kentsfieldem, unikalne procesory kompatybilne z podstawką Socket F 1207. Aby móc spełnić potrzeby nowej platformy, powstał także specjalny chipset NVIDII nForce 680a SLI, będący połączeniem dwóch chipsetów nForce 570 SLI.

Dzięki technologii NUMA (Non-Uniform Memory Architecture) każdy z dwurdzeniowych procesorów może korzystać z pamięci drugiego, co, przynajmniej w teorii, powinno znacznie podnieść ogólną wydajność. W praktyce jednak korzystanie przez jedno CPU z pamięci podręcznej drugiego okupione jest dużymi opóźnieniami, co czyni z platformy Quad FX bardziej ciekawostkę niż realnego konkurenta dla Kentsfielda. I to bardzo kosztowną ciekawostkę, bo w ekstremalnych sytuacjach wszystkie cztery rdzenie mogą zgłaszać zapotrzebowanie na moc przekraczającą 500 W. Gdy dodamy do tego dwie karty graficzne GeForce 8800 GTX (Quad FX ma być przede wszystkim platformą dla ekstremalnych graczy), to bez zasilacza minimum 1000 W się nie obejdzie.

AMD Reaktywacja

Nic więc dziwnego, że AMD w pocie czoła pracuje nad czterordzeniowym układem z prawdziwego zdarzenia. Barcelona, a niedługo potem udomowiona Agena, bazujące na architekturze K8L swoją premierę mają mieć już za kilka miesięcy. Choć tak naprawdę chciało by się powiedzieć, że dopiero za kilka miesięcy. Wielu z nas ma bowiem nieodparte wrażenie, że AMD, uśpiona sukcesem Athlona 64, a przede wszystkim powodzeniem jego dwurdzeniowej wersji przegapiła moment, w którym należało ostro zabrać się do pracy. Tym niemniej, Agena zapowiada się bardzo interesująco.

Po pierwsze dlatego, że od podstaw projektowana jest jako układ czterordzeniowy, gdzie każdy z rdzeni będzie efektywnie połączony z pozostałymi w jednej strukturze krzemu, a dodatkowo, w celu zniwelowania opóźnień, wszystkie rdzenie dostaną do dyspozycji wspólną pamięć podręczną trzeciego poziomu (cache L3) o pojemności 2 MB. Pamiętając o korzyściach, jakie Core 2 Duo czerpie z posiadania wspólnej pamięci cache L2, możemy przypuszczać, że takie rozwiązanie bardzo pozytywnie wpłynie na ogólną wydajność Ageny. Po drugie, Agena przyniesie także znaczące zmiany w architekturze K8. AMD nie ujawniła jeszcze wszystkich informacji, ale z tego co już wiemy, rysuje się całkiem ciekawy obraz całości. K8L przyniesie między innymi rozbudowaną i skuteczniejszą predykcję rozgałęzień, możliwość zmiany kolejności dostarczania instrukcji do potoków wykonawczych (out of order load execution) w 32-bitowych paczkach czy wreszcie poszerzone do 128-bitów jednostki SSE.

Wszystko to powinno znacznie zwiększyć zarówno stało-, jak i przede wszystkim zmiennoprzecinkową wydajność i sprawić, że architektura procesorów AMD znowu będzie najbardziej wydajna. I to pomimo utrzymanego ograniczenia w postaci 3 instrukcji (IPC) w jednym cyklu zegara (Conroe może wykonać 4). A wynika to z faktu, że w większości sytuacji procesor i tak wykonuje 2-2,5 instrukcji na takt zegara i znacznie ważniejsze jest to, czy rozwiązania zastosowane w architekturze danego procesora są w stanie dostarczać instrukcje i dane na tyle skutecznie, by choć ten poziom w pełni utrzymywać.

Nieprzerwany strumień danych zapewnić ma także kolejna generacja szyny HyperTransport pracującej z zegarem nawet 2,6 GHz (obecnie jest to 1 GHz). Co ciekawe, Agena przyniesie zaawansowane zarządzanie zużyciem energii. Podobnie jak w przypadku Core 2 Duo, nie tylko każdy z rdzeni ale nawet poszczególne jednostki wykonawcze i pamięć podręczna rzekomo będą mogły być wyłączone zawsze wtedy, gdy nie będą używane.

Na w pełni czterordzeniową odpowiedź Intela na Agenę będziemy musieli trochę poczekać. Najpierw naszym oczom ukaże się Penryn, czyli lekko usprawniony Core 2 Duo z dodatkowymi instrukcjami SSE4, produkowany w wymiarze 45 nanometrów (Agena w tym samym czasie będzie wytwarzana przy wykorzystaniu technologii 65 nanometrów). Penryn zbudowany będzie z 410 mln tranzystorów, z czego zdecydowaną większość stanowić ma 6 MB pamięci podręcznej drugiego poziomu (około 288 mln tranzystorów).

Na bazie tego procesora powstanie także zaktualizowana wersja Kentsfielda (Yorktown), a więc Intel nadal będzie nas raczył konstrukcjami z dwoma, dwurdzeniowymi procesorami zamkniętymi w jednej obudowie. Nie należy jednak z góry przekreślać tego rozwiązania. 820 mln tranzystorów rozpędzonych do zegara 3,5 GHz, w połączeniu z poczynionymi w architekturze usprawnieniami i, co całkiem prawdopodobne, nową wersją technologii współbieżnej wielowątkowości (HyperThreading) może z nowego Kentsfielda uczynić bardzo potężną, wielozadaniową zabawkę.

Nowa architektura co dwa lata

Niedawno Microsoft ogłosił, że powraca do tradycji prezentowania nowego systemu operacyjnego raz na dwa lata. Intel chce działać tak samo i na 2008 rok zapowiedział premierę nowej architektury o kodowej nazwie Nehalem. O Nehalemie słychać już było kilka lat temu, w czasach, gdy Intel miał w głowie tylko NetBurst i pogoń za gigahercami. Wtedy mówiło się, że Nehalem przyniesie znaczące usprawnienia, być może dodatkowe jednostki wykonawcze i inne rozwiązania mające uczynić z architektury NetBurst mistrza wydajności. Dziś Nehalem jest symbolem nowej architektury, która jednak łączyć ma w sobie najlepsze rozwiązania Core 2 Duo z tymi, jakie znamy z NetBurst.

Wiemy na pewno, że w nowym procesorze zawarta będzie usprawniona technologia HyperThreading, znana właśnie z P4. Mówi się także o większej liczbie jednostek wykonawczych, mających podnieść, i tak już wysoki, współczynnik IPC. Mówi się wreszcie o optymalizacji procesora pod kątem strumieniowego przetwarzania danych, a więc rozwinięcia multimedialnych możliwości Core 2 Duo, co przecież także było mocną stroną P4. Być może czeka nas zatem wydłużenie potoku wykonawczego, z obecnych 12 etapów, do liczby bliskiej 20 (Athlon 64 ma ich 14). To pozwoli na zwiększenie częstotliwości taktowania procesora i w sposób naturalny przyspieszy wykonywanie operacji takich jak kompresja, konwersja czy dekodowanie plików filmowych, muzyki lub archiwizację danych.

Nehalem będzie też pierwszym, natywnym czterordzeniowym procesorem Intela. Każdy z rdzeni będzie miał własną pamięć podręczną pierwszego poziomu (oddzielną dla danych i instrukcji) i korzystał będzie ze wspólnej i bardzo pojemnej, wielodrożnej cache L2. W celu zapewnienia nieprzerwanego potoku danych, a więc zniwelowania niepotrzebnych przestojów, Intel ma w końcu wyposażyć swój procesor w zintegrowany z rdzeniem kontroler pamięci DDR2, a być może i DDR3.

Oczywiście, podobnie jak w przypadku AMD K8, wbudowany kontroler usunie w przeszłość szynę FSB, a w zamian za to wprowadzi nową, szeregową magistralę, potrzebną do połączenia procesora z pamięcią RAM i otoczeniem. Nie znamy jeszcze nazwy tej szyny ani jej możliwości, ale przypuszczać możemy, że będzie to rozwiązanie podobne do aemdekowskiego HyperTransport. Wersja Nehalema dla domowego użytkownika (kodowa nazwa Bloomfield) posiadać ma 8 MB cache L2 i wymagać będzie nowej podstawki o nazwie Socket B (1366 pinów).

Nowy quadcore Intela wytwarzany będzie w wymiarze 45 nanometrów i pracować będzie z zegarem około 3-3,5 GHz, co zaowocować ma współczynnikiem Thermal Design Power na poziomie 130 W. Na pewno nie będzie to chłodny procesor. Ale z drugiej strony, Bloomfield zbudowany będzie z prawie miliarda tranzystorów.

AMD nie pozostaje w tyle

Odpowiedzią AMD na Nehalema będzie rozwiązanie o nazwie Fusion. Niestety, małe jest prawdopodobieństwo, że firma AMD po morderczym wysiłku związanym z prezentacją architektury K8L i wprowadzeniem do sprzedaży Barcelony i Ageny była w stanie w 2008 roku zaprezentować kolejną generację czterordzeniowego procesora.

Jedyne czego możemy się spodziewać w najbliższych latach to dopracowanie produkcji w wymiarze 65 nanometrów (na razie AMD średnio sobie z tym radzi) i pierwsze przymiarki do wymiaru 45-nanometrów, co zaowocuje procesorami ze znacznie wyższymi zegarami. To może jednak być na Nehalema za mało. Być może dlatego AMD, świadomy nadchodzących problemów, szuka już nowych rynków zbytu i na 2008 rok zapowiada premierę pierwszego procesora ze zintegrowanym układem graficznym.

Niestety, nie wiemy jeszcze jak dokładnie AMD zamierza taki układ zrealizować w krzemie. Być może na rynku pojawi się Agena z wyciętymi dwoma rdzeniami, zamiast których pojawi się odpowiedni GPU zbudowany z około 200 mln tranzystorów. Na pewno nie będzie to rozwiązanie najwydajniejsze (przypomnijmy, że GeForce 8800 GTX już dziś składa się z, bagatela, 681 mln tranzystorów), ale na pewno wielu użytkownikom wydajność oferowana przez dwurdzeniowy procesor pracujący w tandemie ze zintegrowanym GPU spokojnie wystarczy, także do grania.

Problemem może być jedynie ograniczona przepływność pamięci. Wszak wspomniany GF8800 GTX potrzebuje w jednej sekundzie nawet 80 GB danych, podczas gdy obecne CPU muszą zadowolić się wielkością 10 razy mniejszą. Choć szybsza szyna HTT w połączeniu z pamięciami DDR2, albo jeszcze lepiej DDR3, będą oferować całkiem sporą przepływność, nawet jak na graficzne standardy.

Dodatkowo, lekarstwem na ograniczoną przepustowość ma być pamięć cache o dużej pojemności, która w przypadku GPU pełnić będzie rolę buforów danych. Do efektywnego działania takiego konglomeratu potrzebny będzie też dodatkowy, inteligentny przełącznik krzyżowy, godzący potrzeby grafiki i procesora związane z dostępem do pamięci RAM przy wykorzystaniu zaledwie pojedynczego, zintegrowanego z rdzeniem kontrolera. Na razie nie wiemy, kiedy Intel zaprezentuje konkurencyjne rozwiązanie. Bo to, że zaprezentuje, jest niemal pewne. Tym bardziej, że firma ostatnio ogłosiła chęć opracowania i produkcji GPU z prawdziwego zdarzenia (premiera planowana jest na 2009 rok), które oczywiście, mogłoby wylądować także, a może nawet przede wszystkim, w którymś z nadchodzących, wielordzeniowych procesorów.

Wielordzeniowy konglomerat

Zaprezentowana przez AMD platforma Quad FX nie ma ustąpić wraz z premierą czterordzeniowej Ageny. Wręcz przeciwnie - użytkownicy mają mieć możliwość wykorzystania dwóch takich procesorów, otrzymując 8-wątkowy zestaw obliczeniowy. W przypadku Intela zapewne będzie jeszcze ciekawiej. Firma ta chwali sobie raczej rozwiązanie w postaci dwóch procesorów zamkniętych w jednej obudowie (jest to bowiem stosunkowo prosty sposób na uzyskanie wielordzeniowej konfiguracji).

Wiele wskazuje więc na to, że Yorktown nie będą ostatnimi przedstawicielami tego typu układów i doczekamy się podobnie skonstruowania 8-rdzeniowego Penryna i Nehalema. A gdy dodamy do tego jeszcze obecną, przynajmniej w tym ostatnim, technologię HyperThreading, to otrzymamy nawet 16-wątkowy procesor przeznaczony na rynek domowego użytkownika. Idąc tym tropem i zapowiedziami Intela oraz AMD możemy ostrożnie założyć, że w przyszłej dekadzie na porządku dziennym będą procesory zdolne do pracy nawet z kilkudziesięcioma wątkami jednocześnie. Korzyści z posiadania takiego układu mogą być ogromne. Pod warunkiem jednak, że producenci gier i programów zechcą i możliwie szybko zaczną tworzyć, odpowiednie wielowątkowe kody. Dziś bowiem często trudno jest wykorzystać dwurdzeniowy procesorów, nie mówiąc już o czterordzeniowych modelach. Na szczęście widać już pierwsze oznaki nadchodzących zmian.

Firma Valve, twórca słynnego Half-Life zaprezentowała niedawno technologię, która w bardzo efektywny sposób rozdziela obliczenia pomiędzy wszystkie dostępne rdzenie procesora. W zależności od potrzeb, każdy ze rdzeni liczy odmienną część wirtualnego świata - jeden będzie zajmować się fizyką, inny sztuczną inteligencją, jeszcze inne dźwiękiem i grafiką.

Dodatkowo, np. w sytuacji, gdy do obliczenia jest zmiana położenia, dajmy na to 1000 elementów, silnik gry może przydzielić po 250 z nich każdemu z czterech rdzeni. Nie zawsze jednak można takiego podziału dokonać, zwłaszcza wtedy, gdy do wykonania obliczeń potrzebne są dane z wcześniejszych operacji. Dlatego Valve całe rozwiązanie wyposażyło jeszcze w dodatkowe mechanizmy, które dynamicznie rozdzielają wszystkie zadania i obliczenia tak, by każdy z rdzeni był możliwie w pełni wykorzystany. I efekt tego jest bardzo interesujący. Na specjalnym pokazie Kentsfield okazał się ponad trzy razy wydajniejszy od porównywalnego jednordzeniowego układu. Oznacza to, że programiści będą mogli tworzyć znacznie bardziej rozbudowane wirtualne światy bez obawy o to, czy procesor sobie z nimi poradzi.

Wielordzeniowe procesory wykorzystywać ma między innymi Unreal Engine 3 firmy Epic. Łącznie, w 2007 roku, ma na rynku pojawić się przynajmniej kilkanaście gier zdolnych do poskromienia dodatkowych możliwości oferowanych przez takie układy. A Valve kreśli jeszcze bardziej interesującą przyszłość. Zdaniem programistów z tej firmy, za kilka lat niczym nadzwyczajnym nie będą gry, które będą potrafiły zaangażować do pracy nawet kilkadziesiąt rdzeni, w tym także te graficzne. Nadejść ma bowiem era, w której zatrze się wyraźna granica pomiędzy CPU a GPU, a liczyć się będzie tylko ich łączna wydajność, wynikająca z zastosowania ogromnej liczby rdzeni.

Nietrudno wyobrazić sobie konglomerat kilku procesorów różnego przeznaczenia i zunifikowanego GPU zintegrowanych w jednym kawałku krzemu i efektywnie współpracujących, dzięki inteligentnej logice dynamicznie rozdzielającej zadania związanie liczeniem grafiki, fizyki czy sztucznej inteligencji pomiędzy wszystkie dostępne jednostki. To będzie era prawdziwej konwergencji, połączenia ogromnych możliwości CPU i GPU. Ale czy tak właśnie się stanie? Czas pokaże.

Krzysztof Wierzbicki

PCArena.pl
Reklama
Reklama
Reklama
Reklama
Reklama
Strona główna INTERIA.PL
Polecamy