Big Navi - der Grafikchip hinter AMDs Radeon RX 6800/6900

Die Radeon 6000 bringt AMD wieder zurück ins Geschäft der High-End-Grafikkarten. c't schaut auf einige Technikaspekte des Navi21-Grafikchips ("Big Navi").

In Pocket speichern vorlesen Druckansicht 46 Kommentare lesen

(Bild: c't)

Lesezeit: 8 Min.
Inhaltsverzeichnis

Die Magie der drei Radeon RX 6000 steckt im Grafikchip, dem Navi21 oder, wie er auch genannt wird, Big Navi. Dessen Eckdaten sind schnell genannt: Hergestellt bei TSMC mit 7-Nanometer-Technik (was auch sonst?), 519 Quadratmillimeter groß und mit 26,8 Milliarden Transistoren versehen. Darin bringt AMD 80 Compute Units mit je 64 Shader-Rechenkernen unter.

Wie schafft AMD es trotzdem, den Chip, der in der RX 6800 XT immerhin mehr als doppelt soviel Rechenleistung aufbietet wie der Navi10 aus der RX 5700 XT, adäquat mit Daten zu versorgen?

Beim Grafikspeicher selbst lässt AMD jedenfalls die Kirche im Dorf und vertraut auf Altbewährtes: 16 GByte GDDR6-RAM an einem Speicherbus mit 256 parallelen Datenleitungen. Lediglich dessen Datenrate liegt mit 16 GBit pro Sekunde etwas höher als bei der Radeon RX 5700 (XT), sodass nun nominell 512 GByte/s auf dem Datenblatt stehen statt 448. Das hilft, den Preis nicht in die Höhe zu treiben.

Einen ersten Test der Radeon RX 6800 und 6800 XT finden Sie ebenfalls auf heise online. Den vollständigen Test mit weiteren Details, etwa zu Smart Access Memory, in der kommenden c't-Ausgabe 26/2020.

Eine wesentliche Komponente von Big Navi ist der Infinity Cache, kurz IC. Dabei handelt es sich um einen für Spiele und Anwendungen transparenten Last-Level-Cache, der die für Grafikchips eine unerhörte Größe von 128 MByte hat und von 4 MByte Level-2-Cache unterstützt wird. AMD hat im Simulator mit mehreren Abstufungen bei der Größe experimentiert und ab 128 MByte eine gewisse Sättigung festgestellt.

Cache-Organisation bei Big Navi

(Bild: AMD)

In Spielen soll der IC bei 4K-Auflösung eine Trefferrate von 58 Prozent haben – beinahe sechs von zehn Speicherzugriffen können hier also abgefangen werden.

Dabei liefert der IC über 16 64-Bit-Kanäle bei einem Maximaltakt von 1,94 GHz knapp 2 TByte/s und ist damit viermal so schnell wie der normale GDDR6-Speicher. Darin enthalten ist allerdings eine Boost-Funktion, die für 550 GByte/s extra gut ist – aber eben nur, wenn das elektrische Leistungsbudget noch nicht erschöpft ist. Wir haben in synthetischen Tests rund 1,2 TByte/s gemessen, die das Gemisch aus GDDR6 und Infinity Cache überträgt.

AMD greift beim Infinity Cache auf die Expertise der CPU-Abteilung zurück, die über die Zen-Prozessoren viel Erfahrung mit großen, aber flächenmäßig kompakten, schnellen Zwischenspeichern hat. Der IC soll zudem dabei helfen, die Energiebilanz zu verbessern. Jedes Bit aus dem Cache braucht nur eine Energie von 1,6 picoJoule, während ein Speicherzugriff 7-8 pJ benötige.

Der Infinity Cache hat aber noch eine weitere Funktion: Er speichert Teile der Raytracing-Beschleunigungsstrukturen, die für die Ray Accelerators nötig sind. Mit diesen beschleunigt AMD erstmals Raytracing über spezialisierte Hardware-Schaltungen. Dabei geht man allerdings einen etwas anderen Weg als Nvidia.

Die Raytracing-Einheiten bei AMD übernehmen "nur" die Schnittpunktberechnungen zwischen den Strahlen und den BVH-Boxen beziehungsweise auf der untersten Ebene der Dreiecke. Die Raytracing-Leistung kommt im Gegensatz zur Raster-Leistung dabei nicht mit Nvidias neuesten RTX-Karten mit. Im 3DMark Port Royale etwa ist die RX 6800 XT "nur" so schnell wie ein OC-Modell der GeForce RTX 2080 Ti und liegt mit 9031 Punkten ca. 10 Prozent vor der RTX 3070. Ähnlich sieht es im (Soft-)Raytracing-Benchmark Neon Noir aus.

Spannend war das Ergbnis des neuen 3DMark Feature Tests für Raytracing, der nahezu die komplette Szene via Raytracing darstellt und zugleich eine Einstellmöglichkeit für die Sampleanzahl pro Pixel (spp), also die Strahlen, bietet. Hier zeigte sich, dass ausgehend von 2 spp die Radeon RX 6800 XT den Rückstand auf die GeForce RTX 3070 von 31 Prozent auf 15 Prozent bei der Maximaleinstellung von 20 spp verringern konnte.

In der Grafikwertung des 3DMark Firestrike Extreme hingegen, wo die klassische Rasterisierungsleistung zählt, hängt sie die beiden GeForce-Karten um mindestens 47 Prozent ab und liegt noch vor einer mehr als doppelt so teuren RTX 3090.

Big-Navi-Blockdiagramm

(Bild: AMD)

Dank Raytracing erfüllt Big Navi nun auch die Ultimate-Spezifikation von DirectX 12. Daneben sind auch Variable Rate Shading, Mesh Shader und speziell Sampler Feedback nun mit von der Partie. Auch DirectStorage, welches bei Nvidia RTX IO genannt wird und schon bei den Spielkonsolen Xbox Series S/X und Playstation 5 unter anderem Namen für Aufsehen sorgte, kann die Radeon.

In einigen Aspekten, wie etwa beim Sampler-Feedback (Tier 1.0 anstatt 0.9) oder der Feinkörnigkeit beim Variable Rate Shading (8×8 Pixel feine Kacheln anstatt 16×16), überbietet die Radeon sogar die GeForce RTX 3000.

Wir haben vorab auch ein bisschen mit ein paar Benchmarks herumgespielt. Da wäre zum einen das Rendering-Programm Blender. In der classroom-Szene kommt die Radeon RX 6800 XT mit dem Cycles-Renderer selbst an eine GeForce RTX 3070 mit CUDA nicht heran. Das ist allerdings nur die halbe Wahrheit. Denn die GeForce ist mit der voreingestellten Kachelgröße von 32 × 32 Pixeln bereits nahe an ihrem Leistungslimit, während die Radeon mit größeren Kacheln (Tiles) aufholt.

Kurz zur Erklärung: Beim GPU-Rendering in Blender arbeitet der komplette Grafikchip an einer einzigen Kachel – im genannten Beispiel also im Falle der GeForce 5888 Shader-Einheiten an nur 1024 Pixeln. Bei CPUs hingegen arbeitet jeder CPU-Thread an einer eigenen Kachel. Die Kunst ist es, die Auslastung der Einheiten sicherzustellen und dabei noch schnell genug die Daten aus dem Grafikspeicher oder den Caches heranzuschaffen.

Dementsprechend legt die Radeon RX 6800 auch deutlich zu, wenn man die Kachelgröße unter „Performance“ - „Tile Size“ etwa auf 64 × 64 vervierfacht. Das gelang allerdings auch schon der mit reichlich Speichertransferrate ausgestatteten Radeon VII, ist also kein direkter Effekt des Infinity Cache.

Die Berechnungszeit der classroom-Szene sinkt auf unserem alten Testsystem, welches wir nur für diese Benchmarks nutzten, von rund 136 Sekunden auf nurmehr 84 Sekunden – eine Zeitersparnis von fast 40 Prozent. Bei der GeForce RTX 3070 lag diese nur bei rund 2 Prozent, sodass sie dann (ohne den schnelleren Optix-Renderer) hinter die Radeon zurückfällt. Beim Wechsel auf 128 × 128 Pixel große Kacheln spart man auf der Radeon weitere 8 Prozent und die Szene ist nach knapp 77 Sekunden im Kasten - bei der GeForce RTX 3070 macht das keinen weiteren Gewinn aus, die Zeit bleibt bei rund 90 Sekunden.

Da AMD auch an den Innereien des Chips herumgeschraubt hat, haben wir noch einige synthetische Benchmarks gefahren, um den Auswirkungen auf den Zahn zu fühlen. So sind nun etwa die Rasterendstufen von vier auf acht Pixel pro Einheit verdoppelt worden. Der Durchsatz bei vorgezogenen Tiefentests, der auch für Shadow-Mapping wichtig ist, lag bei der Radeon RX 6800 XT über dem Niveau einer GeForce RTX 3090. Auch die Texturleistung kommt in den meisten Fällen mit Nvidias Topmodell mit und liegt bei vierkanaligen FP32-Texturen sogar deutlich davor und haben sich im Vergleich zur RX 5700 XT mehr als verdoppelt.

Der Durchsatz der Shader-Rechenkerne liegt sowohl bei den FP32-Berechnungen als auch bei den Spezialfunktionen taktbereinigt 100 Prozent höher als bei der RX 5700 XT und auch über dem einer GeForce RTX 2080 TI. Hier hat Nvidias RTX3000-Reihe noch einen großen Vorsprung, kann diesen aber in Spielen oft nicht in Fps-Leistung umsetzen.

Auch der Dreiecksdurchsatz hat sich in allen Disziplinen unserer Messung gegenüber der RX 5700XT deutlich gesteigert - auch in einigen Fällen, wo die Speichergeschwindigkeit eine Rolle spielt, ist sie mehr als doppelt so schnell.

Neuerungen in der Compute Unit bei Big Navi

(Bild: AMD)

(csp)