Inside nVidia NV40
14. April 2004 / von aths / Seite 6 von 6
Eine skalierbare Architektur
Ehrlich gesagt, ist die GeForce 6800 Ultra keine Karte für jeden: Sie ist zu groß, zu schnell, und damit zu teuer. Außerdem dürstet ihr nach Strom in bislang unbekannten Mengen. Aber nur die AGP-Karte wird zwei Stromstecker haben, die PCI-E-Version kommt mit weniger aus (also mit einem Stecker.)
nVidia war clever genug, um bei der Entwicklung des NV40 auf Skalierbarkeit zu achten. Die GeForce 6800 Ultra hat 16 Pipes, die GeForce 6800 immerhin noch 12. Weitere NV40-basierte Designs mit 8, 4, oder sogar nur 2 Pipes sind ebenso möglich. Der Vertexshader ist ein Array von 6 Einheiten mit insgesamt 4 Pointsampling-TMUs. Ein einzelner Vertexshader mit nur einer TMU (die anderen drei würden "virtuell" bereit gestellt) erfüllt die VS 3.0-Anforderung auch.
GeForce3 und 4 sind nicht skalierbar. Die GeForce FX war schon besser daraus ausgelegt, um die gleiche Architektur an unterschiedliche Bedürfnisse anzupassen. NV40 trägt das einen Schritt weiter: Sogar die Schaltkreise für zukünftige mobile Versionen sind drinnen (wenn auch ungenutzt) weil es einfacher ist, etwas herauszuschneiden als neue Funktionen in ein gegebenen Design hinzuzufügen.
Diesen Punkt mögen wir wirklich beim NV40: Eine Architektur, um sie alle zu finden und ewig zu binden. Der NV40 hat das fortschrittlichste Featureset überhaupt. Die Version mit 16 Pipes ist extrem schnell, wir erwarten die 8-Pipe-Version auf gleicher Augenhöhe mit einer FX 5950 Ultra (jedenfalls wenn diese 8-er Version ein 256-Bit-DDR-Interface bekommt.) Natürlich sollte man sich nicht zu früh freuen, wir müssen das abwarten und durchbenchen, wenn die Karten erhältlich sind. nVidia sollte solche Medium-Range Produkte so schnell wie möglich in den Markt bringen.
Sogar ein kleiner 4-Pipe-Chip, basierend auf dem NV40, könnte die Ansprüche von Gelegenheitsspielern erfüllen (zumindest wenn es keine 64-Bit-Version ist.) Die FX 5200 war für Spieler ja wirklich enttäuschend, und die FX 5600 kaum besser, wir hoffen dass die kleineren NV40-Versionen für Gelegenheitsspieler noch geeignet sind.
Natürlich kann man das nicht mehr von einer hypothetischen Version mit nur 2 Pipes erwarten. Eine 2-Pipe-GPU ist übrigens noch immer Quad-basierend, nur eben, dass man zwei Takte braucht, um eine Operation auf das ganze Quad anzuwenden. Zwei Pipes können nicht die Leistung bringen, die auch nur selten spielende Leute brauchen. Aber der NV40 hat mehr als nur 3D-Features.
Howard Marks: Dieser nette Wissenschaftler ist dafür zuständig, die Hardware-Fehler im Chip zu finden. nVidia nutzt dafür modernstes Gerät.
Video-Beschleunigung
GeForce 6800 Ultra hat in der Hardware einen Video-Codec. Das heißt, die GPU entlastet die CPU, wenn Video-Daten dekomprimiert und sogar wenn sie komprimiert werden. Natürlich ist das auf Treiber-Support angewiesen. Die Video-Engine nutzt ihre eigene Integer-Logik, aber die Pixelshader könnten auch mitbenutzt werden. Die Architektur unterstützt sogar unterschiedliche Taktraten für die 2D- und 3D-Teile. Das ist gut für mobile Versionen. nVidia implementierte außerdem interessante Sachen, um Probleme mit falsch gekennzeichneten DVDs zu lösen, z. B. um Interlacing-Artefakte wegzufiltern. Wir werden sehen, ob das wie versprochen funktioniert.
Das "Overlay" ist eine althergebrachte Methode, um ein skalierbares Videofenster anzuzeigen. Wir haben noch nicht alle Informationen, doch nVidia versprach, das Gamma-Problem sei nun gelöst (in bisherigen NV-Produkten war es nicht möglich, die Wiedergabe übers Overlay mittels Gamma-Funktion zu korrigieren.)
Auch mit nView, nVidias Marketing-Begriff für Zwei-Monitor-Unterstützung, gibt es ein Wiedersehen. Noch können wir nichts genaues sagen, aber das neue nView wird einige zusätzliche Funktionen haben. (Wobei wir noch nicht wissen, ob es sich hierbei rein um Treiber-Features handelt.)
Augenscheinlich wurde noch nicht entschieden, ob die komplette Video-Engine auch in extrem kleinen NV40-basierten Chips eingebaut wird.
Technisches Fazit
Die Effekt-Palette, die mit Pixel- und Vertexshader 2.0 möglich wäre, wird heute noch lange nicht ausgeschöpft. Kurz einen Sprung in die Zukunft. Wir schreiben das Jahr 2007. Jedes moderne Spiel braucht DirectX-Next-Hardware, wenn alle Optionen genutzt werden wollen, aber DirectX9 (mit Shader Model 2.0) ist noch immer das technische Einstiegs-Niveau. Die zweite Generation von DirectX-Next-Hardware hat sowohl das Featureset, als auch die Leistung, um einen vorher undenkbaren grafischen Realismus zu ermöglichen. Es gibt eine nennenswerte Zahl an Spielen mit unglaublichen Geometrie-Details, wir bekommen Offset-Mapping (eine Technik, um Displacement-Mapping zu faken) mit Self-Shadowing, dazu Image-based Lighting mit MDR. Die GeForce 6800 Ultra öffnet jetzt die Tür zu jener Welt.
Der NV40 ist sehr gut auf die "heutige nächste Spiele-Generation" abgestimmt, wie Doom3 und Halflife 2, wir erwarten hier sehr hohe Leistung. Was aktuell zu kaufende Spiele angeht, werfe man einen Blick auf unsere Benchmark-Ergebnisse.
Die NV40-Architektur ist sehr gut geeignet, um vom Einsteigssegment bis in den Highend-Bereich zu skalieren. Ein einzelner Chip kann nicht den gesamten Markt befriedigen, auch nicht die komplette Spieler-Gemeinde. nVidias neues Design wird unterschiedliche Leistungsniveaus bringen, aber immer die neuesten Features.
Persönliches Fazit des Autors
Natürlich hat nVidia seine Hausaufgaben sehr gut gemacht. Aber es gibt einen Punkt, über den ich persönlich nicht hinwegkomme: Armseelige anisotrope Qualität, die mit ATIs vergleichbar ist. Zwar handelt es sich um eine unterschiedliche Methode, aber die Textur-"Qualität" ist ähnlich. Wir hatten zu wenig Zeit, um eine tiefgehende Analyse schon jetzt anzubieten, doch das werden wir weiter untersuchen sobald wir eine neue Karte haben.
Obwohl nun immerhin das volle "trilineare Band" zurück ist, gibt der NV40 keine volle isotrope Qualität mehr aus. In der Tat ist die GeForce4 die letzte GPU von nVidia, die mit heutigen Treibern noch volle Standard-trilineare Qualität produziert. Sowohl die GeForce-FX-Karten, als auch die GeForce 6800 Ultra sind "optimiert".
Wer eine Karte wie die 6800 Ultra kauft, möchte natürlicherweise auch die Möglichkeit haben, volle Qualität einzustellen. Meine Ti 4600 ist noch schnell genug für heutige Spiele und bringt sehr gute Texturqualität, die ich nicht missen möchte. Einfach gesagt, eine inzwischen schon recht alte Radeon 9500+ ist auch noch schnell genug, und hat ähnliche Textur-"Qualität" wie die GeForce 6800 Ultra . Immerhin sind fast alle Szenen komplett durchtexturiert - bessere Filterqualität nützt dem gesamten Bild. Praktisch jedes Pixel wird irgendwie texturiert.
Davon abgesehen, ist der NV40 sowohl schneller als auch reicher an Features, als ich erwartete. Er ist außerdem unerhört komplex: Mit etwa 220 Millionen Transistoren kann man ihn sicherlich als große Ingenieurs-Meisterleistung bezeichnen. FP-Filterung ist eine Sache, auf die ich kaum zu hoffen wagte, und auch wenn das Feature in der Lebenszeit des NV40 vielleicht gar keine Rolle spielt ist es schön zu sehen, dass dieser Weg eingeschlagen wurde.
Die 6800 Ultra kommt mit fullspeed FP32-Pixelshading, dem neuesten und besten Featureset seit langer Zeit und Leistung im Übermaß. Nur bestehe ich darauf, die Option auf bestmögliche Texturqualität ebenso zu haben.
Wir danken den folgenden Beteiligten dafür, diesen Artikel möglich gemacht zu haben:
Dem 3DCenter-Forum: RLZ, Xmas, zeckensack (in alphabetischer Reihenfolge) und vielen anderen für ihre hilfreichen Einsatz, Demirug für Insider-Informationen sowie seinen Pixelshader 3.0-Artikel, und nggalai für seine tolle Unterstützung vor allem die englische Version des Artikels betreffend.
Andere Webseiten: Damien Triolet und Dave Baumann für ihre Denkanstöße, und die nette Zeit in Santa Clara und San Jose.
nVidia: nVidia Deutschland für das NV40-Briefing in München, dem Team welches den "Editor's Day" in San Jose organisierte, David Kirk für seine Zeit und unschätzbaren Informationen, und allen anderen Angestellten bei nVidia für ihre freundlichen Antworten auf unsere vielen Fragen.