Seite 2: Maxwell-Architektur und die GeForce GTX Titan X

Innerhalb der Architektur der SMMs hat NVIDIA im Vergleich zur "Kepler"-Architektur und damit der früheren Titan-Modelle einige Änderungen vorgenommen, die das Performance/Watt-Verhältnis um den Faktor zwei verbessern sollen. Dazu gehört, dass die mit "Kepler" eingeführten SMX-Cluster mit 192 Shadereinheiten (CUDA-Kerne) neu angeordnet wurden. Grund hierfür ist die Tatsache, dass eine Control Logic für 192 Shadereinheiten sehr komplex konstruiert werden muss. Mit "Maxwell" wird der Maxwell Streaming Multiprozessor, in der Folge auch SMM genannt in vier Blöcke zu jeweils 32 Shadereinheiten aufgeteilt. Insgesamt stehen als pro SMM 128 Shaderheinheiten zur Verfügung. Die weniger komplexe Control Logic sorgt auch dafür, dass einzelne Aufgaben effizienter an die Kerne verteilt werden können. Dies sorgt dafür, dass ein einzelner Shader bis zu 35 Prozent schneller arbeitet als sein Pendant auf "Kepler"-Basis. Als Testballon diente dazu die GM107-GPU, die man bereits vor einem Jahr auf der GeForce GTX 750 und GTX 750 Ti verbaute (Hardwareluxx-Artikel). Entsprechend auf die GM204- und GM206-GPU hochskaliert zeigte sich die gute Effizienz auch auf der GeForce GTX 980 und GTX 970 (Hardwareluxx-Artikel) sowie der erst kürzlich erschienen GeForce GTX 960 (Hardwareluxx-Artikel).

Die GM200-GPU der GeForce GTX Titan X bietet das sogenannte Full Feature Set der "Maxwell"-Architektur. Der Chip bietet also sämtliche geplanten Strukturen und Ausbaustufen. Dazu gehört neben den 3.072 Shadereinheiten auch ein 3 MB großer L2-Cache, der bei der GeForce GTX 980 2 MB groß ist und bei der GeForce GTX 970 aufgrund der Einschränkungen der Speicherbandbreite gar nur 1.792 kB misst. Verblieben ist man aber bei einer Bandbreite von 512 Byte pro Takt zu diesem Cache. Ebenfalls keinerlei Unterschiede gibt es bei der Double-Precision-Performance, die bei 1/32 der Single-Precision-Performance von 7 TFLOPS liegt. Dedizierte Double-Precision-Einheiten gibt es bei der jetzigen "Maxwell"-Implementierung also noch nicht. Die GTC 2015 wird zeigen, ob sich daran noch was ändern wir und eine eventuelle GM210-GPU hier entsprechende Änderungen vorzuweisen hat, die für Spieler aber keinerlei Rolle spielen.

Blockdiagramm der GM200-GPU
Blockdiagramm der GM200-GPU

Im Vergleich zur Maxwell-Architektur der 1. Generation leicht vergrößert hat man den Shared Memory eines jeden SMM. Dieser ist nun 96 kB und nicht mehr nur 64 kB groß. Ebenfalls eine Rolle spielen soll die Polymorph Engine in Version 3.0. Die PolyMorph-3.0-Engine ist maßgeblich verantwortlich für Vertex-Fetch, Tessellation, Attribute-Setup, Viewport-Transform und den Stream-Output. Sind die SMM-Cluster und die PolyMorph-3.0-Engine durchlaufen, wird das Ergebnis an die Raster-Engine weitergeleitet. In einem zweiten Schritt beginnt dann der Tessellator mit der Berechnung der benötigten Oberflächen-Positionen, die dafür sorgen, dass je nach Abstand der nötige Detailgrad ausgewählt wird. Die korrigierten Werte werden wiederum an das SMM-Cluster gesendet, wo der Domain-Shader und der Geometrie-Shader diese dann weiter ausführen. Der Domain-Shader berechnet die finale Position jedes Dreiecks, indem er die Daten des Hull-Shaders und des Tessellators zusammensetzt. An dieser Stelle wird dann auch das Displacement-Mapping durchgeführt. Der Geometrie-Shader vergleicht die errechneten Daten dann mit den letztendlich wirklich sichtbaren Objekten und sendet die Ergebnisse wieder an die Tessellation-Engine für einen finalen Durchlauf. Im letzten Schritt führt die PolyMorph-3.0-Engine die Viewport-Transformation und eine perspektivische Korrektur aus. Letztendlich werden die berechneten Daten über den Stream-Output ausgegeben, indem der Speicher diese für weitere Berechnungen freigibt. Mit diesem Prozess verbunden sind zahlreiche Render-Features, auf die wir auf den kommenden Seiten aber noch ausführlich kommen.

