Schwächeln nVidia-Grafikkarten mit kleineren Prozessoren? (Nachträge)

Sonntag, 14. März 2021
 / von Leonidas
 

Nachtrag vom 15. März 2021

In der Frage der möglichen Schwäche von nVidia-Grafikkarten unter kleineren CPUs kommt von Igor's Lab ein gewichtiger Debatten-Beitrag, welcher die Zielrichtung der Problematik eventuell verändert: Dabei deuten die dort angestellten Benchmarks unter "Horizon Zero Dawn" eher auf eine generelle Schwäche von nVidia-Grafikkarten unter kleineren Auflösungen hin. Damit würde die Problematik weiterhin CPU-bezogen bleiben, sich aber nicht nur auf kleinere Prozessoren-Modelle beschränken. So zeigte sich zum einen eine GeForce RTX 3090 gegenüber der Radeon RX 6900 XT unter einem potenten Achtkern-Prozessor erst unter der 4K-Auflösung überlegen, unter FullHD und 720p gewinnt hingegen die AMD-Karte. Jene Auflösungsskalierung geht sogar so weit, dass nominell deutlich schnellere nVidia-Grafikkarten unter 720p gegenüber langsameren AMD-Karten zurückstecken müssen, wie im Vergleichs von GeForce RTX 3060 Ti gegen Radeon RX 5700 XT:

Als Auflösung bieten Igor's Lab dann die These auf, dass es an der konkreten Umsetzung von Asynchronous Compute bei nVidia hängt – jenes Feature soll bei nVidia-Grafikkarten nach wie vor nicht so gut wie bei AMD-Grafikkarten umgesetzt sein. Dies könnte zumindest erklären, wieso der Fall nur unter DirectX-12-Spielen auftritt bzw. wieso wie hier bei "Horizon Zero Dawn" zu sehen auch hochklassige Prozessoren wie der Ryzen 7 5800X einen Effekt zeigen. Allerdings müsste auch diese These nunmehr mittels weiterer Benchmarks untermauert werden – sofern die These stimmt, sollte man unter allen DirectX-12-Titel mit Asynchronous Compute irgendetwas in diese Richtung messen können, bei den Titeln ohne Nutzung von Asynchronous Compute hingegen nichts. Igor's Lab geben selber an, für diese Tests derzeit nicht die Zeitreserven zu haben, ergo nimmt man sich dieser These hoffentlich noch von anderer Stelle aus an bzw. stellt eigene Benchmarks oder/und eigene Thesen zur weiteren Erforschung dieses Falls auf.

Nachtrag vom 16. März 2021

Gewichtiges Daten-Material zur Frage der unter kleineren CPUs schwächelnden nVidia-Grafikkarten liefert die PC Games Hardware mittels eines expliziten Tests des CPU-Limits auf Radeon RX 6900 XT und GeForce RTX 3090 unter gleich 19 Spieletiteln. Mit der Ansicht der Einzel-Benchmarks dieses Artikels (leider ohne die jeweils benutzte Grafik-API notiert, teilweise liefert ein anderer PCGH-Artikel hierzu die fehlenden Hintergründe) ergibt sich schon der gesuchte "rauchende Colt", die nachfolgende Zusammenfassung der vorliegenden Benchmarks macht es eindeutig: nVidia hat ganz deutlich ein Problem mit dem CPU-Limit speziell unter DirectX-12-Titeln – jenes liegt klar höher als bei vergleichbar schnellen AMD-Grafikkarten. Denn es ergibt sich mit diesen Benchmarks eine extrem augenscheinliche Diskrepanz je nach benutzter Grafik-API: Unter DirectX 11 liegt die nVidia-Karte mit +11,5% vorn, unter DirectX 12 hingegen die AMD-Karte mit (ähnlich hohen) +10,6%.

Radeon RX 6900 XT GeForce RTX 3090
Schnitt aller Benchmarks auf 1280x720 ( 19 Tests) 100% 101,7%
Schnitt nur unter DirectX 11  (8 Tests) 100% 111,5%
Schnitt nur unter Vulkan  (3 Tests) 100% 109,0%
Schnitt nur unter DirectX 12  (8 Tests) 100% 90,4%
gemäß der Ausarbeitung der PC Games Hardware mit einem Ryzen 3 3100

