Erste Details zur GF100-Architektur

Dienstag, 19. Januar 2010
 / von Leonidas
 

Nachdem nach der nicht erfolgten Vorstellung des GF100-Chips aus nVidias kommender Fermi-Grafikchiparchitektur auf der CES zum Anfang Januar sich einige Enttäuschung breitgemacht hatte, sah sich nVidia wohl dazu gezwungen, nun doch vorab näheres zur kommenden DirectX11-Architektur von nVidia bekanntzugeben. Allerdings macht man derzeit nur einige weitere technische Details – sozusagen eine Grobübersicht der Architektur – öffentlich, Zahlen zu Taktfrequenzen und selbst nVidia-interne Spielebenchmarks gibt es jedoch noch nicht. Somit wird unser Wissensstand zum GF100 zwar erweitert, die entscheidenden Informationen fehlen aber weiterhin.

Prinzipiell gesehen stellt sich der GF100-Chip als das Spitzenprodukt der Fermi-Architektur (weitere Fermi-Chips – wohl GF102, GF104, GF106 und GF108 genannt – werden folgen) mit 512 Shader-Einheiten, 64 Textureneinheiten und 48 ROPs an einem 384 Bit DDR Speicherinterface (bis zu GDDR5) vor, wobei die Shader-Einheiten zwei FMA (Fused Multiply ADD) pro Takt und Shadereinheit berechnen können, was zwei Flop pro Takt und Shader-Einheit ergibt. Die Anzahl der Shader-Einheiten und das Speicherinterface waren vorher bekannt, nVidia überrascht allerdings mit der Anzahl der Textureneinheiten (TMUs) und Raster Operation Units (ROPs).

ATI RV870 nVidia GT200b nVidia GF100
Chipbasis ATI RV870, 2150 Millionen Transistoren in 40nm auf 334mm² Die-Fläche nVidia GT200b, 1400 Millionen Transistoren in 55nm auf 470mm² Die-Fläche nVidia GF100, ca. 3000 Millionen Transistoren in 40nm auf ca. 500mm² Die-Fläche
Technik DirectX 11, 1600 Shader-Einheiten, 80 TMUs, 32 ROPs, 256 Bit DDR Interface (bis GDDR5) DirectX 10, 240 Shader-Einheiten, 80 TMUs, 32 ROPs, 512 Bit DDR Interface (bis GDDR3) DirectX 11, 512 Shader-Einheiten, 64 TMUs, 48 ROPs, 384 Bit DDR Interface (bis GDDR5)
Spezial-Einheiten 1/5 der Shader-Einheiten (320) können dynamisch als SFU verwendet werden (womit diese Einheiten dann aber nicht mehr als reguläre Shader-Einheiten zur Verfügung stehen) 30 FMA-Einheiten + 60 SFUs 256 Load/Store-Einheiten + 64 SFUs
Shader-Leistung 4/5 der Shader-Einheiten: 1x FMA pro Takt, restliche 1/5 der Shader-Einheiten: 1x MADD pro Takt (jeweils 2 Flop/Takt/Einheit) 1x MADD + 1x MUL pro Takt (2+1 Flop/Takt/Einheit) 1x FMA pro Takt (2 Flop/Takt/Einheit)
Rechenleistung 2720 GFlops
(Radeon HD 5870)
1063 GFlops
(GeForce GTX 285)
Schätzung:
1400-1450 GFlops
Texturierleistung 68 MT/sec
(Radeon HD 5870)
52 MT/sec
(GeForce GTX 285)
Schätzung:
60-90 MT/sec
Bandbreite 154 GB/sec
(Radeon HD 5870)
159 GB/sec
(GeForce GTX 285)
Schätzung:
190-230 GB/sec

Bei den Textureneinheiten hatte man mehr erwartet (die bisherigen Spekulationen beliefen sich auf 128 Stück für den GF100-Chip), nachdem der GT200-Chip schon deren 80 Stück hatte und nachdem ATI mit dem RV870-Design ebenfalls auf 80 Stück aufgeschlossen hatte. nVidia wird die geringere Anzahl aber neben Effizienzsteigerungen auch dadurch ausgleichen, daß die TMUs beim GF100-Design – wie bisher schon die Shader-Einheiten – über eine eigene Taktfrequenz verfügen, welche höher liegt als der normale Chiptakt. nVidias GF100 wird demzufolge dann schon über vier relevante Taktraten verfügen: Der übliche Chip- und Speichertakt sowie daneben noch der Shadertakt und der TMU-Takt.