Noch einmal zurück auf die einzelnen SMM-Blöcke: Jedem 32er Block stehen ein Instruction Buffer und ein Warp Schedular zur Verfügung. Jeweils zwei Dispatch Units haben Zugriff auf 16.384 Register mit jeweils 32 Bit. Auch hier lohnt wieder ein Blick auf die "Kepler"-Architektur. 128 Shaderheinheiten werden mithilfe von vier Warp Schedulern und acht Dispatch Units über 65.536 Register bei ebenfalls 32 Bit die Daten bzw. Rechenaufgaben zugeteilt. Jeder Shadereinheit stehen bei Maxwell also theoretisch 512 Register zur Verfügung, während es bei Kepler nur rund 341 sind. Eben solche Maßnahmen sollen auch dazu führen, dass jeder Shader bis zu 35 Prozent schneller arbeiten kann. Weiterhin einen Einfluss hat auch das Verhältnis zwischen Shadereinheiten und den sogenannten Special Function Units (SFU). Während dies bei Kepler 6/1 beträgt, liegt das Verhältnis bei Maxwell bei 4/1. Gleiches gilt auch für die Load/Store Units (LD/ST).

Natürlich bietet die GeForce GTX Titan X aufgrund der Verwendung der "Maxwell"-Architektur auch sämtliche Features, die wir von der GeForce GTX 980, GTX 970 und GTX 960 kennen. Weitere Details dazu sind in den bisher erschienen Artikeln zu finden:

- 256 Bit Speichercontroller - Speicherkomprimierung
- DSR (Dynamic Super Resolution)
- MFAA (Multiframe Sampled Anti-Aliasing)
- VXGI (Voxel Global Illumination)
- DirectX 12
- GameWorks und PhysX
- VR Direct
- H.265 und 4K-Streaming

GeForce GTX Titan X im professionellen Umfeld

Die verschiedenen Modelle der GeForce GTX Titan wurden von NVIDIA auch immer für den professionellen Einsatz vorgesehen. Wer auf bestimmte Funktionen der Quadro- und Tesla-Treiber verzichten kann, kann hier auch viel Geld sparen. So verbauten nicht nur Privatpersonen de Varianten der GeForce GTX Titan in ihrem professionellen Arbeitsumfeld, sondern auch Unternehmen und Bildungseinrichtungen. Beispiele dazu sind zahlreich vorhanden, allerdings ist es schwer den Überblick zu behalten und NVIDIA macht keinerlei Angaben darüber, wie die Aufteilung zwischen Spieler- und Profi-Anwendung aussieht.

Der zur Verfügung stehende Speicher ist sicherlich ein entscheidendes Merkmal in diesem Bereich und hier ist die GeForce GTX Titan X mit ihren 12 GB Grafikspeicher sicherlich nicht schlecht aufgestellt. Wer aber besonderen Wert auf die Integrität der darin befindlichen Daten legt, wird ohne ECC auskommen müssen. Außerdem fehlt es der bisherigen "Maxwell"-Umsetzung an speziellen Double-Precision-Einheiten, welche Rechenaufgaben mit doppelter Genauigkeit ausführen können. NVIDIA gibt die Single-Precision-Performance mit 7 TFLOPS an. Bei einem Verhältnis von 24/1 für SP- zu DP-Einheiten liegt die Double-Precision-Performance bei nur 291 GFLOPS.

