> > > > Tile Based Rasterization als Geheimrezept hinter der Maxwell/Pascal-Architektur enthüllt

Tile Based Rasterization als Geheimrezept hinter der Maxwell/Pascal-Architektur enthüllt

DruckenE-Mail
Erstellt am: von

nvidia 2013Ein Trend der vergangenen GPU-Architekturen von AMD und NVIDIA: Zwar stellen die Hersteller der Presse möglichst viele Informationen zu neuen Funktionen zur Verfügung, bei den Details zur Implementation der einzelnen Shadereinheiten werden die Hersteller aber plötzlich recht wortkarg. Der Grund ist ganz einfach, man will dem Konkurrenten keine Hinweise auf die Optimierungen geben und diese werden immer wichtiger, wenn die Effektivität gesteigert werden soll. Dabei spielt der Umstand eine Rolle, dass AMD und NVIDIA lange auf die Fertigung in 28 nm angewiesen waren.

David Kanter von Real World Tech ist ein ausgesprochener GPU-Experte und hat sich genauer angeschaut, welche Änderungen NVIDIA bei der Maxwell- und Pascal-Architektur im Vergleich zur Fermi- oder Kepler-Architektur vorgenommen hat. NVIDIA selbst sprach beim Launch der 1. Maxwell-Generation von einem Leistungsplus von 35 % bei den Shadern, bei Pascal soll sich die Leistung auf den einzelnen Shader bezogen abzüglich der Änderung der Fertigung von 28 auf 16 nm nicht mehr geändert haben. Umso mehr ein Grund sich einmal anzuschauen, welche Änderungen NVIDIA nun vorgenommen hat, um eine solche Steigerung zu erreichen.

Software zur Darstellung der Tile Based Rasterization
Software zur Darstellung der Tile Based Rasterization

Offenbar wendet NVIDIA bei der Maxwell- und Pascal-Architektur das sogenannte Tile Based Rendering bzw. eine Tile Based Rasterization an. Das Tile Based Rendering ist dabei keine neue Erfindung oder eine solche, die sich NVIDIA exklusiv zu Eigen macht. Imagination Technology oder ARM wenden das Tile Based Rendering bei den PowerVR- und Mali-Designs schon seit geraumer Zeit an. Das Gegenkonzept zu Tile Based Rendering ist das Immediate Mode Rendering. Dabei wird der Rasterization-Prozess über den kompletten Frame angewendet, während beim Tile Based Rendering der Frame in viele kleine Tiles, also rechteckige Blöcke aufgeteilt und der Rasterization-Prozess durchgeführt werden kann. Typischerweise sind diese Tiles 16x16 oder 32x32 Pixel groß. Diese Parallelisierung kommt den aktuellen GPUs mit mehreren Tausend Shadern natürlich positiv entgegen. Das Immediate Mode Rendering hingegen ist besonders hinsichtlich des Speicherbedarfs recht aufwendig.

Das Tile Based Rendering ist auch nur ein Subset einer Technik namens TBDR (Tile Based Deferred Renderers). Diese wurde beispielsweise von den 3dfx-Grafikkarten angewendet. 3dfx hatte sich die Technologie von Gigapixel für 150 Millionen US-Dollar zugekauft, die wiederum mit dem GP-1-Chip in den 90zigern für Aufregung sorgten. Jahre später kaufte NVIDIA die Voodoo-Macher 3dfx auf, eine Investition, die sich offensichtlich ausgezahlt hat.

Doch das Tile Based Rendering hat nicht nur Vorteile. Nahezu alle Spiele und weitere Anwendungen sind auf ein Immediate Mode Rendering ausgelegt und dahingehend optimiert. Für die Maxwell- und Pascal-Architektur musste sich NVIDIA daher einige Tricks einfallen lassen, damit das Tile Based Rendering seine Effektivität ausspielen kann. Dazu gehört auch spezieller DirectX-Code, der sich spezifisch an die Triangle-Rasterization richtet. Außerdem belässt das Tile Based Rendering Bereich der Grafik-Pipeline unangetastet. Dazu gehört das Tessellation, Geometry-Setup, Shader und vieles mehr.

Software zur Darstellung der Tile Based Rasterization
Software zur Darstellung der Tile Based Rasterization