Die sich daraus ergebende Ergebnis-Differenz von über 20 Prozentpunkten zwischen beiden Teil-Daten ist um so bemerkenswerter, als dass im ingesamten Schnitt aller Messungen ein eher zu erwartendes Ergebnis mit +1,7% zugunsten der GeForce RTX 3090 herauskommt. Die Vulkan-API ist hingegen in diesem Fall eher auf der Seite von DirectX 11 bzw. zeigt ein zu dieser sehr ähnliches Ergebnis – die Problematik liegt also nicht generell bei LowLevel-APIs, sondern allein im Feld von DirectX 12. Das Insgesamt-Ergebnis zerfällt somit in zwei Teilgebiete (DirectX 11 & Vulkan vs. DirectX 12), deren Teilergebnisse sich vollkommen konträr gegenüberstehen – was in dieser Eindeutigkeit wirklich selten zu sehen ist (und somit einen Hintergrund haben wird). Bemerkbar ist zudem die Gleichförmigkeit der Ergebnisse unter DirectX 12: Wirklich alle getesteten DirectX-12-Titel schlagen zugunsten von AMD aus, der AMD-Vorteil liegt zudem nirgendwo unterhalb von +5%.

Beides deutet auf eine allgemeingültige und vor allem bestimmende Erklärung hin, nicht also nur einen Seiteneffekt oder nur unter bestimmten Konstellationen auftretende Problematik. Damit darf es erst einmal als erwiesen gelten, dass nVidia hier ein Problem mit der CPU-Performance (unter DirectX 12) hat. Inwiefern dies tatsächlich nur auf kleinere Prozessoren zutrifft, können diese (alleinig unter einem Ryzen 3 3100 durchgeführten) Benchmarks nicht aufzeigen – zuletzt hatte es ja Anzeichen gegeben, dass auch größere Prozessoren-Modelle unter nVidia-Hardware genauso betroffen sind. Ebenfalls nicht im Test stand mit diesen PCGH-Benchmarks, ob das ganze dan auch Auswirkungen unter real genutzten Auflösungen hat – erst dann könnte man wirklich von einem "Ausbremsen" sprechen. Aber als Beweis, dass es sich hierbei nicht nur um einen Effekt unter zwei Spieletiteln handelt (und es sich damit um so mehr lohnt, der Sache nachzugehen), sind diese Benchmarks hochwertvoll.

Nachtrag vom 19. März 2021

Vom russischen GameGPU (maschinelle Übersetzung ins Deutsche) kommt eine Ausarbeitung zur Prozessoren-Abhängigkeit von GeForce- und Radeon-Grafikkarten>, welche für die laufende Debatte als weitere Fakten-Grundlage dienlich sein kann. Hierbei wurde wiederum unter 1280x720 und somit nahezu vollständig CPU-limitiert gemessen, im Test waren jedoch zwei eigentlich sehr unterschiedliche Grafikkarten: Zwischen Radeon RX Vega 64 "LC" und GeForce RTX 3090 steht gemäß des 3DC FullHD Performance-Index ein Performancesprung von +103% – sprich grob dem Doppelten, was die GeForce-Lösung in diesem Vergleich schneller sein sollte. Dies muß sich natürlich unter CPU-limitierten Szenarien keineswegs in dieser Höhe zeigen – aber das Benchmark-Ergebnis von GameGPU, wo die ältere Radeon-Lösung mit dem leicht schwächeren Prozessor (Ryzen 5 3600) gleich um +16% vor der schnellsten je gebauten GeForce-Lösung auf dem leicht stärkeren Prozessor (Ryzen 5 3600X) herauskommt, sollte wiederum auch nicht möglich sein.

Vega64 LC @ R5-3600 3090 @ R5-3600X
Nominal-Performance gemäß 3DC FullHD Perf.Index 1000% 2030%
Schnitt 5 DX12-Benchmarks @ 1280x720 116,2% 100%
gemäß der Ausarbeitung von GameGPU

