Michał Makowski
Gr. I5X1S0
Opis architektury Intel Xeon
Wstęp
W 1998 Intel zaczął dodawać słowo “Xeon” do procesorów produkowanych na rynek
serwerów i stacji roboczych. Nie chodziło tu jednak tylko o nazwę. Procesory te mogły mieć
dostęp do większej ilości pamięci RAM, mogły pracować w środowisku wieloprocesorowym
(np. na płytach głównych z zainstalowanym więcej niż jednym procesorem) oraz miały
wyższą wydajność niż ich odpowiedniki dla zwykłych użytkowników. „Serwerowe” wersje
Pantium II i III były nazwane Pentium II Xeon i Pentium III Xeon. W przypadku Pentium 4,
Intel odszedł od tego schematu i serwerową wersję tego procesora nazwał po prostu Pentium
Xeon.
Aby pokazać rozwój jak i ogólną charakterystykę architektury Xeon, przedstawię kolejno
procesory na niej bazujące wraz z krótkimi ich opisami.
Pentium II Xeon
Pentium II Xeon ujrzał światło dzienne w czerwcu 1998. Był to procesor szóstej generacji
Intela, gdyż bazował na tej samej architekturze co Pentium Pro.
Główną różnicą pomiędzy Pentium II Xeon a zwykłym Pentium II była częstotliwość
zegarowa dostępu do pamięci cache L2. Podczas gdy wersja Xeon miała dostęp do tej pamięci
z częstotliwością równą częstotliwości wewnętrznej (np. 400MHz dla procesora 400MHz),
zwykły Pentium II miał dostęp do cache L2 jedynie z połową tej prędkości (200MHz dla
procesora 400MHz).
Głównymi rozwiązaniami technicznymi w Pentium II Xeon były:
•
32KB pamięci cache L1 z podziałem na 16KB instrukcji i 16KB danych
•
512KB, 1MB lub 2MB cache L2 o dostępie z tą samą częstotliwością co wewnętrzna
częstotliwość procesora
•
100 megahercowa zewnętrzna szyna danych
•
dostęp do 64GB pamięci RAM
•
obsługa wieloprocesorowości (symmetric multiprocessing – SMP) do czterech
procesorów (modele z 2MB pamięci L2 umożliwiały pracę w środowisku
ośmioprocesorowym)
•
procesor był montowany w kartridżu zwanym SECC (Single Edge Contact Cartridge)
•
rdzeń produkowany w technologii 0.25 µm, 7,5 miliona tranzystorów na powierzchni
203mm
2
Pentium II Xeon używał slotu podobnego do tego używanego przez Pentium II. Były one
jednak niekompatybilne – Xeon miał 330 połączeń, a zwykły Pentium tylko 220.
Pentium III Xeon
Intel wypuścił na rynek Pentium III w marcu 1999. Podobnie jak Pentium II był to procesor
szóstej generacji.
Jego główne cechy to:
•
16KB cache L1 instrukcji i tyle samo danych
•
512KB, 1MB lub 2MB pamięci cache L2 o dostępie z prędkością taką jak zegar
wewnętrzny
•
100MHz lub 133MHz szyna danych
•
dostęp do nawet 64GB pamięci RAM
•
obsługa wieloprocesorowości (symmetric multiprocessing – SMP) do czterech
procesorów (modele z 2MB pamięci L2 umożliwiały pracę w środowisku
ośmioprocesorowym)
•
procesor był montowany w kartridżu zwanym SECC (Single Edge Contact Cartridge)
•
produkowany w technologii 0,25 µm (nazwa kodowa „Tanner”) lub 0,18 µm (nazwa
kodowa „Cascades”)
Pentium III Xeon używał tej samej kieszeni co Pentium II Xeon i mógł być instalowany na tej
samej płycie głównej co Pentium II, jeśli płyta ta obsługiwała częstotliwość taktowania
wymaganą przez dany procesor.
Xeon
Ten procesor powinien być nazwany Pentium 4 Xeon, ale Intel wybrał nazwę “Xeon”.
Podobnie jak w przypadku innych procesorów z architekturą Xeon i ten był przeznaczony do
stacji roboczych i serwerów. Jest to procesor siódmej już generacji. Procesory szóstej
generacji używały takiej samej architektury jak Pentium Pro.
Pierwotnie Xeon był nazywany również Xeon DP (od Dual Processing). Wzięło się to stąd, że
umożliwiał współpracę tylko w układzie dwuprocesorowym.
Najważniejsze cechy jego architektury, to:
•
8KB cache danych L1 (16KB w wersjach z technologią EM64T) oraz 150KB cache
L1 przeznaczonych na „śledzenie wykonywania” (trace execution)
•
512KB, 1MB lub 2MB cache L2
•
niektóre modele wyposażone były również w 1MB, 2MB, 4MB lub 8MB L3 cache
Xeon MP
Ten procesor różnił się od “zwykłego” Xeon przede wszystkim tym, że mógł pracować w
ś
rodowisku czteroprocesorowym. Jest nawet możliwe skonstruowanie serwera z większą niż
4 liczbą procesorów Xeon MP na jednej płycie głównej. Powinny być one jednak zgrupowane
po cztery na jedną szynę danych. Połączenie pomiędzy tymi szynami powinno być
realizowane przez chipset.
Główne cechy tego procesora, to:
•
montowany w gnieździe Socket 603
•
150KB L1 cache na śledzenie egzekucji kodu
•
8KB L1 cache na dane lub 16KB w przypadku procesorów z technologią EM64T
•
technologia HyperThreading (więcej o tej technologii w dalszej części)
Technologia Intel EM64T
Technologia ta powstała jako konkurencja dla 64-bitowej technologii AMD. Jest obecna w
niektórych procesorach Pentium 4.
Procesory z tą technologią mogą pracować w nowym trybie – IA32E, który posiada dwa
podtryby:
•
tryb kompatybilności – pozwala 64-bitowemu systemowi operacyjnemu na
uruchamianie 32- i 16-bitowych programów
•
tryb 64-bitowy – pozwala w pełni wykorzystać możliwości technologii 64-bitowej
(m.in. 64-bitowa przestrzeń adresowa)
Z tej technologii jak widać może skorzystać jedynie użytkownik 64-bitowego systemu
operacyjnego.
HyperThreading
Zastosowanie tej technologii powoduje, iż system operacyjny sądzi, że w zainstalowanym
sprzęcie znajdują się dwa procesory. Jest to możliwe ponieważ w procesorze można wyróżnić
części, które są zwykle w stanie nieużywania. Intel umożliwił ich lepsze wykorzystanie,
niejako „tworząc” z nich osobny procesor.
Xeon – modele 50xx, 70xx oraz 71xx (Dual-Core)
Technologia dual-core polega na umieszczeniu dwóch kompletnych procesorów w jednej
obudowie. Ponieważ procesory te obsługują również technologię HyperThreading, system
operacyjny rozpoznaje każdy z nich jak cztery procesory (po dwa symulowane rdzenie na
każdy rzeczywisty rdzeń).
Wszystkie wymienione wyżej modele procesorów dual-core Xeon posiadają następujące
cechy:
•
architekturą bazują na procesorze Pentium 4
•
montaż w kieszeni Socket 604 (modele 7xxx) lub Socket 771 (modele 50xx)
•
zestaw instrukcji SSE3
•
16KB L1 cache danych i 150KB L1 cache na śledzenie egzekucji kodu
•
możliwość pracy w środowisku dwuprocesorowym
•
technologia Execute Disable
•
technologia EM64T
•
technologia HyperThreading
•
technologia wirtualizacji
•
technologia DBS (Demand-Based Switching)
•
technologia Enhanced SpeedStep
Technologia Wirtualizacji (Intel Virtualization Technology)
Technologia ta umożliwia procesorowi pracę tak, jakby był on w rzeczywistości kilkoma
połączonymi równolegle procesorami. Umożliwia to uruchomienie na jednym procesorze
wielu systemów operacyjnych w tym samym czasie.
Technologia ta nie jest nowa. Istnieją na rynku programy (najpopularniejszym jest chyba
VMware), dzięki którym możliwe jest uruchomienie wielu systemów operacyjnych
jednocześnie na jednym komputerze. Nie należy jednak mylić technologii wirtualizacji z
wielozadaniowością czy HyperThreadingiem. Poniżesz schematy pokazują tą różnicę:
Wielozadaniowość
HyperThreading
Wirtualizacja
Przewagą implementacji obsługi wirtualizacji w samym procesorze nad implementacją
programową jest zestaw nowych instrukcji do obsługi tego trybu, co znacznie ułatwia
kontrolę nad wirtualizacją.
Zestaw nowych instrukcji zwany VMX (Virtual Machine Extension) to 10 nowych
wyspecjalizowanych w obsłudze wirtualizacji poleceń: VMPTRLD, VMPTRST, VMCLEAR,
VMREAD, VMWRITE, VMCALL, VMLAUCH, VMRESUME, VMXOFF oraz VMXON.
Technologia Enhanced SpeedStep
Pierwsza wersja tej technologii (bez przedrostka Enhanced) była stworzona aby zapewnić
lepszą żywotność baterii laptopów z zainstalowanym procesorem Pentium III M. Umożliwiała
ona przechodzenie procesora pomiędzy dwiema częstotliwościami taktowania płynnie
podczas pracy. Tryb LFM (Low Frequency Mode) pozwalał zaoszczędzić baterię, podczas
gdy HFM (High Frequency Mode) pozwalał na pracę z maksymalną dostępną wydajnością.
Wersja Enhanced tej technologii umożliwia na przełączanie procesora pomiędzy różnymi
częstotliwościami taktowania, jak i różnymi napięciami. Poniższa tabela przedstawia
przykładowe możliwości ustawienia napięcia i zegara dla procesora Pentium M:
Napięcie
Zegar
1.484 V
1.6 GHz
1.42 V
1.4 GHz
1.276 V
1.2 GHz
1.164 V
1 GHz
1.036 V
800 MHz
0.956 V
600 MHz
Xeon - Modele 32xx, 53xx and 73xx (Quad-Core)
Procesory Xeon z serii Quad-Core posiadają cztery pracujące rdzenie. Te cztery rdzenie są
otrzymane niejako z połączenie dwóch warstw dwurdzeniowych. Z tego powodu pamięć L2
nie jest dzielona pomiędzy wszystkie rdzenie. Dwa rdzenie dzielą jedną pamięć L2, dwa inne
rdzenie dzielą inną pamięć L2. (Na fotografii poniżej widać jak dwurdzeniowe moduły są
oddzielone fizycznie na procesorze)
Wszystkie wyżej wymienione modele Xeon posiadają następujące cechy:
•
produkowane w technologii 65nm
•
kieszeń Socket 604 (modele 53xx oraz 73xx) lub 775 (modele 32xx)
•
zestaw instrukcji SSE3
•
32KB L1 cache na instrukcje i tyle samo na dane
•
8MB L2 podzielone na dwa segmenty po 4MB dzielone pomiędzy dwie pary rdzeni
•
technologia Execute Disable
•
technologia EM64T
•
technologia wirtualizacji
•
technologia Enhanced SpeedStep
Prognozy i przyszłe wersje
Intel QuickPath Interconnect (również QuickPath)
Jest to nowa technologia, nad którą pracuje obecnie Intel. Ma zastąpić FSB (Front Side Bus)
na platformach bazujących na procesorach Xeon. Oczekuje się, że zostanie wprowadzona w
drugiej połowie 2008 roku a pierwszymi procesorami z niej korzystającymi będą Nehalem i
Tukwila (obecne nazwy kodowe).
Whitefield (projekt anulowany)
Miał to być czterordzeniowy procesor, który korzystałby z technologii QuickPath. Docelowo
miał być produkowany w technologii 45nm.
Aliceton
Ma być to następca procesorów Xeon Quad-Core z serii 73xx. Nie udało mi się odnaleźć
bliższych informacji na temat tego projektu.
Dunnington
Jest to również planowany następca Xeon Quad-Core z serii 73xx. Produkowany będzie w
technologii 45nm. Ma to być pojedynczy chip składający się z wielu par rdzeni procesorów
Core2 dzielących 3MB L2 cache oraz 16MB L3 cache. Będzie on również kompatybilny ze
swoimi poprzednikami z serii 73xx. Oficjalnie nie wiadomo ile par rdzeni będzie zawierał, ale
prawdopodobnie będą to trzy pary (a więc aż sześć rdzeni).
Gainestown
Nie udało mi się znaleźć innych informacji o tym projekcie poza tym, że będzie to procesor
czterordzeniowy bazujący na powstającej dopiero mikroarchitekturze Intela – Nehalem.
Beckton
Będzie to procesor bazujący również na mikroarchitekturze Nehalem. Będzie jednakże
posiadał aż osiem rdzeni (być może nawet więcej). Jego produkcja zapowiadana jest jeszcze
przed końcem 2008 roku.
Podsumowanie
Procesory Xeon przeznaczone są do zastosowań profesjonalnych, głównie ze względu na
możliwość pracy w systemach wieloprocesorowych. Intel oferuje szeroką gamę takich
układów. Od Xeonów bazujących na rdzeniu Pentium 4 we wszystkich przypadkach
magistrala FSB jest 64-bitowa i taktowana zegarem FSB co najmniej 100 MHz, ale transmisja
odbywa się w trybie QDR, czyli cztery razy w jednym cyklu zegara (Quad Pumped), co
odpowiada maksymalnej przepustowości od 3,2 GB/s.
Architektura Intel Xeon zdominowała obecnie rynek procesorów. Rozwój procesorów
wielordzeniowych jest bardzo szybki, Intel zapowiada regularnie nowe rozwiązania
techniczne i dodatki jeszcze bardziej zwiększające wydajność nowych procesorów.
Obecnie producenci gier (w końcu rynek rozrywki komputerowej od zawsze ma ogromny
wpływ na rozwój architektury procesorów) twierdzą, że użycie czterech rdzeni ma
uzasadnienie jedynie w przypadku serwerów i renderingu grafiki, natomiast w chwili obecnej
pracują oni nad przystosowaniem gier dopiero dla układów Dual-Core. Na wykorzystanie w
pełni możliwości wielordzeniowych procesorów Xeon przyjdzie nam zatem jeszcze poczekać.
Same rozwiązania technologiczne zastosowane przez Intel przy budowie tych układów są
bardzo ciekawe, natomiast dokładny ich opis przekracza łamy tego referatu.