Neben NVIDIA verwendet wie gesagt auch Imagination Technology und ARM das Tile Based Rendering. Verwendet wurde und wird es aber auch von Intel bei der Larabee-GPU. Die Microsoft Xbox 360 und Xbox One besitzen 10 bzw. 32 MB eDRAM/eSRAM ein. Dieser eigentlich zu kleine Speicher kann einen kompletten Frame gar nicht fassen. Also wird On-Chip-Speicher (Cache) verwendet, um die Tiles eines Tile Based Rendering zu speichern, was bei Auflösungen von 720p oder 1080p bei 4x MSAA auch notwendig wird.

Einen ähnliche Methode wendet wohl auch NVIDIA an. Speicherbandbreite ist ein wichtiger Faktor bei der Leistung moderner GPUs geworden. Sowohl AMD als auch NVIDIA arbeiten an immer effektiveren Speicherkomprimierungen, doch die beste Einsparung der Speicherbandbreite ist, wenn keine Daten über dieses Interface geschrieben werden muss und genau hier kommt Tile Based Rendering ins Spiel. Da die dazugehörigen Daten in Speichern in der GPU verbleiben müssen, erklärt dies auch den großen Sprung der L2-Caches. Bei der Kepler-Architektur sah NVIDIA 256 kB als ausreichend an, mit Maxwell machte man den Sprung auf 2.048 kB.

Weniger Schreib- und Lesevorgänge im Speicher bedeutet auch eine höhere Effizienz hinsichtlich des Verbrauchs. Als Teil der Optimierungen, die in diesen Bereich für Maxwell und Pascal eingeflossen sind, spielt damit auch das Tile Based Rendering eine Rolle.

Neben der Technologie als solches bleibt interessant, dass NVIDIA mit der Einführung der Maxwell- und Pascal-Architektur keine Details zum Tile Based Rendering veröffentlicht hat. So dauerte es nun auch einige Jahre, bis David Kanter darauf gestoßen. Die zur Analyse verwendete Software ist übrigens auf GitHub zu finden. Das Tile Based Rasterization ist auch nur ein kleiner Teil des Rezeptes, welches die von NVIDIA vorgenommenen Optimierungen in der Architektur aufzeigt. Vieles ist und bleibt im Verborgenen.

Social Links

Ihre Bewertung

Ø Bewertungen: 4

Tags

Kommentare (11)

#2
customavatars/avatar253208_1.gif
Registriert seit: 27.04.2016

Banned
Beiträge: 903
Mal sehen was dran ist, aber wer weiss, vielleicht unterstützt das gcn4 oder gncn5 eh auch, laut AMD wurde bei gcn4 ja viel erneuert.

Aber am Ende bestimmen eh die Konsolen was genutzt wird ... Spiele müßten zunächst auch angepasst werden, wird so schnell nichts passieren ...
#3
customavatars/avatar44491_1.gif
Registriert seit: 08.08.2006
Weinböhla (Sachsen)
Moderator
Beiträge: 31944
@Don, kannst du das mal etwas näher/spezifischer ausführen?
Der Part mit der XBox 360/One ist irgendwie ziemlich verwirrend... Denn wenn die One es kann, kann es AMD auch. Die One nutzt schließlich ein GCN Backend...

Und so recht erschließt sich mir noch nicht aus dem Text, wo das "Geheimrezept" nun wirklich ist...
Es ist einfach doch "nur" ein etwas anderer Ansatz.

Zitat Freak 1000;24807548
Aber am Ende bestimmen eh die Konsolen was genutzt wird ... Spiele müßten zunächst auch angepasst werden, wird so schnell nichts passieren ...


Das eine hat mit dem anderen nicht viel gemein... Entscheidend ist eher, was macht der Hersteller der GPU mit den zugrunde liegenden Anforderungen. Mit Maxwell/Pascal gelingt es NV offenbar, das Prinzip aufgehen zu lassen. Auch wenn ich skeptisch bin, dass dieser Punkt hier wirklich das "Geheimrezept" sein soll.
#4
customavatars/avatar3377_1.gif
Registriert seit: 15.11.2002
www.twitter.com/aschilling
[printed]-Redakteur
Tweety
Beiträge: 29104
Zitat Freak 1000;24807548
Mal sehen was dran ist, aber wer weiss, vielleicht unterstützt das gcn4 oder gncn5 eh auch, laut AMD wurde bei gcn4 ja viel erneuert.