Damit steht bewiesen, dass die CPU-Schwäche von nVidia-Hardware unter DirectX 12 auch dazu führen kann, dass nicht nur die gleichwertige AMD-Hardware schneller herauskommt, sondern dass sogar nominell viel schwächere AMD-Hardware (samt schwächerer CPU-Power) an nVidia vorbeiziehen kann. Dies ist sicherlich nur ein gewisser Teilaspekt, welcher allerdings durchaus nützlich erscheint bei der Ursachenforschung. Denn aufgrund der Klarheit der Ergebnisse ist es nicht unwahrscheinlich, dass hier ein Fehler des nVidia-Treibers oder eine komplett liegengelassen (Nicht-)Optimierung zu sehen ist – sprich, eventuell per Treiber-Update lösbare Probleme. Weitere Benchmark-Belege werden jedoch benötigt für die Frage, wie stark dieser Effekt auf kleineren Grafikkarten ausfällt und vor allem wie stark der Effekt auf tatsächlich genutzte Auflösungen durchschlägt. Im Debatten-Ausgangspunkt in Form des Videos von Hardware Unboxed wurde der Effekt unter FullHD mit Medium-Bildqualität sowie teilweise auch unter WQHD mit Medium-Bildqualität beobachtet – allerdings nur unter 2 Spieletiteln, was zu wenig für eine generelle Aussage ist.

Nachtrag vom 26. März 2021

Hardware Unboxed haben auf YouTube ihre These einer schwächeren nVidia-Performance unter kleineren Prozessoren mittels weiterer umfangreicher Benchmarks auf nochmals bessere Füße gestellt. Zuerst wurde der Testaufbau des ersten Videos unter mehr Spieletiteln repliziert – wobei durchgehend DirectX-12-Titel zum Einsatz kamen, ein zusätzlicher Test unter "Rainbow Six: Siege" (Vulkan-API) zeigte hingegen keinerlei beachtbare Ausschläge. Die nachfolgende Index-Tabelle zu diesen HWU-Benchmarks vergleicht die durchschnittliche Performance generell zum Ryzen 5 5600X samt Radeon RX 6800 XT – die nachfolgend jeweils in kleiner Schrift notierten Differenz-Werte hingegen immer zum Ryzen 5 5600X auf der jeweils gleichen Grafikkarte. Somit kann man sehen, inwiefern eine einzelne Grafikkarte eventuell stärker mit kleineren Prozessoren einbricht als eine nominell ähnlich schnelle Grafikkarte.

FullHD @ "Medium" R5-1400 9400F+2666 9400F+3200 R5-5600X
Radeon RX 6800 XT 48,1%  (–51,9%) 66,7%  (–33,3%) 74,5%  (–25,5%) 100%
GeForce RTX 3080 40,1%  (–54,5%) 57,8%  (–35,0%) 65,5%  (–26,3%) 88,9%
Radeon RX 5600 XT 45,6%  (–22,9%) 51,7%  (–12,6%) 57,4%  (–2,9%) 59,2%
GeForce RTX 2060 38,5%  (–31,2%) 47,5%  (–15,2%) 56,0%  (–4,5%) 56,0%
Durchschnitt von 6 Spiele-Tests unter DirectX 12 mit FullHD-Auflösung @ "Medium"-Bildqualität; Nominal-Werte verglichen zum Ryzen 5 5600X @ Radeon RX 6800 XT, Differenz-Werte verglichen zum Ryzen 5 5600X auf jeweils derselben Grafikkarte; alle Benchmark-Werte gemäß der Ausarbeitung von Hardware Unboxed @ YouTube