Allerdings ist dato nicht bekannt, wie hoch nVidia den Takt der Textureneinheiten gegenüber dem regulären Chiptakt zu legen gedenkt, nicht einmal ein ungefähres Verhältnis dessen ist bekannt. nVidia hat nur bekanntgegeben, daß laut deren eigenen Benchmarks die praktische Texturierpower des GF100-Chips zwischen 40 und 70 Prozent über der des GT200-Chips liegt – kein schlechter Wert, denn somit hat der GF100-Chips in etwa die Texturierpower von 110 bis 140 TMUs des GT200-Chips. Auch wenn der durchschnittliche Wert in der Praxis vielleicht eher am unteren Ende dieser Skala liegt, so scheint über die beiden Maßnahmen höhere Taktrate und Effizienzsteigerung in jedem Fall eine hochklassige Texturierleistung beim GF100-Chip herauszukommen.

Sehr interessant ist zudem die Erhöhung der Anzahl der Raster Operation Units (ROPs) auf 48. Die bisherigen Spitzendesigns RV870 und GT200 haben deren immerhin schon 32 Stück, während man im Mainstream- und Performance-Bereich noch mit 16 Stück (gut) auskommt. Zusätzlich mit Effizienzverbesserungen innerhalb der ROP-Einheiten sollte dies vor allem beim bisher auf nVidia-Karten verhältnismäßig langsamen 8x Anti-Aliasing zu Performanceverbesserungen führen. Hierzu hat nVidia auch schon ein paar Werte blicken lassen: Während das Spiel H.A.W.X. auf einer einer GeForce GTX 285 noch um gute 38 Prozent beim Wechsel von 4x auf 8x Anti-Aliasing einbricht, sollen es bei einer GF100-Karte nunmehr nur noch 9 Prozent Performanceverlust sein.

Selbst wenn sich nVidia für diesen Vergleich möglicherweise wieder das am besten skalierende Beispiel herausgesucht hat, so ist die Aussage, daß der GF100-Chip durch die überarbeiteten ROPs Fortschritte bei der Performance von Anti-Aliasing (speziell 8x) gemacht hat, doch haltbar. Schließlich lag hier eine Schwäche der bisherigen nVidia-Designs, welche die nVidia-Grafikchips in jedem Vergleich mit ATI-Beschleunigern immer wieder hart getroffen hat – womit nVidia endlich einmal etwas auf dieser Schiene tun musste. Daß ATI auch wirklich bei der Performance von 8x Anti-Aliasing geschlagen wird, ist damit natürlich nicht gesagt (daß können erst unabhängige Benchmarks belegen), aber zumindest sollte nVidia nunmehr in dieser Disziplin nicht mehr deutlich zurückhängen.

Das schon angekündigte neue 32x Anti-Aliasing basiert im übrigen weiterhin auf einem 8x Anti-Aliasing – benutzt wird hierfür einfach das 8x Anti-Aliasing, welche mit 24 weiteren Coverage Samples zu einem 32x Coverage Sampling Anti-Aliasing aufgewertet wird. Der Vorteil dieser Methode ist sicherlich die Sparsamkeit des Ansatzes, weil die CSAA-Modi in aller Regel nicht deutlich mehr Performance als die "normalen" AA-Modi kosten. Zudem dürften die 24 zusätzlichen Coverage Samples in ihrer Anzahl ausreichend sein, um auch in der Tat jene bessere Bildqualität zu erzeugen, welche nVidia für diesen Modus gegenüber dem normalen 8x Anti-Aliasing verspricht – was natürlich auch wiederum erst bewiesen werden muß. Schön ist zumindest, daß das Transparenz Anti-Aliasing nunmehr auch durchgehend mit dem Coverage Sampling Anti-Aliasing zusammenarbeitet.

Als markanteste Änderung des GF100-Designs zum GT200-Design erscheint uns allerdings die Unterteilung des Chips in vier Cluster (Graphics Processing Cluster, GPC). Bisher gab es bei den Grafikchips von ATI und nVidia natürlich auch schon diverse Ordnungen, allerdings wurde dies bislang noch nirgendwo so konsequent durchgezogen wie beim GF100-Chip. Der entscheidende Punkt bei den GF100-Clustern ist nämlich, daß die einzelnen Cluster noch unabhängiger voneinander agieren, da sie nunmehr jeweils über eine eigene Rasterengine verfügen. Bis auf den Zugriff auf das Speicherinterface und natürlich die Koordination der einzelnen Cluster scheint die eigentliche Grafikarbeit komplett unabhängig in den einzelnen Clustern zu laufen, diese verhalten sich also fast wie vier einzelne Grafikchips.