Aber am Ende bestimmen eh die Konsolen was genutzt wird ... Spiele müßten zunächst auch angepasst werden, wird so schnell nichts passieren ...


Ich glaube du hast nicht ganz verstanden, dass diese Technik bei NVIDIA jetzt schon dafür verantwortlich ist, dass eine Steigerung bei der Effizienz erreicht wurde.
#5
customavatars/avatar188889_1.gif
Registriert seit: 20.02.2013
In Europa daheim :-)
Hauptgefreiter
Beiträge: 251
FYI.

Konsolen bestimmen derzeit nichts ;)
das war einige Jahre so, aber aktuell ist jedes Konsolengame erstmal auf PC lauffähig bevor es auf der Konsole läuft. Die neuen Möglichkeiten etc. haben jedes Studio zum PC wieder getrieben in den letzten Jahren.

Ein sehr gutes Beispiel ist die Tekken Reihe, der neueste Ableger auf der Gamescom 2016 wird auf PC gezeigt da der Code für Konsole noch nicht fertig ist.

Schaut man sich die heutigen Konsolen an, sind es Multimediaboxen die eine Abgespeckte Form des PCs darstellen.

Sony versucht sich gegen diesen Trend zu wehren, klar vor allem nachdem VAIO veräußert wurde wollen die auch nicht back to the roots.

Microsoft, Nintendo und Apple fahren absolut den PC Weg und nutzen die Optionen die seitens Soft- und Hardware gegeben werden.

Also Thema Erst Konsole dann PC ist seid 2014 Essig - wir sind back to the roots. Nur weil ein Game im Menü noch Konsolenseitig designed ausschaut, hat das nichts zu sagen - da dies heute eh dem Trend der Vereinfachung und Verschlankung geschuldet ist - Stichwort: Clean & Reduziertes Design mit nativer Menüführung.

ob AMD die Funktionalität aufgreift wage ich zu bezweifeln, aber dass bedeutet nicht es gibt nur einen Weg nach Rom, gibt ja bekanntlich immer mehr als nur einen Weg.
#6
Registriert seit: 14.08.2014

Stabsgefreiter
Beiträge: 370
@Don: Okay, sagen wir mal, ich verstehe, daß bei Nvidia bei einem Zwischenschritt des Renderings eine Aufteilung des Bildes in Kacheln für eine höhere Effizienz der Karte sorgt. Ich frage mich allerdings, ob damit auch Nachteile verbunden sind, z.B. - ähnlich wie bei JPEG - üblicherweise unsichtbare, aber dennoch vorhandene Kanten, wo die Kacheln wieder zusammengefügt werden. Ist da irgendwas bekannt oder zumindest denkbar?
#7
customavatars/avatar38507_1.gif
Registriert seit: 12.04.2006

Flottillenadmiral
Beiträge: 5834
So wie ich es verstehe, geht es hier um verschiedene Sachen:

(1) Immediate Mode Rendering
(2) Tile Based Deferred Rendering
(3) Tile Based Immediate Mode Rendering

Immediate Mode ist also nicht gleich Immediate Mode.

(1) wird typischerweise für High-Performance GPUs verwendet, (2) und (3) für mobile GPUs. AMD hat das Thema TBR schon seit langer Zeit auf der Agenda. Hier werden auch die Gründe für TBR nochmal explizit hervorgehoben:
Zitat
Why is TBR so Popular in Embedded Devices?
• Reduced bus bandwidth
• Lower polygon counts in mobile games are an ideal match for TBR


David Kanter behauptet nun, dass AMD (1) verwendet und Nvidia mit (3) was neues implementiert hat. Beides ist mMn falsch.

Dass David Kanter behauptet, AMD würde (1) nutzen, liegt vermutlich einfach daran, dass er eine ziemlich alte Radeon als Vergleich heranzieht, die noch nicht mal auf der GCN Architektur basiert. Mit meiner R7 260X (GCN Gen2) zeigt das Tool jedenfalls was anderes. Schaut definitiv nach TBR aus:





