Koniec procesorów jakie znamy

"Obyś żył w ciekawych czasach" - to chińskie przysłowie odnoszące się do przekleństwa ciągłych, wywracających ustalony porządek życia zmian jak ulał pasuje do najnowszych planów procesorowych Intela i AMD. Z tą różnicą, że transformacje te dla użytkowników komputerów będą miały pozytywny skutek.

"Obyś żył w ciekawych czasach" - to chińskie przysłowie odnoszące się do przekleństwa ciągłych, wywracających ustalony porządek życia zmian jak ulał pasuje do najnowszych planów procesorowych Intela i AMD. Z tą różnicą, że transformacje te dla użytkowników komputerów będą miały pozytywny skutek.

Od dłuższego czasu, w sieci pojawiają się informacje na temat trzech nowych rewolucyjnych układów bazujących na architekturze x86 – są to AMD Fusion, Intel Nehalem, który będzie sprzedawany w sklepach pod handlową nazwą Intel Core i7, oraz Larrabee. Oczywiście im bliżej do planowanej premiery tych układów tym, tych więcej danych pojawia się z oficjalnych i nieoficjalnych przecieków. Nie należy się temu dziwić, gdyż obu firmom zależy na „podkręcaniu” zainteresowania potencjalnych użytkowników.

Coraz więcej informacji pochodzi wprost od producentów. Podczas odbywającej się pod koniec sierpnia konferencji technologicznej Intel Developer Forum oficjalnie zaprezentowano szczegółową budowę Core i7 oraz Larrabee. Oznacza to, że układy te będą wkrótce dostępne na rynku. Pierwsze pojawią się procesory Core i7, które mają trafić do sklepów na przełomie października i listopada.

Układy te będą całkowicie nowymi rewolucyjnymi konstrukcjami. Warto poznać je bliżej bo już wkrótce zagoszczą w naszych komputerach i być może przestawią sposób konstruowania pecetów na zupełnie nowe tory.

Intel Nehalem – nowa architektura Core

Procesor o kodowej nazwie Nehalem to następca produkowanych obecnie układów Intel Core 2 Duo i Intel Core 2 Quad z rdzeniem Penryn. Core i7 został po raz pierwszy publicznie zaprezentowany w Szanghaju w kwietniu bieżącego roku na poprzedniej edycji konferencji Intel Developer Forum. Wówczas to, Intel zademonstrował komputery z pierwszymi działającymi egzemplarzami tych procesorów – kości te pracowały z częstotliwością 3,2 GHz.

Nehalem zaprojektowany został w zupełnie nowej architekturze. Intel nazywa ją czwartą generacją architektury Core. Jej podstawę stanowi modułowa budowa, dzięki czemu cała konstrukcja będzie cechowała się bardzo dużą elastycznością, zwłaszcza pod względem liczby stosowanych w niej rdzeni. Bez problemu można w niej, w zależności od rynkowych potrzeb wykonać zarówno procesory dwu-, trzy-, cztero-, sześcio- jak i ośmiordzeniowe. Co ważne, wszystkie typy procesorów, niezależnie od liczby rdzeni, będą monolityczne, a nie jak w niektórych czterordzeniowych układach obecnej generacji łączone we wspólnej obudowie. Należy jednak pamiętać, że formalnie podstawowa wersja Nehalema ma być układem czterordzeniowym. Architektura Nehalemów ma pozwolić również na budowanie wielopoziomowych pamięci cache – w zależności od potrzeb procesor może mieć cache trzeciego, a nawet czwartego poziomu – choć ta możliwość dotyczyć będzie procesorów serwerowych i tych stosowanych w wysokowydajnych stacjach roboczych.

Modułowość ta jest bardzo mocno rozbudowana. W zależności od potrzeb można do procesora dodawać i odejmować elementy. Jak się nieoficjalnie dowiedzieliśmy, pojawią się wersje układu Core i7 pozbawione kontrolera pamięci, inne z kolei będą wyposażone w więcej linii Quick Path Interconnect. Pojawią się też procesory z wbudowanym rdzeniem graficznym.

