Koniec procesorów jakie znamy


Każdy z rdzeni Multithreaded Wide SIMD ma do swojej dyspozycji po 32 KB pamięci cache L1 dla instrukcji i 32 KB dla danych oraz wydzieloną dla siebie 256-kilobajtową pamięć L2. Do pamięci tej, jeżeli zachodzi taka potrzeba mogą odwoływać się również inne rdzenie - odbywa się to za pośrednictwem pierścieniowej, dwukierunkowej magistrali ring-bus o szerokości 1024 bitów (po 512 bitów w każdą stronę). Magistrala ta służy do komunikacji wewnątrz układu Larrabee - rdzenie komunikują się za jej pośrednictwem z kontrolerem pamięci, interfejsem odpowiedzialnym za wyświetlanie wygenerowanego obrazu oraz jednostką teksturującą. Dzięki pierścieniowej magistrali wymiana danych między poszczególnymi procesorami Multithreaded Wide SIMD jest wyjątkowo skuteczna. Po pierwsze procesory mogą przekazywać bezpośrednio między sobą dane jak również korzystać przy wymianie informacji z pamięci cache L2. Zysk wynikający z takiej architektury komunikacyjnej jest znacznie większy, gdyż dane pobrane przez jeden z rdzeni do własnej pamięci L2 są również dostępne w razie potrzeby dla innych rdzeni i nie ma powodu korzystania wówczas z wolniejszej pamięci zewnętrznej.

Vector

Vector

Rys - Budowa jednostki wektorowej z modułu Multithreaded Wide SIMD

Mask register - Maska rejestrów

16-wide Vector ALU - jednostka wektorowa o szerokości wektora 16

Replicate - replikacja

Reorder - przestawianie

Vector Registers - rejestry wektorowe

Numeric concert - jednostka konwersji numerycznej

L1 Data Cache - cache L1 dla danych>

Kontroler pamięci cache pierwszego i drugiego poziomu, w odróżnieniu od tego z oryginalnego Pentium, obsługuje funkcje prefetch, która pozwala na wcześniejsze pobranie przewidywanych danych z pamięci, które za chwilę mogą zostać użyte w obliczeniach. Jest to niezbędny warunek opłacalności wykonywaniu obliczeń typu SIMD, gdyż oczekiwanie na dane zniweczyłoby cały zysk płynący z jednoczesnego wykonywania jednej instrukcji na kilku operandach. Warto w tym miejscu dodać, że pamięć cache drugiego poziomu służy nie tylko do wymiany danych, ale również wykorzystywana jest jako bufor kolejności wymiany danych w rozgałęzieniach programowych.

Jednostka teksturująca

Jednak jednostki Multithreaded Wide SIMD, to nie jedyny typ modułów wykonawczych znajdujących się w Larrabee. Konstruktorzy tego układu postanowili zastosować w nim klasyczną jednostkę teksturującą. Taki specjalizowany moduł znacznie lepiej radzi sobie ze specyficznymi operacjami występującymi podczas teksturowania. Wynika to m.in. z pracy przy tworzeniu na blokach danych o wielkości 2×2 piksele, a wszelkie operacje filtrowania wymagają z kolei obliczeń 8-, a nie 64-bitowych, gdyż przy tworzeniu grafiki używa się właśnie przede wszystkim ośmiobitowych tekstur RGBA 8888. Jak wyliczyli inżynierowie z Intela wyspecjalizowana jednostka teksturująca wykona zadanie związane filtrowaniem w czasie ok. 12 razy krótszym niż rdzenie Larrabee i 40 razy szybciej przeprowadzi kompresję i dekompresję tekstur.

Do zadań jednostki teksturującej należy wykonywanie wszystkich typowych operacji przeprowadzanych na teksturach, w tym kompresji i dekompresji tekstur, wykonywanie na nich operacji filtrowania anizotropowego dwu- bądź trzyliniowego, mapowanie tekstur, wykonywanie bump-mapingu, antyaliasingu, nakładania cieni oraz dodawanie w procesie postprocessingu tzw. efektów atmosferycznych czyli mgły, dymu, rozmycia ostrości, deszczu itp.

