Galerie 18
nVidia GeForce 6800 - šestá generace GPU realitou
i Zdroj: Svět hardware
Článek Grafiky a hry GeForce GeForce 6 (NV40)

nVidia GeForce 6800 - šestá generace GPU realitou | Kapitola 6

Zdeněk Kabát

Zdeněk Kabát

8

Seznam kapitol

1. nVidia GeForce 6800 - šestá generace GPU realitou 2. Jádro NV40 3. 3D pipeline - pokračování 4. Pixel Shader a ROP
5. Paměťové rozhraní a video procesor 6. DirectX 9 - Shader Model 3.0 7. Grafická karta GeForce 6800 zblízka 8. Prodejní verze a závěr

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ý.

Reklama

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:

nVidia GeForce 6800 - šestá generace GPU realitou

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:

nVidia GeForce 6800 - šestá generace GPU realitou

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.


Předchozí
Další
Reklama
Reklama

Komentáře naleznete na konci poslední kapitoly.

Reklama
Reklama