Z dostępnych informacji wiadomo, że najbardziej zaawansowany ośmiordzeniowy Nehalem ma się składać z 731 milionów tranzystorów. Produkowany będzie, podobnie jak i pozostałe układy z tej rodziny w 45 nanometrowym procesie technologicznym. Każdy rdzeń będzie mógł jednocześnie przetwarzać dwa wątki, co daje możliwość sumarycznego obsłużenia 16 różnych wątków na pojedynczym układzie. Oznacza to, że Intel wrócił do technologii współbieżnej wielowątkowości, znanej we wcześniejszej generacji układach Pentium 4 pod nazwą Hypher-Threading. Wielowątkowość będzie zaletą w aplikacjach umożliwiających odniesienie z tego korzyści (kodowanie wideo, rendering grafiki 3D, itp). W szczególnej sytuacji gdy aplikacja będzie skoncentrowana na pracy jednowątkowej zastosowanie HT może przynieść niewielki spadek wydajności procesora. Jest to taka sama sytuacja jak miało to miejsce w procesorach Pentium 4. Istniała będzie możliwość wyłączenia HT w procesorach Core i7 z poziomu BIOS-u. Intel przekonuje jednak, że obecne HT to nie to samo co starsze rozwiązanie i w nowych procesorach ma pracować znacznie wydajniej. Nowy układ ma mieć też rozszerzoną liczbę rozkazów SSE, która nosi teraz nazwę SSE 4.2.

W Core i7 wprowadzono także znane z notebooków dynamiczne zarządzanie zasilaniem. Nosi ono nazwę Nehalem Turbo Mode. Co ważne, cały system zasilania jest bardzo elastyczny. Każdy moduł procesora, chodzi tu zarówno o same rdzenie, jak i pozostałe jednostki, takie jak np. pamięć cache L3 czy systemy I/O takie jak kontroler pamięci RAM bądź QPI, są zasilane oddzielnie. W ramach każdej jednostki można niezależnie regulować napięcie zasilające oraz częstotliwość jej taktowania. Do zarządzania całym systemem zasilania zaprojektowano programowalną jednostkę Power Control Unit. Dzięki temu, że jest ona programowalna w przyszłości będzie istniała możliwość zmiany schematów zasilania w zależności od pojawiających się w przyszłości potrzeb.

Dzięki technologii Nehalem Turbo Mode, każdy z rdzeni może być niezależnie zwalniany lub wyłączany – może np. sam przejść w tryb głębokiego uśpienia C6, niezależnie od pozostałych jednostek. Prędkość działania pozostałych rdzeni może zaś zostać w tym czasie przyspieszona, co ma za celu zwiększenie wydajności przetwarzanych przez nie zadań, przy jednoczesnym zachowaniu ogólnego bilansu wydzielanego dla całego procesora ciepła. System ten działa w sytuacjach, gdy nie ma potrzeby wykorzystania mocy obliczeniowej wszystkich rdzeni, gdyż np. uruchomiono tylko dwa jednowątkowe programy, które i tak byłyby wykonywane na dwóch rdzeniach, a dla sprawnego ich działania liczy się najbardziej częstotliwość zegara. "Mostkowanie" mocy powinno sprawdzić się dobrze w grach, które najczęściej nie potrafią wykorzystać mocy wielu rdzeni. W tych zastosowaniach wciąż liczy się częstotliwość taktowania procesora i przewidujemy, że tu Turbo Mode rozwinie skrzydła. Pamiętajmy jednak, że Turbo Model uruchamiany jest na bazie bardzo precyzyjnej analizy działania procesora - w nim znajdziemy kilkanaście sensorów na bieżąco monitorujących jego obciążenie i temperaturę. Jeśli zatem procesor będzie kiepsko chłodzony (obudowa nie będzie dostatecznie wentylowana lub po prostu układ chłodzenia nie będzie wydajny) to "dopalacze" nie zostaną uruchomione lub tez nie dodadzą tyle mocy ile mogłyby dać w optymalnych warunkach.

Jedną z najważniejszych nowości w Nehalemie jest wbudowanie w jego strukturę kontrolera pamięci RAM. Podobne rozwiązanie jest obecnie stosowane w układach firmy AMD. Wbudowany kontroler pamięci eliminuje przy dostępie do danych pośrednictwo układów chipsetu płyty głównej i stosunkowo wolnej magistrali FSB – ma to szczególne znaczenie w wypadku maszyn wieloprocesorowych, gdyż poszczególne kości nie blokują sobie nawzajem dostępu do będącej dla nich w tym wypadku wąskim gardłem magistrali systemowej. Co ważne, wbudowany w Nehalema kontroler pamięci obsługuje pamięci DDR3 (zarówno DDR3 800, 1066 i 1333 MHz) w sposób jedno, dwu, trzy lub czterokanałowy.

Istotną nowością związaną z wymianą danych jest również wprowadzenie do architektury Nehalema specjalnego łącza międzyprocesorowego, wykorzystywanego też do komunikacji z chipsetem. Technologia ta nosi miano, technologii Quick-Path Interconnect i pozwala na szybką (do 25,6 GB/s – zastosowano cztery linie o przepływności 6,4 GB/s każda), bezpośrednią komunikację między procesorami z pominięciem chipsetu płyty głównej. Dzięki temu uzyskano ponad dwukrotny wzrost wydajności w międzyukładowej transmisji danych w stosunku do wieloprocesorowych systemów korzystających z tradycyjnej magistrali FSB. Jak już wspomnieliśmy magistrala systemowa QPI służy też do komunikacji z chipstem.