Rdzenie, rdzenie... zastosowania i sterowniki

Nasuwającym się na zakończenie pytaniem jest to w ile rdzeni Multithreaded Wide SIMD będzie wyposażony Larrabee. Z nieoficjalnych informacji wynika, że mają pojawić się wersje układu wyposażone w 8, 16, 24, 36 i 48 rdzeni Multithreaded Wide SIMD. Podobno pierwsza kość ma rozmiary samej krzemowej struktury wynoszące 5x5 cm - jest to na granicy możliwości technologicznych wykonywania półprzewodnikowych układów scalonych. Oznaczałoby to, że jako pierwsza światło dzienne ujrzy wersja 48-rdzeniowa - zobaczymy, czy tak będzie w rzeczywistości

Przewiduje się, że szybkość taktowania układu ma wynosić od 1,7 do 2,5 GHz. Sama wydajność Larrabee szacowana jest zaś na 1,7-2,5 TFLOPS-a. Układ współpracować ma z graficzną pamięcią GDDR5 o pojemności od 512 do 2048 MB. Intel podkreśla, że Larrabee jest w stanie generować sceny 3D przy wykorzystaniu w czasie rzeczywistym techniki raytracingu. W dostępnych materiałach Intela, technologię tą określa się mianem RTRT (Real-Time RayTracing). Dla przypomnienia, w raytracingu pod uwagę bierze się światło pochodzące bezpośrednio ze źródeł światła, jak również odbite od znajdujących się na trójwymiarowej scenie przedmiotów, co mocno komplikuje obliczenia, ale daje znacznie lepszy efekt wizualny. Karty graficzne z układem Larrabee mogą być zatem wykorzystanie nie tylko do gier, ale również w zastosowaniach profesjonalnych. Wspomina się przy tym o ich wykorzystaniu w diagnostyce medycznej, tam gdzie na bieżąco generowany jest trójwymiarowy obraz prześwietlanych narządów. Oczywiście znajdą też swoje zastosowanie w symulacjach inżynierskich, wizualizacji i w projektowaniu CAD.

Ciekawostką pokazywaną na tegorocznym IDF-ie jest program do rozpoznawania poruszających się obiektów podczas jazdy samochodem. Stanowi on cześć koncepcji systemu pojazdu przyszłości. Prace badawcze nad nim prowadzi Intel wraz z firmą Neusoft. W systemie tym obraz zarejestrowany przez kamery poddawany jest analizie przez wielordzeniowe procesory - aplikacja ta powstała w ramach programu badawczego Terrascale - i oprogramowanie to wspomagać ma kierowcę w prowadzeniu pojazdu. Obecnie opracowany software sam identyfikuje zbliżające się pojazdy, ustala ich prędkość, tor ruchu i ostrzega kierowcę przed zbliżającymi się przeszkodami. Program ten ma zostać dostosowany do pracy na układzie Larrabee co zwiększyć ma jego wydajność.

Unikatową cechą architektury Larrabee jest jego zgodność z dowolnym graficznym API. Nie ważne czy będzie to obecny DirectX 10 i OpenGL 2.0, czy powstały na przykład za dziesięć lat DX 30 i OpenGL 5.0. Ponieważ Larrabee jest układem w pełni programowalnym jego zgodność z API zależy tylko i wyłącznie od naisanych sterowników. Podobnie może on na przykład obsługiwać nowy typ interfejsu użytkownika, z którym nie poradzą sobie obecne karty graficzne. Nie istotny jest też dla niego system operacyjny w którym będzie działał. Jedyny warunek to ten, że oprogramowanie systemowe dla Larrabee musi być zgodne z kodem x86.

I to już wszystkie najważniejsze cechy trzech nowych układów, które będą się sukcesywnie pojawiać na przestrzeni najbliższego roku. Jak widać są to pod względem koncepcji ich architektury zupełnie nowe rozwiązania. Czy rzeczywiście zrewolucjonizują one rynek. Wszystko wskazuje na to, ze tak. Tak twierdzi też wielu rynkowych analityków. Jedno jest pewne - żyjemy w ciekawych czasach, przynajmniej pod względem pojawiających się co chwila nowych informatycznych, rewolucyjnych technologii.