Bei den von Hardware Unboxed angestellten Benchmarks ist dies augenscheinlich bei Radeon RX 5600 XT vs. GeForce RTX 2060 der Fall, wo die nVidia-Lösung doch klar stärker von kleineren Prozessoren getroffen wird als die AMD-Lösung. Im Spitzenfeld zwischen Radeon RX 6800 XT vs. GeForce RTX 3080 ist jene Differenz weniger klar ausgeprägt, beide Grafikkarten verlieren zumeist halbwegs ähnlich stark durch die kleineren Prozessoren. Wichtig ist daher, dass mittels dieses breiteren Benchmark-Feldes nachgewiesen werden konnte, dass Situationen, wo die GeForce RTX 3080 von kleineren AMD-Grafikkarten vernascht werden, eben keine Einzelfälle sind – sondern sich dieser Effekt auch im Durchschnitt mehrerer Spiele-Benchmarks einwandfrei nachweisen läßt. Vorstehende Benchmarks zeigen beispielsweise die (nominell grob halb so schnelle) Radeon RX 5600 XT beachtbar vor der GeForce RTX 3080 herauskommend, sofern man einen Ryzen 5 1400 Prozessor einsetzt.

Noch deutlicher wird der Fall bei den zusätzlich angestellten Benchmarks mit einem Core i7-4790K – welcher eventuell auch der praxisnähere Bezug ist als ein Ryzen 5 1400: Unter diesem früheren Spitzen-Modell von Intel gewinnt eine Radeon RX 6700 XT problemlos gegenüber einer GeForce RTX 3080, welcher ihrerseits bereits eine Radeon RX Vega 56 auf den Fersen ist. Auch bei den anderen Konstellationen werden die nVidia-Karten deutlich nach unten gereicht, teilweise ist dies sogar unter der Vulkan-API (mit allerdings nur zwei Spiele-Tests) zu sehen. Damit kann der Effekt zumindest unter DirectX 12 im Setting "FullHD mit Medium-Bildqualität" als einwandfrei bewiesen gelten – nVidia-Grafikkarten verlieren hierbei deutlich gegenüber AMD-Grafikkarten. Augenscheinlich gilt der Effekt aber auch wirklich nur in dieser speziellen Bildqualitäts-Konstellation, schon unter der High-Bildqualität oder einer höheren Auflösung dürfte jener (von Einzelfällen abgesehen) wieder verschwinden. Unter DirectX 11 ergibt sich hingegen gemäß den abschließend seitens Hardware Unboxed angestellten Benchmarks keinerlei Effekt bzw. sind teilweise sogar Vorteile zugunsten von nVidia-Grafikkarten zu sehen.

FullHD @ "Medium" 5x DX12 2x Vulkan 3DC FHD-Index
Radeon RX 6800 XT 100% 100% 1840%
Radeon RX 6700 XT 98,3% 99,8% 1490%
GeForce RTX 3080 86,5% 96,7% 1900%
Radeon RX Vega 56 85,7% 91,0% 840%
GeForce RTX 3060 Ti 78,8% 88,6% 1420%
GeForce GTX 1080 77,2% 85,6% 960%
Radeon RX 580 73,0% 69,2% 590%
GeForce GTX 1060 67,0% 49,2% 590%
Durchschnitt von 5 Spiele-Tests unter DirectX 12 sowie 2 Spiele-Tests unter Vulkan, jeweils mit FullHD-Auflösung @ "Medium"-Bildqualität; alle Benchmark-Werte gemäß der Ausarbeitung von Hardware Unboxed @ YouTube

Nachtrag vom 28. März 2021

Die zuletzt bereits in Tabellen-Form gezeigten Aussagen des letzten HWU-Videos zur nVidia-Schwäche mit kleineren CPUs unter DirectX12 sind möglicherweise mittels der nachfolgenden Darstellung in Diagramm-Form nochmals besser zu erfassen: Benutzt wurden hierbei allein die Ergebnisse unter Core i5-9400F (mit DDR4/2666) sowie Core i7-4790K als wohl eher in der Praxis vorkommend als denn ein Ryzen 5 1400. Ausgangspunkt des ganzen ist grundsätzlich, dass beide Diagramme nach der nominellen FullHD-Performance sortiert sind, die Balkenlänge also von oben nach unten immer kleiner werden sollte (GeForce GTX 1060 und Radeon RX 580 dürfen gleich schnell sein). Wie auf den ersten Blick zu sehen, fallen hierbei die nVidia-Grafikkarten allesamt aus der Spur bzw. bieten weniger Performance, als von jenen normalerweise zu erwarten wäre. Über die Wahl der beiden Intel-Prozessoren entfällt auch die Frage, ob hierbei irgendein SAM/rBAR-Effekt im Spiel sein könnte – jenes Feature gibt es zumindest für den Core i7-4790K ganz gewiß nicht mehr.

