Aktuality  |  Články  |  Recenze
Doporučení  |  Diskuze
Grafické karty a hry  |  Procesory
Storage a RAM
Monitory  |  Ostatní
Akumulátory, EV
Robotika, AI
Průzkum vesmíru
Digimanie  |  TV Freak  |  Svět mobilně

nVidia GeForce 6800 - šestá generace GPU realitou

15.4.2004, Zdeněk Kabát, článek
nVidia GeForce 6800 - šestá generace GPU realitou
Den se s dnem sešel a po dlouhém očekávání byl konečně oficiálně ohlášen grafický čip šesté generace od nVidie, GeForce 6800. Teprve minulý týden se podařilo odhalit oficiální název pro NV40, tento týden ve středu, tedy 14. dubna, skončila všechna NDA a mohu nyní říct, že víme téměř vše. Připravte se na to, že GeForce 6800 je opravdový technologický skvost a její výkon je drtivý.
DirectX 9.0 - Shader Model 3.0
Samostatnou kapitolu stojí za to věnovat podpoře nového grafického API, a to DirectX 9.0c. Dlouho se diskutovalo o názvu tohoto rozhraní, ale nakonec určil Microsoft vzhledem k malým změnám jen písmenko „c“. Oficiálně se tato verze nazývá DirectX 9.0 Shader Model 3.0, což již samo o sobě naznačuje, že Pixel a Vertex Shadery se vyskytují ve verzi 3.0.

Tomu odpovídá i název celé architektury čipu GeForce 6800, který zní CineFX 3.0. Nejdříve se podíváme na rozdíly mezi Shadery verze 2.0 a 3.0, abychom viděli, jaké změny GeForce 6800 přináší. Zde jsou změny pro Vertex Shader, kde VS_2_a je Vertex Shader 2.0 Extended:


Ikona Odkaz na databázi
VS_2_0
VS_2_a
VS_3_0
# of instruction slots
256
256
>= 512
Max # of instructions executed
65535
65535
>=65535
Instruction Predication
-
x
x
Temp Registers
12
13
32
# constant registers
>=256
>=256
>=256
Static Flow Control
x
x
x
Dynamic Flow Control
-
x
x
Dynamic Flow Control Depth
-
24
24
Vertex Texture Fetch
-
-
x
# of texture samplers
-
-
4
Geometry Instancing Support
-
-
x


Z tabulky je vidět, že rozdílů není tolik, ale na druhou stranu se mezi nimi vyskytují faktory jako je predikce instrukcí, dynamická kontrola toku, Texture Fetch apod., které jsem popisoval výše jako součást grafické pipeline, a které jsou místy velmi důležité. Upozorňuji, že toto jsou požadavky pro Vertex Shader 3.0, takže jakýkoliv GPU bez těchto hodnot nemůže Shader Modelu 3.0 vyhovovat.

Ještě se podíváme na odlišnosti v Pixel Shaderu verze 3.0:


Ikona Odkaz na databázi
PS_2_0
PS_2_a
PS_2_b
PS_3_0
Dependant Texture Limit
4
No Limit
4
No Limit
Texture Instruction Limit
32
Unlimited
Unlimited
Unlimited
Position Register
-
-
-
x
Instruction Slots
32 + 64
512
512
>= 512
Executed Instructions
32 + 64
512
512
>=65535
Interpolated Registers
2 + 8
2 + 8
2 + 8
10
Instruction Predication
-
x
-
x
Index Input Registers
-
-
-
x
Temp Registers
12
22
32
32
Constant Registers
32
32
32
224
Arbitrary Swizzling
-
x
-
x
Gradient Instructions
-
x
-
x
Loop Count Register
-
-
-
x
Face Register (2-sided Lighting)
-
-
-
x
Dynamic Flow Control
-
-
-
24


Opět tu máme úpravy hlavně v různých limitech, počtech instrukcí, registrů apod. Součástí je opět dynamické řízení toku, což se stane velmi užitečným nástrojem programátorů. Upraven je také High Precision Mode, který byl v PS 2.0 24 bitů - nyní je podmínkou FP32, což znamená, že mu nebudou čipy ATi při zachování FP24 vyhovovat.

Rozepisovat se detailně o DirectX 9.0 Shader Model 3.0 by vydalo na celý článek, tak se zatím musíte smířit s tímto výčtem změn. Ostatně, hlavním předmětem je GeForce 6800 Ultra, jejíž popis dále pokračuje.
Doporučujeme náš velký přehled desktopových grafických čipů.