Powyżej omówione zmiany dotyczą głównie otoczenia rdzeni. Wpływają one na szybkość pracy systemu komputerowego jako całości i na lepsze funkcjonowanie układów wielordzeniowych. Jednak to nie jedyne zmiany jakie znaleźć możemy w Nehalemie w stosunku do układów z rodziny Penryn. Modyfikacje nie ominęły bowiem również wewnętrznej mikroarchitektury procesora.

Najważniejszą zmianą jest optymalizacja podzespołów i układów na poziomie mikroarchitektury. Nehalem potrafi szybciej o ok. 33% wykonywać wewnętrzne mikrooperacje. Istotnym zmianom poddano również moduły pamięci cache drugiego poziomu odpowiadające za przewidywanie dalszej części programu i potrzebnych danych, które z wyprzedzeniem załadowane muszą być do pamięci cache L2. Chodzi tutaj o moduł przewidywania rozgałęzień oraz 512 wejściowy bufor TLB (Translation Lookaside Buffer), w którym przechowywane są fragmenty tablicy stron pamięci operacyjnej komputera.

Tranzystor od nowa

To nie jedyne usprawnienia związane ze zmniejszeniem prawdopodobieństwa nie trafienia przewidywanego kodu z faktycznie wykonywaną kolejnością rozkazów. A trzeba pamiętać, że takie nie trafienie wymaga wyczyszczenia całego potoku wykonawczego i załadowania nowych instrukcji i danych co wiąże się co często nawet z kilkudziesięcioma cyklami zegarowymi, w których procesor nie wykonuje zadanego programu, tylko oczekuje na nowe dane. Kolejną nowością jest nowy bufor BTB (Branh Target Buffer) drugiego poziomu odpowiedzialny za sprowadzanie danych do pamięci cache oraz bufor RSB (Return Stack Buffer). Ten ostatni zapobiega błędnemu przewidywaniu pojawiających się w trakcie wykonywania programu instrukcji powrotnych.

Pamięć cache L1 procesora Nehalem ma pojemność 64 KB (po 32 KB dla instrukcji i danych) dla każdego rdzenia. Pamięć podręczna drugiego poziomu to zaś po 256 KB przypadających na jeden rdzeń. Pamięć ta charakteryzuje się krótkimi czasami opóźnień. Co ciekawe, komórki pamięci cache składają się z ośmiu, a nie jak do tej pory z sześciu tranzystorów. Nowa ośmiotranzystorowa pamięć wymaga bowiem niższych napięć zasilających, co, mimo zwiększenia samej powierzchni zajmowanej przez pamięć, upraszcza w znaczny sposób konstrukcje procesora i ułatwia zarządzanie energią. Do tego dochodzi jeszcze współdzielona przez wszystkie rdzenie pamięć cache L3, która w wypadku procesora czterordzeniowego ma mieć aż 8 MB. Dzięki zastosowaniu pamięci cache trzeciego poziomu zmniejszone zostaje bezpośrednia ilość odwołań procesora do pamięci głównej, co przyczynia się do zwiększenia wydajności procesora i zmniejszenia zużycia energii.

Nehalem z grafiką

To co może okazać się ważne, a dla wielu użytkowników wręcz najważniejsze, przewidziane są wersje Nehalema z wbudowanym w półprzewodnikową strukturę układem graficznym. Jest to ten sam zmodyfikowany moduł graficzny, który znalazł się niedawno w chipsecie przeznaczonym dla platformy Cetrino 2.

Wykorzystana w „graficznej” wersji Nehalema jednostka graficzna zgodna jest z pod względem sprzętowym z bibliotekami Microsoft DirectX 10 oraz modelem cieniowania Shader Model 4.0 i Open GL 2.0. Duży nacisk położony został na dekodowanie materiałów wideo. Dzięki temu moduł graficzny może odciążyć jednostkę centralną komputera od pracochłonnego wykonywania takich operacji związanych z dekodowaniem obrazu jak, jak obliczanie odwrotnej, dyskretnej transformaty kosinusowej (iDCT), kompensacji ruchu, deinterlacingu i korekcji kolorów. Sprzętowe dekodowanie materiałów wideo wykonywane jest dla materiałów wideo zarówno w zwykłej, jak i wysokiej rozdzielczości zapisanych w formatach AVC, VC1 i MPEG-2.