Vergleich der SP- und DP-Performance
Grafikkarte SP-Performance DP-Performance
GeForce GTX Titan X 7 TFLOPS 291 GFLOPS
GeForce GTX Titan Z 8,122 TFLOPS 2.707 GFLOPS
GeForce GTX Titan Black 5,121 TFLOPS 1.707 GFLOPS
GeForce GTX Titan 4,5 TFLOPS 1.500 GFLOPS
Quadro K6000 5,196 TFLOPS 1.732 GFLOPS
Tesla K40 4,291 TFLOPS 1.430 GFLOPS
Tesla K80 6,992 TFLOPS 2,91 GFLOPS
Radeon R9 290X 5,632 TFLOPS 320 GFLOPS
Radeon R9 295X2 11,466 TFLOPS 640 GFLOPS
FirePro W9100 5,237 TFLOPS 2618 GFLOPS

Hier hatte die "Kepler"-Architektur noch deutlich mehr anzubieten. Dies machte die GeForce GTX Titan (Black) und GeForce GTX Titan Z auch zu einer echten Alternative in diesem Bereich. Wer also weiterhin Wert auf eine hohe Leistung bei doppelter Genauigkeit legt, wird mit der aktuellen "Maxwell"-Umsetzung nicht glücklich werden. Denkbar ist aber, dass NVIDIA das Design entsprechend anpasst und als GM210-GPU auf den Markt wirft. Vielleicht werden wir bereits während der GTC 2015 mehr dazu hören. Wir erhoffen uns auch weitere Details zur Anwendung der GeForce GTX Titan X im professionellen Umfeld.

GPU-Z-Screenshot der GeForce GTX Titan X
GPU-Z-Screenshot der GeForce GTX Titan X

Der GPU-Z-Screenshot bestätigt die eben gemacht Angaben auch noch einmal. Aufgrund fehlender Datenbank-Einträge für die Karte bzw. unterschiedliche Teiler in der Hardware selbst kann es natürlich zu leicht veränderten Anzeigen in der Software kommen.

Gegenüberstellung von Temperatur und Takt
Spiel Temperatur Takt
The Elder Scrolls V Skyrim 82 °C 1.164 MHz
Company of Heroes 83 °C 1.151 MHz
Grid 2 82 °C 1.151 MHz
Metro: Last Light 83 °C 1.126 MHz
Crysis 3 82 °C 1.151 MHz
Battlefield 4 83 °C 1.138 MHz
Bioshock: Infinite 82 °C 1.164 MHz
Tomb Raider 83 °C 1.151 MHz

Wie üblich schauen wir uns das Taktverhalten der Karte auch in der Praxis etwas genauer an, denn mit Einführung von GPU-Boost und PowerTune auf Seiten von AMD sind die Angaben des Taktes immer nur ein Richtwert, die unter ganz bestimmten Bedingungen erreicht werden. Für die GeForce GTX Titan X bedeutet dies, dass sie vor allem mit dem Temperatur-Limit in Kontakt kommt. Dieses ist von NVIDIA mit 83 °C festgelegt. Erreicht die Karte dieses Limit, taktet sie herunter, um die Temperatur nicht weiter zu überschreiten. In den Meisten Benchmarks erreichen wir diese Temperatur nach einer Aufwärmphase auch, was dazu führt, dass wir unterschiedliche Taktraten sehen. Diese bewegen sich in unseren Tests zwischen 1.126 und 1.164 MHz. NVIDIA gibt einen Boost-Takt von 1.075 MHz an, so dass wir uns mindestens 50 MHz über den Angaben von NVIDIA bewegen.

Das Power-Limit von 250 Watt war zu keinem Zeitpunkt ein Problem. Laut verschiedenster Tools bewegt sich die Karte bei einer TDP-Auslastung von 90 - 95 Prozent während sie am Temperatur-Limit arbeitet. Sorgen wir durch Erhöhung der Lüfterdrehzahl dafür, dass die GPU unter ihr Temperatur-Ziel fällt bzw. erhöhen wir das Temperatur-Ziel selbst, taktet die Karte mit 1.177 MHz ohne ein manuelles Overclocking.