Und (3) ist nicht was völlig neues und wird auch von anderen Herstellern genutzt, laut Wikipedia zB von ARM Mali und Qualcomm Adreno (ehemals AMD).

Mehr gibt dann der Vergleich von Kanter leider nicht her. Was hier wie effizient arbeitet, bleibt ungeklärt.



edit:

Hier habe ich noch einen Screen einer Skylake GPU (i5-6500 / HD 530). Intel scheint in der Tat kein TBR zu nutzen. Schaut ähnlich wie bei der alten Radeon von Kanter aus.

#8
customavatars/avatar193800_1.gif
Registriert seit: 22.06.2013
Berlin
Stabsgefreiter
Beiträge: 368
Am Ende spielt die Hardwarelösung im Detail keine Rolle weil die Leistung von suboptimalen Schnittstellen wie DirectX und von schlecht programmierten Spieleengins gefressen wird. Bekanntlich arbeiten die Spieleschmieden eng und i.d.R. selektiv mit AMD, Microsoft, Intel und Nvidia zusammen. Jeder Spieler kennt die Brandings wie "The way its meant to be played" oder "Intel inside" die beim Spielestart präsentiert werden.
Was nützt dann der Vorteil der Hardware von Nvidia wenn das Lieblingsspiel von einer Spieleschmiede kommt die vornehmlich mit AMD zusammenarbeitet und ihr Produkt eben auf AMD-Technik optimiert hat. Und dann kommt noch die Frage wie gut (z.B. neue Doom) oder schlecht (Gothic 3) überhaupt programmiert wurde.
#9
customavatars/avatar43872_1.gif
Registriert seit: 31.07.2006

Fregattenkapitän
Beiträge: 2859
Das stimmt so einfach nicht. Es gibt Ausnahmen, wie viele GW-Implementationen oder auch direkte Unterstützung wie bei ROTTR, jedoch erschöpft sich das meist damit auch. Wenn beispielsweise sich ein Hersteller dazu entscheidet AsyncCompute einzusetzen, so handelt der nicht pro-AMD. Zwar unterstützen momentan nur AMD-GPUs überhaupt echtes AsyncCompute (Pascal kann nur Preemtion und Maxwell kann es gar nicht), aber der id-Technikchef hat ja schon klargemacht, in welche Richtung das gehen soll, nämlich zu massiven Einsatz von AsyncCompute, um deutlich mehr Parallelität und Effizienz zu erreichen mit dieser Technologie, id besitzt aber keine erkennbare Hardwarenähe z.Z. Das ist halt eine OoO-Implementation für Grafikkarten, das ist so revolutionär wie nur wenige Dinge im Grafikbereich, beispielsweise die Einführung der Geometrieberechnung auf der GPU oder die Einführung der Shader.
#10
Registriert seit: 20.01.2011

Stabsgefreiter
Beiträge: 381
Async Compute ist aber auch nur eine von vielen neuen Technologien, welche die neuen APIs bereitstellen. Es wurde viel in den Medien diskutiert, weshalb es jetzt viel umwettert wird, aber es gibt auch neue Speicherverwaltungs/Zugriffs-Technologien, welche genauso wichtig sein können.

Die größte Crux ist, dass die Entwickler wieder anfangen müssen, im Low-Level Fahrwasser zu schwimmen, was ihnen dank DX über all die Jahre abgenommen worden ist. Square Enix macht zum Beispiel (mit Tomb Raider) den Ansatz, ein bereits fertiges Spiel umzuschreiben (Da kann man nicht mehr viel falsch machen) und den Wissensgewinn dann in zukünftige Spiele zu stecken - ID versucht es, von Anfang an das Spiel so zu designen, dass es auf die neuen APIs passt. Und dann wird es da noch viele Zwischenschritte geben.

So eine eigene Engine zu schreiben, kann mehrere Jahre dauern und wenn die fertig ist, ist sie evtl. schon wieder veraltet. Und da leuchten dann wieder Sachen wie Unreal auf.