Kolejnymi dwoma ciekawostkami związanymi z obróbką materiałów wideo są Panel Fitter 2 oraz Non-Linear Anamorphic Scaling. Pierwsza technologia odpowiada za sprzętowe skalowanie obrazu, dostosowując go do aktualnej rozdzielczości wyświetlacza. Drga pozwala na przeskalowywanie obrazów w formacie 4:3 do formatu 16:9 w sposób nieliniowy tak, aby obraz był jak najmniej zniekształcony w miejscach, w których koncentruje się wzrok widza. Skalowanie rozpoczyna się zatem niewielkim „rozciąganiem” obrazu w środku ekranu, a kończy przy jego krawędzi, gdzie deformacje są największe, ale jednocześnie najmniej widoczne.

W tym miejscu warto odpowiedzieć sobie na pytanie, co daje integracja modułu graficznego w procesorze. Obecnie zintegrowane moduły graficzne znaleźć możemy w chipsetach. Taka konstrukcja zestawu układów sterujących przeznaczona jest do budowy na jej bazie typowych komputerów biurowo-domowych. Pecety typu używane są przede wszystkim do surfowania po Internecie, do edycji tekstów, prowadzenia prostych obliczeń w arkuszach kalkulacyjnych, wprowadzania danych, pisania e-maili i oglądania filmów. Sporadycznie wykorzystywane są również do uruchamiania gier. Co więcej, gry takie są to zazwyczaj dostępne w Internecie tytuły wykonane we flash’u lub starsze, niezbyt wymagające gry sprzed kilku lat. Jak wiemy, do wymienionych powyżej zadań w zupełności wystarczy układ graficzny o niewygórowanej mocy obliczeniowej.

Dokonując analiz rynkowych, producenci płyt głównych już kilkanaście lat temu wpadli na pomysł, że zamiast wmontowywać do biurowo-domowych komputerów oddzielne karty graficzne lepiej (i znacznie taniej) będzie zaoferować niewymagającym użytkownikom zintegrowane płyty główne wykorzystującą stosunkowo proste, low-endowe układ graficzny. Pomysł przyjął się na tyle, że producenci chipsetów go podchwycili i zaczęli wbudowywać bezpośrednio w strukturę krzemową proste moduły graficzne, co jeszcze bardziej pozwoliło obniżyć koszty produkcji tanich komputerów.

Aby, niepotrzebnie nie rozbudowywać zintegrowanego podsystemu graficznego zaczęto wykorzystywać do jego obsługi pamięć operacyjną komputera. System przydziela wówczas na potrzeby grafiki pewną jej część. I tu dochodzimy do sedna związanych z Nehalemem zmian. Otóż w klasycznej konstrukcji, stosowanej dotychczas, za obsługę pamięci odpowiada mostek północny. Dzięki niemu moduł graficzny mógł się bezpośrednio komunikować z przydzieloną mu pamięcią RAM. Przesunięcie obsługi pamięci do procesora sprawia, że szybkość wymiany danych między modułem graficznym a pamięcią spada. W większości wypadków, w których wykorzystywane są zintegrowane moduły graficzne, ten spadek nie ma większego znaczenia, z jednym wyjątkiem – odtwarzanie filmów wysokiej rozdzielczości. Tutaj takie opóźnienia sprawiają, że obraz zamiast być płynnie odtwarzanym zaczyna się rwać i przeskakiwać.

Stąd właśnie konstruktorzy zauważyli konieczność przeniesienia modułu graficznego bliżej kontrolera pamięci tak, aby nie trzeba było wykorzystywać do transportu informacji graficznych spowalniającej przepływ danych magistrali systemowej. Podobnie rozumowali inżynierowie z AMD. W procesorach tej firmy kontroler pamięci od dawna znajdował się w procesorze. Teraz okazało się również, że ze względu na coraz popularniejsze dekodowanie materiałów wideo w standardzie HD trzeba w zintegrowanych układach przenieść moduł graficzny z chipsetu do procesora – tak pojawiła się koncepcja procesora AMD Fusion, o którym za chwilę.

Inną korzyścią, jest również to, że wbudowanym w procesor rdzeniem graficznym znacznie łatwiej zarządzań pod kątem oszczędzania energii. Po pierwsze taki układ, wykonany jest w mniejszym procesie technologicznym niż chipset, co samo przez się niesie niższe zużycie energii. Po drugie przełączanie niewykorzystywanego procesora w niższe tryby poboru mocy i obniżanie jego częstotliwości pracy, automatycznie przekładać się może na wyłącznie modułu graficznego. Czy takie rozwiązanie zostanie zastosowane w Nehalemie – zobaczymy.


Zobacz również