Rozwój akceleratorów grafiki 3D po 2001r.

Transkrypt

Rozwój akceleratorów grafiki 3D po 2001r.
Architektura Systemów Komputerowych
Rozwój akceleratorów grafiki 3D po 2001r.
Piotr Ploch, Sebastian Pudełko
Gr. 24
Karta graficzna to element komputera tworzący sygnał dla monitora. Podstawowym
zadaniem karty graficznej jest przechowywanie informacji o tym jak powinien wyglądać
ekran monitora i odpowiednim sterowaniu monitorem. Pierwsze karty graficzne potrafiły
jedynie wyświetlać znaki alfabetu łacińskiego ze zdefiniowanego w pamięci karty generatora
znaków - tryb tekstowy. Kolejna generacja kart graficznych potrafiła już wyświetlać w
odpowiednim kolorze poszczególne punkty (piksele) - tryb graficzny. Nowoczesne procesory
graficzne udostępniają wiele funkcji ułatwiających i przyśpieszających pracę programów.
Możliwe jest narysowanie odcinka, trójkąta, wieloboku, wypełnienie ich zadanym kolorem
lub wzorem, tzw. akceleracja 2D. W chwili obecnej wszystkie karty na rynku posiadają
wbudowaną funkcję ułatwiające tworzenie obrazu przestrzeni trójwymiarowej, tzw.
akceleracja 3D.
Właśnie rozwojem akceleratorów 3D po 2001r się zajmiemy.
W chwili obecnej na rynku kart graficznych liczą się jedynie dwie firmy - ATI i nVidia.
W roku 2001 na rynku można było znaleźć również karty graficzne takich firm jak Matrox,
STMicroelectronics, czy Intel. Firmy te produkowały nowe układy jedynie do początku 2002
r. Potem nie wypuściły na rynek żadnego nowego modelu. Dlatego rozwój kart oprzemy na
przykładach ATI i nVidia.
Dla rozwoju akceleratorów 3D bardzo ważne znaczenie miało zastosowanie Pixel
Shader i Vertex Shader, które jako pierwsze w swoim układzie umieściła nVidia, a dokładnie
był to Geforce 3.
Pixel Shader to mechanizm, odpowiedzialny za ostateczne generowanie obrazu, który ma
zostać wyświetlony. Jego cechą charakterystyczną jest możliwość przypisania do każdego
piksela oddzielnego programu modyfikującego jego parametry. Natomiast Vertex Shader
pozwala wykonywać zaawansowane operacje na wierzchołkach (vertex), nieobciążające
głównego procesora komputera. Do każdego wierzchołka można przypisać oddzielny
program, sterujący jego zachowaniem.
Karta GF 3 nie miała sobie równych pod względem osiągów, to było marzenie każdego
ówczesnego gracza. Trochę później wypuszczony na rynek Radeon 8500 był jednak szybszy,
współpracował z DirectX 8.1, kiedy porównywalny do niego Geforce 3 tylko w wersji 8. W
późniejszym okresie wydano GeForce 3 Ti 500 (w którym względem poprzednika
podniesiono zegary jako odpowiedź na Radeona 8500) i Geforce 3 Ti 200 (miała to być tania
karta z Shaderami i miała obniżone zegary). W tym samym czasie rynek został zalany
tańszymi kartami z Tajwanu, które bardzo często były w pewien sposób uszkodzone (np. brak
jakiegoś kondensatorka, źle przesmarowany rdzeń). Karty te były kilkaset złotych tańsze, ale
istniało ryzyko, że trafimy na uszkodzony egzemplarz i były kiepskie do OC.
W 2002 roku nVidia wypuszcza 4 Ti, była to praktycznie 3 Ti z jeszcze wyżej
ustawionymi zegarami. W tym samym roku firma ta wypuściła na rynek jeszcze kilka innych
modeli, np. GF 4 MX440-8, który jako pierwszy obsługiwał AGPx8. W generacji Geforce 4
ciekawym był fakt, że nazwa wskazywała na coś nowszego, lecz technologicznie i
wydajnościowo ta karta była podobna do Geforce2. Jedyne, co jej pozostało z 4 Ti to system
zarządzania pamięcią, co trapiło GeForce2. ATI odpowiada Radeonem 9700, dla którego
nawet wypuszczony później Geforce FX nie był godnym rywalem. Dla mniej zamożnych
graczy producent z Kanady przygotował Radeona 9000. W tym momencie zaczyna się cyrk z
nazewnictwem Radonów. I tak dla przykładu R9000 to był 8500 bez jednej jednostki TMU i
TrueForm i wbrew nazwie był wolniejszy. Później ukazał się R9100, który był Radeonem
8500 ze zmienioną nazwą, a następnie R9200, który z kolei był Radeonem 9000 z dodaną
obsługą AGPx8. Pod względem wydajnościowym 9100 odpowiadał teoretycznie słabszemu
8500, a i tak oba były lepsze od porównywalnych 9000 i 9200.
W 2003 r. pojawia się długo zapowiadany GF FX. Na początku miał się ukazać
5800Ultra, promowany jako pogromca Radeona 9700. Niestety okazał się wpadką za sprawą
128bitowej szyny do pamięci (Radeon - 256bit), drogiej pamięci DDR2 i słabej jednostki
Pixel Shader, co trapi każdego FX. Ogólnie cała seria FX była chyba największą wpadką
nVidii. Każdy konkurencyjny układ ATI jest lepszy. Firma z Kanady zaprezentowała
Radeona 9600 ("następcę" 9500) i 9800 (faktycznie szybszego od 9700). Problem polegał na
tym, że Radeon 9600PRO był 25% wolniejszy od 9500PRO, a ATI zostało zmuszone do jego
wypuszczenia, bo GPU R300 było drogie, co gryzło się z przeznaczeniem tych kart.
Natomiast 9800 był całkowitym sukcesem, oferował nieco wyższą wydajność od 9700. W
czwartym kwartale tego roku ATI w modelu X300 jako pierwsza użyła PCi-E x16.
W 2004 r. nVidia wzięła się do roboty i stworzyła naprawdę udany układ – był to
pierwszy układ z serii 6. Niezwykłą furorę zrobiła karta 6600 dzięki znakomitej wydajności i
dobrej cenie. Razem z serią 6 nVidia wprowadza CineFX 3.0. Dla nas oznacza to obsługę
DirectX 9.0c i SM3.0. W dzisiejszych grach coraz częściej wykorzystywany i poprawiający
widoki. Niestety Pixel Shader 3.0 W GF6 nie jest zabójczo szybki i tylko najwyższe karty
(6800) są w stanie zapewnić płynną rozgrywkę w grach wykorzystujących SM3.0. W tym
przypadku ATI zostało z tyłu. Mimo, że karty miało szybkie, to były one wyposażone w
jedynie w SM2.0 i obsługę DirectX 9.0b. Ciekawostką jest wprowadzenie w tym roku
technologii, zastosowanej po raz pierwszy już w 1998 r. przez firmę 3dfx (firma ta została
wykupiona przez nVidię w 2000 r. razem z jej patentami oraz własnością intelektualną) w
modelu Voodoo2, a mianowicie SLI. Pozwalała ona na skorelowanie pracy dwóch kart
graficznych, celem szybszego renderowania obrazu. Technologię tą wspierają tylko karty
generacji 6. i 7., a dzięki nowym sterownikom można używać kart bez mostka SLI. W tej
chwili oficjalnie technologie SLI wspierają tylko płyty główne z chipsetem NVIDIA nForce4
Ultra. SLI boryka się jednak z problemami, z których najpoważniejszy to bardzo zmienny
poziom uzyskiwanego wzrostu wydajności, do zera włącznie, zależny od specyfiki gry oraz
uwzględnienia tego faktu w sterownikach. Chcąc przynajmniej zredukować problem, nVidia
ostatnio wyraziła zgodę na tworzenie przez producentów w grach tzw. profilu SLI. Drugą
słabością SLI jest konieczność użycia dwóch IDENTYCZNYCH kart, co należy rozumieć nie
tylko jako tego samego typu, ale także pochodzących od tego samego producenta. Trzecią
niedogodnością jest stosowanie wewnętrznego mostka łączącego obie karty, co w
konsekwencji wymusza na producentach płyt głównych dochowanie bardzo wąskich
tolerancji wymiarowych w rozmieszczeniu slotów PCI-E. Także w tym roku firma z
Kalifornii wprowadziła model Geforce PCX 5300, który pracuje na gnieździe PCi-E x16. ATI
rozwija serię X, która wzbogaciła się o modele X600, X600PRO, X800, X800PRO i
X800XT. X600 i X600PRO to były tak naprawdę odpowiednio Radeon 9600 i 9600PRO z
interfejsem PCi-E. X800 był szybszy od swojego konkurenta – GF 6800, lecz całą serię
trapiła jedna dolegliwość, a mianowicie wsparcie jedynie jak już wspominaliśmy dla DirectX
9.0b. Odpowiedzią Kanadyjczyków na SLI był Crossfire. Technologia graficzna opracowana
przez firmę ATI dzieli obraz idący do pierwszej karty graficznej (Master) tak, że mniej więcej
połowa (w zależności od konfiguracji) trafia do karty wspomagającej (Slave). Przeciwnie, niż
karty przeznaczone do pracy w systemie SLI, dwie karty ATI nie są (i nie muszą) być
identyczne. Master zawiera elementy dodatkowe, niezbędne do funkcjonowania całości. ATI
podkreśla o wiele większą elastyczność swojego rozwiązania, co w praktyce oznacza, że
dowolna karta X800 lub X850 może współpracować z każdą kartą Radeon CrossFire Edition.
Bez względu na markę, BIOS, częstotliwości pracy, ilość pamięci, liczbę potoków
renderujących itd. Ale niestety - dwie zwykłe karty ATI nie mogą współpracować ze sobą.
Zastosowanie układu Crossfire umożliwia znaczne, nawet dwukrotne przyśpieszenie aplikacji
3D. Według ATI jej rozwiązanie jest w pełni kompatybilne ze wszystkimi tytułami gier oraz
wszystkimi programami do obróbki grafiki 3D. W tym roku obie konkurujące firmy
wypuściły modele dwunasto- oraz szesnastopotokowe; 12 – X800 i GF 6800, 16 – X800 XT i
GF 6800 GT. Co ciekawe nVidia wcześniej opracowała model szesnastopotokowy niż
dwunastopotokowy.
W roku 2005 nVidia kontynuuje serię 6 – serią 7. Układy otrzymały parę technologii,
lecz nadal mamy do czynienia z Shader Model 3.0, jednak wydajność oczywiście wzrosła.
Światło dzienne ujrzały karty X1xxx. W przeciwieństwie do Nvidii, ATI zdecydowało się
uderzyć każdy segment rynkowy w jednym momencie i tak w dniu premiery dostępne były
"rodzinki": X1300, X1600 i X1800. Tym razem ATI opuściło architekturę znaną z R300 i
zaprojektowało rdzeń od nowa. Obecnie toczy się zacięty bój, bo np. X1600XT nie jest w
stanie dogonić GF7600, ale już w wyższym pułapie cenowym/wydajnościowym Radeon
X1900XTX wygrywa z Geforcem 7900GTX.
W połowie 2005 r. obie firmy (nVidia i ATI)
zaprezentowały technologię
pozwalającą na ograniczenie ilości pamięci na karcie graficznej do niezbędnego minimum i
uzupełnienia jej pamięcią dynamicznie przydzielaną z pamięci RAM komputera. Są to układy
nVidia Turbo Cache i ATI Hyper Memory. Sam pomysł nie jest nowy (takie rozwiązania są
od dawna stosowane w chipsetach do płyt głównych ze zintegrowaną grafiką i w
notebookach), ale dzięki możliwościom i przepustowości magistrali PCi-E skuteczność i
skalowalność takiej architektury znacznie wzrosły. Układy takie jak GF 6200 Turbo Cache
czy Radeon X300 SE Hyper Memory potrafią wykonywać operacje bezpośrednio w pamięci
operacyjnej komputera. Karty takie są tańsze i cichsze. Niestety ich wydajność w wyższych
rozdzielczościach (więcej niż 1024x768) i przy włączeniu dodatkowych efektów wizualnych
pozostawia wiele do życzenia.
Ciekawym rozwiązaniem jest zaproponowany jakiś czas temu przez firmę Dell patent
na połączenie jeszcze większej ilości kart graficznych w jeden działający układ. W przypadku
Della były to cztery karty jednordzeniowe. W chwili obecnej nVidia oraz ATI udoskonalają
swoje wersję tego rozwiązania. Firmy te zaproponowały jednak połączenie dwóch kart
dwurdzeniowych, odpowiednio w SLI i Crossfire.
ATI pracuje obecnie nad wprowadzeniem do swoich układów graficznych pamięci
typu DDR4 oraz planuje przejście na 80nm (w chwili obecnej większość kart jest na 90nm).

Podobne dokumenty