3DMark06 – Der Performance-Report: Start zur siebten Runde
5/19CPU-Test
Zwei neue CPU-Tests haben ihren Weg in den neuen Benchmark gefunden. In einem Canyon befinden sich 87 schnell bewegende Objekte, deren Position sich ständig ändert und nur von der CPU berechnet wird. Der zugrunde liegende Algorithmus zur Wegfindung der KI heißt D* Lite und stammt von Sven König. Er läuft als zusätzlicher Prozess (Thread) und kann dadurch von Hyper-Threading, Dual-Core-Lösungen oder Systemen mit zwei Prozessoren profitieren. Die physikalische Berechnungen erfolgen mittels Futuremarks jüngstem Erwerb, Ageias PhysX. Als bisher einzige Physik-Engine können damit mehrere Threads unterstützt und so auch Multi-Core-Prozessoren entsprechend ihren Fähigkeiten gefordert werden.
Die Frame-Rate im Test ist auf zwei Bilder pro Sekunde (2 fps) fixiert. Dies soll eine bessere Vergleichsmöglichkeit aktueller Prozessoren ermöglichen. Die Auflösung in diesem Test ist auf 640 x 480 Pixel festgelegt. Doch die Frames bei der Auflösung, auch wenn sie nur bis zum Wert 2 mit in das Ergebnis eingehen, können entscheidend sein. Mehr dazu im Kapitel zur Berechnung der Ergebnisse. Der Test ist bewusst für neue Dual-Core-CPUs gedacht und dementsprechend fällt das Ergebnis auf älteren Prozessoren eher nüchtern aus. Es sei erwähnt, dass dieser Test sehr lange dauert und nicht wirklich schön anzuschauen ist. Es sei denn, man steht auf schlecht aussehende Dia-Shows. :-)
Feature-/Batch-Size-Test
Fill Rate Test:
Dieser Test ist bereits seit dem 3DMark 2000 im Programm vertreten, wurde allerdings zuletzt immer Bandbreiten-limitierter. Diesen Hemmschuh hat Futuremark laut eigenen Aussagen nun aber ablegen können und gestaltet die neueste Variante des Füllratentests theoretischer als je zuvor. Gemessen wird allerdings wie auch schon zuvor: Jeweils ein Test unter Gebrauch von Single- und Multitexturing kommt zum Einsatz. Allerdings hat dieser Schritt zur Folge, dass dieser Test nicht mehr so optisch opulent daherkommt wie noch in den vorherigen Versionen des 3DMarks. Hätte man diesen wieder so hübsch gestalten wollen, wäre die Nutzung von größeren Texturen nötig gewesen, die wiederum für eine eintretende Limitierung durch die Bandbreite des Grafikkartenspeichers gesorgt hätten. Aber was tut man nicht alles für eine bessere Vergleichbarkeit...
Pixel Shader Test:
Der Pixel-Shader-Test von 3DMark06 ist eine Adaption der in Game-Test 3 vorkommenden Wände der Felsformationen. Diese gehören laut Futuremark zu den komplexesten Shadern im ganzen 3DMark und eignen sich somit besonders gut dafür, die Pixel-Shader-Leistung von Grafikkarten zu messen. Der Test selber zeigt also ein Teil dieser Felswand, wobei diese von einer sich bewegenden Lichtquelle illuminiert wird.
Vertex Shader Test:
Auch der Vertex-Shader-Test ist quasi ein alter Bekannter und schon seit 3DMark2001 im Portfolio des Programms. Da Futuremark seit 3DMark03 für alle Vertex-Berechnungen auch Vertex-Shader nutzt, gehört dieses Feature zu einem der wichtigsten in der 3DMark-Serie und ist neben der Füllrate ein wichtiger Bestandteil moderner 3D-Architektur. Um die Vertex-Shader-Leistung der Grafikkarten zu messen, nutzt Futuremark im 3DMark06 zwei verschiedene Tests. Der erste Test ist recht einfacher Natur. Hier muss die Grafikkarte sechs Seemonster mit jeweils knapp einer Millionen Vertices im Zusammenspiel mit nur einer Lichtquelle berechnen und transformieren. Eigentlich hätte dieser Test auch mit dem vergleichsweise alten Shader-Model 1.0 verwirklicht werden können. Da 3DMark06 aber komplett auf das SM 2.0/SM 3.0 aufbaut, baut auch dieser Test auf diesem auf.
Der zweite Test ist schon weitaus komplexer. Hier muss die Grafikkarte eine Vielzahl an Grashalmen transformieren, die jeweils einzeln vom Wind bewegt werden. Um dem Realismus nicht zu entsagen, bewegen sich die Halme im oberen Teil mehr als im unteren. Zwar wird die Bewegung der Gräser von der CPU berechnet, aber dieser Vorgang wurde von Futuremark so optimiert, dass diese kaum mehr Arbeit verrichten muss und die Hauptlast auf der Grafikkarte liegt. Um diesen Test nicht füllratenabhängig zu machen, ist die Distanz zwischen Betrachter und Grasnarbe recht groß gewählt worden.
Shader Particles Test:
Der „Shader Particles Test“ verwendet die Pixel-Shader der Grafikkarte zum Berechnen eines einfachen Partikelsystems, wobei zur Ausgabe des Ergebnisses „Vertex Texture Fetches“ benutzt werden. VTF ermöglicht es, dass der Vertex Shader Texturen direkt aus dem Texturspeicher ohne unnötige Umwege auslesen kann. Da jenes Feature von aktuellen Radeon-Karten nicht unterstützt wird, kann dieser Test nur von nVidia-Hardware in Form eines NV4x- oder G70-Chips durchlaufen werden. Mit diesem Test möchte Futuremark die zukünftige Entwicklung unterstützen, dass Physik-Aufgaben nicht mehr nur alleine der CPU überlassen werden, sondern auch von GPUs durchgeführt werden. Die Sequenz beinhaltet 409600 Partikel, die unter anderem einem simplen Gravitationssystem unterliegen.
Perlin Noise:
Dieser Feature-Test setzt auf arithmetische Berechnungen sowie „Texture Lookups“, die häufig in prozeduralen Texturen und Modellierungs-Techniken eingesetzt werden, um sowohl den Speicherverbrauch als auch die Speicherbandbreite zu senken. Der Perlin-Noise-Test nutzt 48 Texturberechnungen und 447 arithmetische Anweisungen, womit Futuremark nahe an die Minimalspezifikation eines Pixel-Shader-3.0-Beschleunigers kommt, die bei 512 Anweisungen liegt.
Batch Size Test:
Der Test im 3DMark06 ist wohl zweifellos der optisch fadeste Abschnitt im neuen Benchmark. Die Sequenz zeigt eine einfache und unoptimierte 3D-Animation, die in den heutigen Grafikkartentreibern des Öfteren einen Schwachpunkt darstellt. Grund dafür ist der Zustand, dass die meisten Spieleentwickler möglichst große Batches benutzen und somit lassen die Treiberprogrammierer kleine Batches gerne brach liegen. Der 3DMark06 beinhaltet insgesamt sechs Batch-Size-Szenen, die alle mit 128 Batches (Gittern) realisiert werden, wobei jeder Batch je nach Szene acht, 32, 128, 512, 2048 oder 32768 Dreiecke benutzt.