nVidia GF100-Architektur (1)

Dies mag sich auf den ersten Blick nach nur einer weiteren Spielart der bisher schon üblichen Chipunterteilungen anhören. Allerdings vermuten wir, daß nVidia hiermit in erster Linie das Auslastungsproblem bei sehr einheitenstarken Grafikchip-Designs angehen will. Ein gutes Beispiel für diese Problematik ist der RV870-Chip, welcher trotz nahezu doppelter Rechen-, Texturier- und ROP-Leistung gegenüber dem Vorgängerchip RV770 bei gleichzeitig faktisch nicht existentem Bandbreitenmangel doch nur um runde 50 Prozent schneller ist. Hier geht das mit dem R600-Chip angefangene und dann über die Chips RV670, RV770 und RV870 weitergetragene Grunddesign dann doch seinem Ende entgegen, da weitere Steigerungen der Anzahl der Ausführungseinheiten einer immer größer werdenden Ineffizienz gegenüberstehen.

nVidia GF100-Architektur (2)

Leider ist die höhere Effizienz dieser Cluster-Unterteilung mit gleichzeitig eigener Rasterengine für alle vier Cluster derzeit nur eine bessere Vermutung unsererseits, denn gerade zu diesem Punkt hat nVidia dato nichts bekanntgegeben. In jedem Fall sind weitere Vorteile dieser Anordnung bei kleineren Chips auf Basis der Fermi-Architektur zu sehen, ein Performance-Chip könnte beispielsweise schlicht auf zwei dieser Cluster basieren (256 Shader-Einheiten, 32 TMUs), ein Mainstream-Chip dann auf einem Cluster (128 Shader-Einheiten, 16 TMUs). Wie stark sich diese Anordnung speziell beim GF100-Chip bezüglich dessen Effizienz auswirkt, bleibt aber Spekulation und dürfte sich erst durch unabhängige Benchmarks (auf gleicher theoretischer Rechenleistung) gegenüber dem GT200-Chip zeigen. Das Potential, daß sich hier ein entscheidender Punkt des Fermi-Designs verbirgt, ist aber durchaus gegeben.

Eine weitere Besonderheit der Fermi-Architektur ist die hohe Tesselations-Leistung. nVidia spricht hierbei von einer Tesselation-Rohleistung von dem achtfachen dessen, was ATIs aktueller Chip RV870 erreicht – ermittelt natürlich in speziellen Tesselations-Benchmarks, welche nur Wert auf dieses Feature legen und daher in der Höhe der Werte keine Aussagekraft für reale Spiele bieten können. Allerdings gilt anzumerken, daß Tesselation auf realen Spielen durchaus ein die Performance stark beanspruchendes Feature sein kann, weil diese Berechnungen doch nicht ganz ohne sind. ATI scheint hier nur eine gewisse Sparvariante dieses Features zur reinen Erfüllung der DirectX11-Spezifikationen verbaut zu haben – was nVidia bei allen Spielen, welche DirectX11-Tesselation intensiv nutzen, zu einem gewissen Vorteil gereichen dürfte.

Allerdings war es das dann schon mit den wirklich berichtenswerten Details zum GF100-Design. Eine vollständige Betrachtung der Fermi-Architektur ist damit natürlich noch nicht möglich, weil wichtige Details wie beispielsweise alle Taktraten fehlen. Auch ist noch breitflächig unklar, was nVidia an bildqualitätsverbessernde Modi bringt bzw. wie diese verbessert wurden – heutzutage insbesondere für klare HighEnd-Chips eine höchst wichtige Disziplin, da es im HighEnd-Bereich in aller Regel mehr als genug überschüssige Performance gibt, die möglichst in eine bessere Bildqualität investiert werden sollte. nVidias "3D Vision Surround" mag hierzu ganz sicher nicht ausreichend sein, da es zwei Grafikkarten voraussetzt und zudem sowohl MultiMonitoring als auch stereoskopisches 3D derzeit noch klarste Nischenanwendungen sind.

