GeForce FX 5800 Ultra cechy architektoniczne

Patrząc szerzej, możemy założyć, że wybierając nową markę w tak trudnych czasach, marketerzy nVidii najwyraźniej nie bez powodu postanowili ożywić 3dfx w pamięci zwykłych ludzi. Dział PR firmy zakładał, że takie posunięcie wpłynie na popularność akceleratorów. Być może nVidia w końcu zdecydowała, że dalsze zwiększanie liczby w linii GeForce nie jest opłacalne – różnica między GeForce 3 a 4 nie była aż tak wielka, a fakt, że młodszy układ nosi nazwę GeForce 4 MX, a dzięki temu również należy do linii „czwartych geosił”, ogólnie można uznać za błąd działu marketingu.
Ulepszone shadery pikseli
Teraz, wraz z pojawieniem się FX, przetwarzanie pikseli zostało podniesione do tego samego poziomu, co przetwarzanie wierzchołków. Na przykład wiele poleceń używanych wyłącznie do przetwarzania wierzchołków jest teraz dostępnych do przetwarzania pikseli, a same programy sterujące będą większe (do 1024 poleceń). I podczas gdy GeForce3 był ograniczony do czterech tekstur na piksel, NV30 obsługiwał do 16. Wreszcie, liczba operacji na piksel została drastycznie zwiększona: DirectX 8 ma limit 8 operacji, a DirectX 9 zapowiedział obsługę 64 operacji i NV30 obsługuje do 1024 operacji na teksturach. Obejmowało to takie zaawansowane polecenia, jak „swizzling” (ustawienia adresu) i „warunkowe maski zapisu”.
Poprawiona dokładność kolorów
Kolejnym ulepszeniem wprowadzonym w NV3X jest obsługa 64- i 128-bitowej reprezentacji kolorów (16- lub 32-bitowa liczba zmiennoprzecinkowa dla każdego komponentu RGB). Ta innowacja jest dobrze odzwierciedlona w obrazach o dużym zakresie jasności. Możliwość ta od dawna jest wdrażana w profesjonalnych aplikacjach 3D w postaci standardu HDRI (High Dynamic Range Image), na przykład dla 3D Max i jest wykorzystywana w trójwymiarowym renderowaniu sceny przez renderer Brazil.
Dzięki szerszej gamie kolorów wyeliminowano artefakty. Ale za 128-bitowy kolor musiałem sowicie zapłacić zasobami sprzętowymi, przede wszystkim przepustowością magistrali danych.
Cg: język programowania C dla grafiki
Jednym z kluczowych elementów strategii Nvidii w zakresie popularyzacji programowania graficznego był język Cg. Cg to język programowania wysokiego poziomu, który Nvidia starała się ułatwić tworzenie nowych programów, czyniąc go dostępnym nie tylko dla doświadczonych ludzi, takich jak John Carmack, ale także dla początkujących. W dłuższej perspektywie sprawiło to, że aplikacje stały się jeszcze bardziej elastyczne i wydajne. Cg obsługuje zarówno Direct3D, jak i OpenGL, zachowując zgodność z wczesnymi układami graficznymi.
Na SIGGRAPH pokazano przykład, w którym program pixel shader, składający się tylko z dwóch wierszy w Cg, zrobił to samo, co imponująca część kodu składającego się z 23 wierszy w asemblerze. Nawet początkujący programista może używać Cg do programowania zaawansowanych efektów graficznych. I zawsze łatwiej jest poradzić sobie z językiem wysokiego poziomu niż z asemblerem i określonymi poleceniami akceleratora. Historycznie udowodniono, że języki wysokiego poziomu stymulują i popularyzują tworzenie oprogramowania. Nawiasem mówiąc, kompilator języka Cg był dystrybuowany na licencji Open Source, co również pozytywnie wpłynęło na jego popularność.
AGP 8x
Zwiększenie przepustowości między pamięcią systemową, procesorem i układem graficznym było kluczowym celem architektury NV3x. Chip wspierał AGP8x, czyli dwukrotnie większą przepustowość magistrali graficznej. AGP8x zapewniał prędkość 2 Gb/s, podczas gdy AGP4x tylko 1 Gb/s. Dzięki temu możliwe stało się przesyłanie do akceleratora jeszcze większej ilości danych, pełniejsze i szybsze ładowanie go teksturami, złożonymi modelami geometrycznymi i innymi danymi.
Nie należy jednak przesadzać z rolą AGP 8x w systemie. Widoczne korzyści z nowego interfejsu nie pojawiły się szybko. Gry zoptymalizowane dla tej generacji sprzętu niewiele zyskały dzięki AGP 8x. Dopiero gdy większość floty komputerów PC stała się kompatybilna z nowym interfejsem, aplikacje zaczęły działać szybciej na systemach AGP 8x niż na systemach AGP 2x/4x.
Proces technologiczny 0.13 mikrona
Rdzeń NV30 zostanie wyprodukowany w nowym procesie 0.13 mikrona. Dla porównania, starsze modele NV25, czyli po prostu GeForce 4, zostały wyprodukowane w procesie 0.15 mikrona. Cieńszy proces produkcyjny pozwolił na umieszczenie większej liczby tranzystorów na chipie, zwiększenie częstotliwości oraz zmniejszenie zużycia energii i rozpraszania ciepła. Nawiasem mówiąc, topowy produkt ATi Raden 9700 został również wyprodukowany w technologii 0.15 mikrona.
Obsługa DDR II
Jedną z cech nowego chipa, która wywołała wiele emocji, była podstawowa obsługa pamięci DDR drugiej generacji. Tak zwany DDR-II stał się kluczowym czynnikiem wpływającym na działanie akceleratora. Wiadomo, że to wydajność podsystemu pamięci karty graficznej często decyduje o wydajności we współczesnych aplikacjach.
Zalety i wady nowej architektury
Główną cechą NVIDIA GeForce FX jest zwiększona elastyczność i programowalność, która przewyższa podstawowe wymagania DirectX 9 i możliwości ATI RADEON 9700 Pro, ale elastyczność architektury i programowalność przełożyły się na spadek wydajności dla NVIDIA GeForce FX, a w niektórych aspektów, bardzo poważny spadek. Najsłabszym punktem nowego chipa był brak mocy obliczeniowej procesorów arytmetycznych odpowiedzialnych za realizację pixel shaderów. GeForce FX najciężej radził sobie z shaderami pikseli DirectX 9 wykorzystującymi obliczenia zmiennoprzecinkowe.Wprowadzenie kompresji bufora ramki umożliwiło zwiększenie wydajności przy włączonym pełnoekranowym antyaliasingu, a w rezultacie spadek wydajności w GeForce FX przy pełnym -włączony antyaliasing ekranu okazał się znacznie niższy niż w NVIDIA GeForce 4. Jednak w porównaniu z ATI RADEON 9700 Pro, nowa karta graficzna NVIDII nie zawsze prezentowała się najlepiej: tutaj wydajność kart graficznych miała wpływ przepustowość pamięci, a GeForce FX 5800 Ultra, pomimo gigantycznej częstotliwości taktowania układów pamięci, miał dwukrotnie węższą szynę, a co za tym idzie mniejszą przepustowość szyny pamięci.
Pierwsza karta z serii FX - GeForce FX 5800 Ultra, który trafił do sprzedaży i był swoistą bazą architektoniczną, na której opierała się wówczas cała rodzina produktów, był w stanie zapewnić 5800-potokowy układ 128 MHz o wymaganej przepustowości. Ten minus dotknął AA w najbardziej tragiczny sposób, pomimo obecności kompresji bufora ramki w trybach MSAA. Przepustowość pamięci wynosząca 500 bitów bynajmniej nie wystarcza do zapisania 1000 pełnych pikseli na sekundę, a NVIDIA musiała ograniczyć się do procesorów 500-pikselowych i 8 pikseli. W rezultacie NV128 radził sobie zauważalnie gorzej pod względem szybkości w trybie AA niż R4000 (wyposażony nie tylko w kompresję, ale i szerszą 4-bitową szynę pamięci) przez nagłe starty lub zatrzymania (redukcja prędkości). Z powodu takiej konstrukcji użytkownik był zmuszony poświęcić pierwsze gniazdo PCI.
Dane techniczne NVIDIA GeForce FX 5800 Ultra
Nazwa | GeForce FX 5800 Ultra |
Rdzeń | NV30 |
Technologia procesu (µm) | 0,13 |
Tranzystory (mln) | 125 |
Częstotliwość rdzenia | 500 |
Częstotliwość pamięci (DDR) | 500 (1000) |
Typ magistrali i pamięci | DDR II — 128 bitów |
Przepustowość (Gb/s) | 16 |
Potoki pikseli | 8 (4) |
TMU na przenośnik | 1 (2) |
tekstury na zegar | 8 |
tekstury na przejazd | 16 |
Przenośniki wierzchołkowe | 3 |
Shadery pikseli | 2+ |
Shadery wierzchołków | 2+ |
Szybkość wypełniania (Mpix/s) | 4000 |
Szybkość wypełniania (Mtex/s) | 4000 |
DirectX | 9+ |
Antyaliasing (maks.) | SS&MS - 8x |
Filtrowanie anizotropowe (maks.) | 8x |
Pojemność pamięci | 128 MB |
Interfejs | AGP 8x |
RAMDAC | 2x400MHz |
Masywne i popularne karty graficzne oparte na NVIDIA GeForce FX 5800 Ultrawłaściwie to nie oni....