nVidia GeForceFX Preview
19. November 2002 / von aths & Leonidas / Seite 3 von 3
CineFX Architektur
Bleibt letztlich noch ein Thema zur GeForceFX, welches wir uns wohlweislich für den Schluß aufgehoben haben - die Programmierbarkeit der Engine bzw. die DirectX9-Funktionalität mittels der CineFX-Architektur. Hier liegen die großen Stärken der GeForceFX, kann sie doch die Radeon 9700 Pro diesbezüglich in jeder Teildisziplin teils erheblich in die Schranken weisen. Nachfolgende Tabelle gibt Auskunft über die Vertex und Pixel Shader Kapazitäten von GeForce4 Ti4600, GeForceFX und Radeon 9700 Pro, wobei letztere mit den DirectX9 Mindestanforderungen gleichgesetzt werden kann.
ATi Radeon 9700 Pro |
nVidia GeForceFX 5800 Ultra |
nVidia GeForce4 Ti4600 |
|
DirectX Version | 9.0 | 9.0 | 8.0 |
High Order Surfaces | Ja | Ja | Ja |
Continous Tesselation | Ja | Ja | Ja |
Vertex Displacement Mapping | Ja | Ja | - |
Geometry Displacement Mappping | Ja | Ja | - |
Vertex Shader Version | 2.0 | 2.0 | 1.1 |
maximale Instruktionen | 1024 | 65536 | 128 |
maximale statische Instruktionen | 256 | 256 | 128 |
maximale Konstanten | 256 | 256 | 96 |
temporäre Register | 12 | 16 | 12 |
maximale Loops | 4 | 256 | - |
Conditional Write Masks | - | Ja | - |
Call & Return | - | Ja | - |
Static Control flow | Ja | Ja | - |
Dynamic Control flow | - | Ja | - |
Pixel Shader Version | 2.0 | 2.0 | 1.3 |
maximale Texturen | 16 | 16 | 4 |
maximale Texturen Instruktionen | 32 | 1024 | 4 |
maximale Farb Instruktionen | 128 | 1024 | 8 |
maximale Instruktionen Slots | 160 | 1024 | ? |
Maximaler Temp Storage | 12 | 64 | - |
Rendering Format | Floating Point | Floating Point | Integer |
Maximale Rendering Genauigkeit | 96 Bit | 128 Bit | 32 Bit |
Instruction Predicates | Ja | Ja | - |
Unlimited Dependet Textures | - | Ja | - |
Swizzling | - | Ja | - |
Advanced Instructions | - | Ja | - |
Conditional Write Masks | - | Ja | - |
Gut zu sehen ist, wie die GeForceFX die DirectX9-Mindestanforderungen, welche sich in der Radeon 9700 Pro wiederspiegeln, weit übererfüllt. nVidia nennt demzufolge als Vertex und Pixel Shader Versionen für seine GeForceFX offiziell "2.0+". Allerdings ist dies nicht wirklich korrekt, da es eine derartige Versionen seitens Microsoft nicht gibt. Möglicherweise wird Microsoft beim entgültigen Release von DirectX 9.0 die GeForceFX-Fähigkeiten als Vertex und Pixel Shader Version 2.1 führen, möglicherweise sogar als Version 3.0. Genauso gut ist es aber auch möglich, daß die GeForceFX weiterhin bei Version 2.0 bleibt, wenn es keine Version 2.1 gibt und die entgültige Version 3.0 noch höhere Anforderungen mit sich bringt.
Geht es um die damit verbundenen Shader-Fähigkeiten, so sind die Lager sowieso weit gespalten. Die einen preisen die neuen DirectX9-Shader, die andere warten dagegen immer noch auf DirectX8-Spiele. Wir begrüßen durchaus die beeindruckenden Möglichkeiten der GeForceFX, zu welchen nVidia jede Menge Screenshots von beindruckenden Rendering-Ergebnissen veröffentlicht hat - und bezweifeln doch deren praktischen Nutzen. Ehrlicherweise muß man zu den von nVidia präsentieren Bildern sagen: Entweder wird dies auch die Radeon 9700 Pro genauso schön rendern können - oder aber wir werden diese Grafikpracht nicht einmal mittelfristig in realen Spielen erleben dürfen :-).
Beispielsweise die 1024 PixelShader-Instruktionen bringen durchaus etwas, wenn die Karte als Offline-Renderer arbeiten soll, so in einer Rendering-Farm oder für anspruchsvolle CAD-Aufgaben. Doch in einem solchen Fall spielt die Geschwindigkeit der Ausführung nur eine untergeordnete Rolle - gerade in Rendering-Farmen wird oft mehrere Stunden an einzelnen Bilder, meist für Kino-Filme, gerendert. Grafik in 3D-Spielen muß dagegen in Echtzeit dargestellt werden, womit sich automatisch gewiße Beschränkungen ergeben. Die GeForceFX mag im Gegensatz zur Radeon 9700 Pro technisch in der Lage sein, hochkomplexe Shader-Programme abzuarbeiten, jedoch bezweifeln wir, daß die Rohleistung der GeForceFX ausreicht, um dies in Echtzeit zu erledigen.
Unserer Meinung nach ist der Mehrwert der wesentlich besseren Programmierbarkeit der GeForceFX für den Spieler praktisch nicht vorhanden (dagegen dürfte der Chip für Spieleentwickler interessant sein). Denn daß zu Lebenszeiten von GeForceFX und Radeon 9700 Pro in Spielen so komplexe Shader zum Einsatz kommen, daß die Radeon 9700 Pro zum (performance-fressenden) Multipass-Rendering gezwungen würde, wagen wir zu bezweifeln. Mit aber nur "einfachen" Shader-Programmen nach DirectX9-Mindestanforderung wird die Radeon 9700 Pro der GeForceFX bezüglich Shader-Performance kaum nachstehen, die Möglichkeiten der GeForceFX blieben dann ungenutzt.
Für Direct3D-Spiele gilt zudem die goldene Regel, daß der "kleinste gemeinsame Nenner" die Basis für die allermeisten Spiele darstellt. In Fall der DirectX9-Beschleuniger sind dies die Spezifikationen der Radeon 9500/9700 Grafikchips. Wir gehen derzeit nicht davon aus, daß sich viele Entwickler die Mühe machen, unter Direct3D für die GeForceFX eine extra Programmierung vorzunehmen, man wird der Bequemlichkeit wegen zumeist auf den allgemeinen Standard der DirectX9-Mindestanforderungen setzten. Unter OpenGL sieht die Sache allerdings ein wenig anders aus: Hier muss noch auf längere Sicht ohnehin für jede Architektur ein eigener Renderingpfad geschrieben werden und somit kann die GeForceFX auch effektiver ausgenutzt werden (Beispiel: Doom III).
Ähnliches gilt für die von der GeForceFX gebotene Farbtiefe von bis zu 32 Bit Floating Point pro Farb-Kanal (128 Bit insgesamt). Dies ist ein sehr guter Wert, jedoch für den Gamer ohne praktischen Nutzen. 16 Bit pro Kanal (64 Bit insgesamt) würden für die nächsten Jahre genauso vollkommen ausreichen, nachdem wir die letzten Jahre auch mit 32 Bit ausgekommen sind - und die Radeon 9700 Pro mit 24 Bit pro Kanal (96 Bit insgesamt) selbst dies schon wieder übertrifft. Die 128-Bit-Genauigkeit der GeForceFX ist lediglich für die professionelle OpenGL-Linie interessant, wenn jener Chip als Offline-Renderer eingesetzt werden soll.
Deshalb sind die erweiterten Rendering-Features der GeForceFX natürlich nicht sinnlos, denn ohne vorhandene Hardware können Spiele-Entwickler ja nicht vernünftig arbeiten. Außerdem ist dieser Chip Basis für viele weitere nVidia-Chips und über kurz oder lang werden die heute noch beeindruckenden Spezifikationen sogar als dürftig erscheinen, weil von neueren Chips weit überholt. Wir sehen also lediglich für den Computerspieler keinen greifbaren Nutzen durch die erweiterten Möglichkeiten der GeForceFX - innerhalb ihrer Lebenszeit, wohlgemerkt.
Vorläufiges Fazit
Eigentlich kann man momentan noch gar kein richtiges Fazit ziehen: Unabhängige und tiefgehende Benchmarks fehlen und selbst die bisher veröffentlichten technischen Daten sind nicht vollständig. Trotzdem läßt sich feststellen, daß die GeForceFX mehr als nur ein "konkurrenzfähiges" Stück Hardware ist: Sie wird die Leistungen der Radeon 9700 Pro mindestens erreichen und im Normalfall trotz niedrigerer theoretischer Speicherbandbreite übertreffen.
Bezüglich des Features-Sets um DirectX9 und Vertex und Pixel Shader zeigt sich die GeForceFX der Radeon 9700 schon jetzt als weit überlegen, auch wenn wir insbesondere die erweitere Programmierbarkeit (dieser Teil, welcher über die Mindestforderungen von DirectX9 hinausgeht) wirklich nur als reine Zugabe ohne praktischen Nutzen zu Lebzeiten des Chips sehen. Einziges Manko bezüglich des Features-Sets stellt die Nicht-Weiterentwicklung der Verfahren zu Anti-Aliasing und zum anisotropen Filter dar. Außer einem 6xS und einem 8xS AA-Modus hat sich hier wohl gar nichts zur GeForce4 Ti verändert.
Ob die damit zu erreichende Darstellungsqualität ausreicht, um jene der Radeon 9700 Pro zu schlagen, werden zukünftige Reviews zeigen müssen. Dort wird sich dann auch die Leistungsfrage klären, wobei wir wie gesagt momentan von einem Sieg der GeForceFX ausgehen - nur die Höhe dessen ist noch vakant, dies kann sich im Bereich von 0 bis 30 Prozent bewegen. Wer allerdings schon eine Radeon 9700 Pro hat, für den wird ein Wechsel zur GeForceFX vermutlich kaum Sinn machen.
Doch jenes liegt ohnehin noch um einiges in der Zukunft. Nach dem jetzigen Stand der Dinge wird der Februar 2003 der erste Monat mit einer breiten Verfügbarkeit von GeForceFX-Grafikboards sein, auch wenn sich einige Karten eventuell schon im Januar blicken lassen. In der Zwischenzeit werden sowohl die Frage nach der GeForceFX-Leistungsfähigkeit als auch offene Fragen zur GeForceFX-Architektur zu klären sein.
Links zu weiteren nVidia GeForceFX Previews, teils mit vielen von nVidia erstellten Rendering-Screenshots und Bildern zur auf der Comdex gezeigten GeForceFX-Karte (Artikel sind alle in englisch):
- NVIDIA Introduces GeForce FX (NV30) @ AnandTech
- GeForceFX: NVIDIA goes Hollywood? @ Tom´s Hardware Guide
- NVIDIA GeForce FX Preview @ nV News
- NVIDIA GeForce FX @ Guru3D
- NV30 Announced: GeForce FX @ Beyond3D
- GeForceFX Preview @ 3DVelocity
- GeForce FX Preview @ 3DGPU
- NVIDIA GeForce FX, or "Cinema show started" @ Digit-Life
- Nvidia GeForce FX Preview @ Tweak3D
- NVIDIA´s NV30 is Now the GeForce FX! @ Hot Hardware
- Inside the GeForceFX Architecture @ ExtremeTech
- NVIDIA GeForce FX Preview @ Sharky Extreme
- NVIDIA GeforceFX Preview @ Bjorn3D
- nVidia GeForceFX Overview @ Hexus
- NV30 - The GeForceFX GPU @ Bit-Tech
- GeForce FX Preview @ Hard|OCP