Generell läßt sich jedoch sagen, daß nVidia mit dem GF100-Design mal wieder einen von ATI deutlich differierenden Ansatz verfolgt: Während ATI weiterhin (und wahrscheinlich das letzte mal) das R600-Design weiterentwickelt und um DirectX11-Fähigkeiten erweitert hat, ging nVidia einen Schritt weiter und löste jetzt schon grundsätzliche Probleme der letzten nVidia-Designs und verbaute zudem eine klar leistungsfähigere Unterstützung des wichtigsten DirectX11-Features (Tesselation). Damit scheint der GF100-Chip viel eher der Anfang einer (langjährigen) Serie an von ihm abstammenden Grafikchips zu sein – während die Gerüchteküche im Fall ATI darauf hindeutet, daß der nächste ATI-Chip dann ein generell neues Design sein dürfte.

Die nVidia-Unterlagen geben zwar noch deutlich mehr an Text wie Bildmaterial her – was viele Hardware-Webseiten auch wunderhübsch abgepinselt haben – doch muß hierbei klar sein, daß es sich faktisch um Marketingmaterial handelt, welche den Leser beschäftigen und gleichzeitig von allen wirklich wichtigen Fragen ablenken soll. Und diese sind nach wie vor nicht beantwortet worden – was mit einer reinen Präsentation der grundsätzlichen Grafikchip-Architektur natürlich auch schwer möglich ist. Damit gilt aber um so mehr die alte Weisheit, daß die Wahrheit irgendwo da draußen ist – in diesem Fall sind damit unabhängige Benchmarks gemeint, welche es nach derzeitigem Stand der Dinge aber nicht vor März geben wird.

Nachtrag vom 19. Januar 2010

Noch ein paar Anmerkungen: Die originalen nVidia-Unterlagen hierzu kann man bei HardOCP nachschlagen. Die PC Games Hardware hat dagegen alle Einzelbenchmarks kompakt notiert, die nVidia in irgendeiner Form zum GF100-Chip verlauten lassen hat. Leider ist davon vieles nur theoretischer Natur, insbesondere in den Vergleichen zur Radeon HD 5870. Bei den Hardware-Canucks hat man aus den zur Verfügung stehenden Benchmarks unter Far Cry 2 sogar Vergleichsdiagramme gemacht und eine Radeon HD 5870 vom eigenen Testsystem hinzugenommen. Dies ist zwar weit entfernt davon, exakt zu sein, dennoch scheint die Richtung generell zu stimmen. Denn wenn wir das ganze mit früheren Werten dieses Spiels seitens HT4U vergleichen, dann kommen dort für die Radeon HD 5870 wie auch für die GeForce GTX 285 verblüffend ähnliche Werte heraus.

Far Cry 2 GeForce GTX 285 Radeon HD 5870 GF100 Radeon HD 5970
1920x1200 "Ultra High" 4xAA 50,3 fps (nVidia)
52,0 fps (HT4U)
64,3 fps (HC)
65,8 fps (HT4U)
84,2 fps (nVidia) -
100,3 fps (HT4U)
2560x1600 "Ultra High" 4xAA 37,1 fps (nVidia) 44,6 fps (HC) 61,2 fps (nVidia) -

Insofern kann man diese Werte wohl sogar ernst nehmen, selbst wenn ein Benchmark natürlich kein Benchmark ist – in anderen Spielen kann es schon wieder ganz anders aussehen. Allerdings treffen diese Ergebnisse unter Far Cry 2 ziemlich die Vorab-Erwarungen, welche nVidia bisher für den GF100-Chip hat wecken können: Klar schneller als eine Radeon HD 5870 (unter Far Cry 2 um 28 Prozent schneller als diese), aber dennoch kein Gegner für eine Radeon HD 5970 (unter Far Cry 2 um 16 Prozent langsamer als diese). Es würde nicht überraschen, wenn andere GF100-Benchmarks letztlich im Schnitt auf eine sehr ähnliche Performance kommen würden, denn dies entspricht ungefähr dem Leistungspotential der präsentierten Grafikchip-Architektur, sofern nVidia vernünftige Taktraten für diese liefern kann. Welchen Stromverbrauch dies allerdings bedingt, ist angesichts der Stromverbrauchs-Werte der entsprechenden Tesla-Beschleuniger (225W TDP) noch eine der großen offenen Fragen zum GF100-Chip.