Es ist zur Zeit so viel in Bewegung, dass du kaum sagen kannst, wo Henne und Ei ist - bis die ersten Spiele mit 100% Unterstützung der neuen APIs rauskommen (und nicht nen Kompatibilitäts-Deckel aufgesetzt bekommen) vergehen imho noch mind. 12 Monate, auch wenn Doom hier schon gut vorgelegt hat. DANN können wir auch anfangen, AMD mit NVidia zu vergleichen.
#11
customavatars/avatar22571_1.gif
Registriert seit: 06.05.2005

Fregattenkapitän
Beiträge: 2829
Wenn ich das richtig verstehe braucht diese Technologie sofern nicht direkt unterstützt zwingend DirectX Workarounds um überhaupt zu funktionieren. Verständlich, dass man da nicht auf den low-level Zug aufspringen will.
Um Kommentare schreiben zu können, musst Du eingeloggt sein!

Das könnte Sie auch interessieren:

Roundup: 5x GeForce GTX 1070 mit Custom-Design im Test

Logo von IMAGES/STORIES/GALLERIES/REVIEWS/2016/5X-GTX1070/GTX1070_CUSTOM_ROUNDUP-TEASER

Nachdem wir bereits eine Reihe von Boardpartner-Karten der NVIDIA GeForce GTX 1080 ausführlich getestet haben, holen wir gleiches nun für das kleinere Schwestermodell nach, denn auch von der NVIDIA GeForce GTX 1070 gibt es viele Custom-Modelle mit höheren Taktraten, eigenen Kühlsystemen und... [mehr]

Drei Custom-Modelle der GeForce GTX 1060 im Test

Logo von IMAGES/STORIES/GALLERIES/REVIEWS/2016/3X-GTX1060/GTX1060_ROUNDUP_TEST-TEASER

Anders als bei der GeForce GTX 1080 und GeForce GTX 1070 trudelten wenige Stunden nach unserem Test zur Founders Edition der NVIDIA GeForce GTX 1060 schon die ersten Boardpartner-Karten mit teils höheren Taktraten, eigenem Kühlsystem und überarbeitetem Platinenlayout ein. Sie dürften... [mehr]

NVIDIA GeForce GTX 1080 mit Pascal-Architektur im XXL-Test

Logo von IMAGES/STORIES/LOGOS-2016/GEFORCE-GTX-1080

Heute ist es soweit: NVIDIA läutet mit der GeForce GTX 1080 und GTX 1070 auf Basis der Pascal-Architektur den diesjährigen Neustart bei den Grafikkarten ein. In Kürze wird wohl auch AMD seinen Beitrag zu diesem Thema leisten. Vor zehn Tagen lud NVIDIA die gesammelte Fachpresse nach Austin ein... [mehr]

Roundup: 5x GeForce GTX 1080 im Custom-Design im Test

Logo von IMAGES/STORIES/LOGOS-2016/GEFORCE-GTX-1080

Nachdem wir uns die Founders Edition der GeForce GTX 1080 und GeForce GTX 1070 bereits angeschaut haben, folgen nun fünf Retail-Modelle, die wir in aller Ausführlichkeit unter die Lupe nehmen wollen. Aus den vielen Boardpartnern und unterschiedlichen Modellen haben wir uns solche von ASUS, EVGA,... [mehr]

AMD Radeon RX 480 im Test

Logo von IMAGES/STORIES/GALLERIES/REVIEWS/2016/RADEON-RX480/RADEON-RX480-REFERENCE-LOGO

Es ist also soweit: AMD startet die großangelegte Zurückeroberung des Grafikkartenmarktes mit der Radeon RX 480, die als erste Grafikkarte der Polaris-Generation mit gleichnamiger Architektur erscheint und die wir uns genauer anschauen können. Dabei versucht sich AMD an einem anderen Ansatz im... [mehr]

PowerColor Radeon RX 480 Red Devil im Test

Logo von IMAGES/STORIES/GALLERIES/REVIEWS/2016/POWERCOLOR-RX480/POWERCOLOR-RX480REDDEVIL-LOGO

Mit der Radeon RX 480 will AMD zurück zu alter Stärke und hat daher über Monate hinweg die PR-Trommel geschlagen. Letztendlich dabei herausgekommen ist eine sehr gute Karte für einen niedrigen Preis, die aber nicht in allen Bereichen zu überzeugen weiß. Wohl größtes Manko der Karte sollte... [mehr]