Nochmals drastischer wird es, wenn man dies gegenüber der Nominal-Performance auf Basis des 3DC FullHD Performance-Index vergleicht: Dessen völlig andere (viel stärkere) Skalierung wäre dabei zu beachten, aber es reicht der Blick hin zu vollkommen eindeutigen Situationen im Stil von besser/schlechter. So sollte die GeForce RTX 3080 eigentlich oberhalb der Radeon RX 6800 XT herauskommen, nicht gerade unterhalb. Doch selbst wenn die allerneuesten Benchmark-Ergebnisse unter FullHD eher zugunsten von AMD ausfallen, darf hierbei keine derart große Differenz herauskommen. Nochmals eindeutiger wird es dann bei GeForce RTX 2060 gegen Radeon RX 5600 XT (nVidia-Karte sollte etwas vorn liegen), GeForce RTX 3060 Ti gegen Radeon RX 6700 XT (AMD-Karte sollte nur einen geringen Vorsprung haben), Radeon RX Vega 56 gegen GeForce RTX 3060 Ti und GeForce GTX 1080 (AMD-Karte sollte deutlich zurückliegen, gegenüber der 3060Ti sogar massiv) und Radeon RX 580 gegen GeForce GTX 1060 (sollten gleich schnell sein).

Insofern kann man durchaus von einer Problemlage für nVidia reden – welche speziell unter DirectX 12 existiert, die Ergebnisse unter Vulkan sind nicht ganz eindeutig (zu wenige Testspiele) und unter DirectX 11 ergeben sich eher umgekehrte Tendenzen. Klar muß allerdings auch sein, dass dieser nVidia-Nachteil an einer Stelle existiert, wo die CPU-Performance die Gesamt-Performance bereits dominiert. Auch die AMD-Karten skalieren in diesem Vergleich (logischerweise) schlecht, zwischen Radeon RX Vega 64 und 6800 XT gibt es gerade einmal +17% Mehrperformance – nominell sollte es mehr als das Doppelte sein. nVidias Problem liegt also nur dort, wo sich größere Grafikkarten sowieso nicht lohnen, egal ob von AMD oder nVidia kommend. Dass die Problematik genauso auch unter Situationen auftritt, wo normalerweise echte Differenzen zwischen (verschieden leistungsstarken) Grafikkarten existieren, wurde hingegen bislang nicht nachgewiesen (Einzelfälle sind kein "Nachweis"). Das Ausbleiben dieser Messungen deutet vielleicht sogar darauf hin, dass es da nichts zu holen gibt – dass sich also schon unter FullHD mit "High"-Bildqualität bereits wieder ein "normales" Bild zeigt.

Somit wäre dann allerdings darüber nachzudenken, ob in diesem Fall auch wirklich eine Praxisrelevanz existiert: Denn nVidia ist hierbei (nach bisherigem Wissen) allein schlechter unter Settings, wo wegen eines bestimmenden CPU-Limits sowieso nur noch sehr abgeschwächte Performance-Unterschiede zwischen den Grafikkarten existieren und sich somit nirgendwo wirklich schnelle Grafikkarten lohnen. Anstatt an dieser Stelle die Grafikkarte zu wechseln, wäre in einer solchen Situation viel eher ein CPU-Upgrade zu empfehlen, dies würde gravierend mehr bringen. Dies gilt natürlich nur insofern, als dass jemand tatsächlich FullHD mit (durchgehender) "Medium"-Bildqualität auf einem schwächeren Prozessor mit einer Grafikkarte á Radeon RX 580 oder GeForce GTX 1060 oder stärker benutzt. Jene Grafikkarten sind auch heutzutage zumeist zu einer "High"-Bildqualität unter FullHD in der Lage – was die Problematik in einer Grafikkarten-Limitierung verschwinden läßt und wie gesagt die Frage nach der Praxisrelevanz dieses Falls aufstellt.