PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Auslastung von Recheneinheiten (voller Chip vs teildeaktivierter Chip)


Der_Korken
2016-03-29, 20:55:21
Wenn man sich Benchmarks von aktuellen Grafikkarten anguckt, dann fällt auf, dass der Unterschied zwischen einem Grafikchip im Vollausbau und einer teildeaktivierten Variante fast immer sichtbar kleiner ausfällt, als die Differenz bei der Rohleistung. Ich habe mich mal gefragt, warum das so ist.

Ich selber habe leider kein tiefgreifendes Fachwissen über die internen Abläufe bei Grafikchips oder die genutzten Programmiermodelle, sonst könnte ich mir das ganze vielleicht selber herleiten. Ich wollte deswegen mal fragen, ob es für dieses "Phänomen" eine plausible Erklärung gibt.

Um das ganze ein wenig mit Zahlen zu füllen, nehme ich einfach mal den Leistungsindex der 3DCenter-Hauptseite:

GTX 980: 600% Index -> 100% Leistung - 100% Rohleistung (normiert)
GTX 970: 520% Index -> 86,7% Leistung - 78,7% Rohleistung

GTX 960: 340% Index -> 100% Leistung - 100% Rohleistung (normiert)
GTX 950: 290% Index -> 85,3% Leistung - 75,6% Rohleistung

R9 390X: 570% Index -> 100% Leistung - 100% Rohleistung (normiert)
R9 390: 530% Index -> 93,0% Leistung - 86,5% Rohleistung

R9 380X: 390% Index -> 100% Leistung - 100% Rohleistung (normiert)
R9 380: 360% Index -> 92,3% Leistung - 87,5% Rohleistung

Ich denke, wenn man nur die selben Grafikchips untereinander vergleicht, dann dürften die Verhältnisse unabhängig vom Spiel sein. Der Index ist natürlich immer etwas ungenau, aber die Tendenz ist überall gleich. Insbesondere ist es sowohl bei Nvidia als auch bei AMD der Fall.

Das finde ich insofern interessant, weil oft gesagt wird, dass Nvidia ihre Hardware besser auslastet und daher aus weniger Rohleistung mehr fps rausholt als die AMD-Chips (zumindest unter DX11 und 1080p). Tatsächlich ist aber z.B. die GTX 970 effizienter bei fps/Rohleistung als die GTX 980. Da frage ich mich z.B. warum man nicht von vornherein nur 13 Shaderblöcke beim GM204 verbaut hat - es hätte (zumindest unter 1080p) wenig Leistung gekostet, dafür aber eben Transistoren und Strom gespart. Das gleiche gilt auf für den Hawaii-Chip: Wäre ein Chip mit 40CUs von vornherein vielleicht besser gewesen? Oder ist gewollt, dass die Chips eher einen Überschuss an Rohleistung haben?

blinki
2016-03-29, 22:21:24
Was dir da auffällt ist, daß es da einen Sweet Spot gibt, und der bei den kleineren Modellen jeweils noch nicht erreicht ist, aber überhalb der großen Modelle dann überschritten ist, d.h. overclock bringt dann nicht mehr verhältnismäßig mehr Leistung. (Dazu stehen da natürlich keine Daten).

Dass die Karten trotz deaktivierung von Einheiten so relativ viel Leistung bringen liegt daran, dass die Infastruktur für die verbliebenen Einheiten ja relativ gesehen größer wird, d.h. der Bus ist leerer, der Speicher größer und auch der thermische Spielraum größer für mehr max. Clocks.

Warum die Hersteller nicht sofort die kleineren Karten rausbringen? Weil sie dann keine Größeren hätten. Deaktiveren ist billiger als 2 verschiedene Chips zu designen.

Tesseract
2016-03-29, 23:02:34
das liegt unter anderem daran, dass sich die reduzierte rohleistung nicht auf die ganze architektur sondern nur teile davon bezieht. wenn in einem block einige ressourcen deaktiviert werden kann es sein, dass die übrigen im block oder sogar der ganze restliche chip plötzlich mehr bandbreite, cache usw. pro compute unit hat und dadurch der auslastungsgrad etwas steigt.

Geldmann3
2016-03-30, 09:25:28
Die FPS in Spielen, auf denen der 3DC-Performanceindex basiert, werden durch vieles mehr limitiert, als durch die Shadereinheiten eines Grafikchips. Beispielsweise durch die CPU und die Umsetzung einzelner Features der GPU in Hardware & Software. Um ein Extrem zu nennen, wird ein Rechner ja auch nicht zwingend schneller, wenn man mehr Ram verbaut. Sondern der Flaschenhals verschiebt sich je nach Szenario auf eine andere Hardwareeinheit. Wenn Du die Renderauflösung steigerst, sollte die von Dir genannte "Rohleistung" zunehmend kongruenter mit den erreichten Bildraten werden. Einfach weil die Shadereinheiten dann zunehmend mehr zum Flaschenhals werden. Der 4K Performanceindex passt da schon eher zur Rohleistung. In 8K sollte die Anzahl der Shadereinheiten dann noch wichtiger werden, doch hier werden Benchmarks für unseren Zweck nutzlos, weil bei vielen Karten an dieser Stelle schon wieder Bandbreite und Vram limitieren...

Der_Korken
2016-03-30, 12:50:00
OK, das CPU-Limit, welches den Gesamtindex verfälschen kann, habe ich tatsächlich nicht bedacht. Allerdings erklärt das nicht alles, denn man sieht auch häufig, dass der volle und Salvage-Chip relativ dicht zusammenliegen, obwohl es darüber noch deutlich schnellere Chips gibt (z.B. 970 vs 980 mit der 980Ti, die nochmal deutlich schneller ist).

Das mit den Caches und leeren Datenleitungen klingt schon einleuchtender. Allerdings haben die einzelnen Cluster (sofern ich richtig informiert bin) eigene L1-Caches, die logischerweise nicht größer werden. Macht ein globaler shared Cache dann wirklich noch so viel aus? Der Cache/SP steigt ja gerade mal um Faktor <1,25.

Weiß jemand wie ungefähr die Verhältnisse aussehen zwischen Rechenclustern und "Rest"? Ich vermute, dass ich letzteres unterschätze und der Chipflächenunterschied zwischen einem 13SMM-Chip (970) und einem 16SMM-Chip (980) gar nicht so groß ist. Zumindest nicht Faktor 16/13.

Thunder99
2016-03-30, 19:51:38
Aus dem Grund hat nvidia mit der GTX970 ja mehr deaktiviert als am Anfang bekannt war damit der Abstand größer wird :wink: (Stichwort 3,5GB+0,5GB VRAM und 1,5MB L2 Cache)

Leonidas
2016-04-01, 10:19:17
Man könnte das ganze nochmals auf Basis des 4K-Index machen. Der ist erstens viel genauer und hat zweitens naturgemäß weniger CPU-Einfluß:
http://www.3dcenter.org/news/schneller-4k-performance-ueberblick-der-28nm-grafikkarten

Knuddelbearli
2016-04-02, 05:20:33
viel kaschiert auch der boost. man sieht ja auch schön das AMD viel näher am theoretischen unterschied ist als NV. Dazu bleibt die Bandbreite ja immer gleich. Man müsste mal testen was passiert wenn man auch den Speicher entsprechen langsamer taktet ( wodurch sich dann aber wieder die Timings verschlechtern usw )

Das finde ich insofern interessant, weil oft gesagt wird, dass Nvidia ihre Hardware besser auslastet und daher aus weniger Rohleistung mehr fps rausholt als die AMD-Chips (zumindest unter DX11 und 1080p).

Und die Aussage ist einfach nur Quatsch bzw einfach dumm. Oder ist NV unfähig da sie auf gleicher Fläche viel weniger Shader packen können als AMD?

Nein! beide haben eben unterschiedliche Architekturen mit unterschiedlichen Vor und Nachteilen ( NV braucht mehr Platz dafür aber dann weniger Einheiten für die Leistung und kann sie höher Takten, AMD kann umgekehrt mehr Shader pro mm² packen )

Leonidas
2016-04-17, 11:06:09
Vergleich auf Basis des (genaueren, weil weniger gerundeten) 4K Performance-Index:

Grafikkarte|3DC 4K Perf.Index|normierte Perf.|normierte Rohleist.@ds-Takt

GTX980|77%|100%|100%
GTX970|64%|83,1%|78,1%

GTX780Ti|68%|100%|100%
GTX780|55%|80,9%|74,6%

R9 Fury X|100%|100%|100%
R9 Nano .|86%|86%|87,6%

R9 390X|80%|100%|100%
R9 390|74%|92,5%|87,6%


Das hier zu sehende Phänomen bedeutet aber nicht, das die kleineren Modelle mit weniger Rohleistung mehr herausholen - sondern umgedreht, das die schnelleren Modelle aus viel mehr Rohleistung nur (relativ) weniger Performance erzielen. Ist aber in dem Sinne eine normale Beobachtung, die es schon zu Anfangszeiten der 3D-Grafikkarten gab. Ein glatt halibierter Chip ist ja auch nicht nur halb so schnell wie der volle Chip - sondern etwas schneller als die Hälfte (siehe Cape Verde zu Pitcairn).

Der_Korken
2016-04-17, 14:28:13
Und die Aussage ist einfach nur Quatsch bzw einfach dumm. Oder ist NV unfähig da sie auf gleicher Fläche viel weniger Shader packen können als AMD?

Nein! beide haben eben unterschiedliche Architekturen mit unterschiedlichen Vor und Nachteilen ( NV braucht mehr Platz dafür aber dann weniger Einheiten für die Leistung und kann sie höher Takten, AMD kann umgekehrt mehr Shader pro mm² packen )

So habe ich das mit "besserer Auslastung" bei Nvidia nicht gemeint. Dass es Unsinn ist, die Rohleistung unterschiedlicher Architekturen gegeneinander aufzurechnen, ist mir schon klar. Was ich meinte war, dass AMD gegenüber Nvidia in hohen Auflösungen tendenziell Boden gut gemacht hat, was ich als Indikator gesehen habe, dass Nvidia auch bei kleinen Auflösungen schon eine relativ gute Auslastung erreicht. Daher habe ich mich gewundert, dass z.B. die GTX980 gegenüber der GTX970 so wenig zulegt in Relation zur Rohleistung.

Vergleich auf Basis des (genaueren, weil weniger gerundeten) 4K Performance-Index:

[...]

Ist aber in dem Sinne eine normale Beobachtung, die es schon zu Anfangszeiten der 3D-Grafikkarten gab. Ein glatt halibierter Chip ist ja auch nicht nur halb so schnell wie der volle Chip - sondern etwas schneller als die Hälfte (siehe Cape Verde zu Pitcairn).

Die 4K-Benches entzerren das ganze tatsächlich etwas, aber eben auch nicht alles.

Dass der Unterschied zwischen "ganzen" und "halben" Chips historisch gesehen schon immer so war, macht das Verhalten aber nicht gleich logischer. Ich glaube, dass meine Vorstellung einer GPU etwas falsch war: Im Gegensatz zur CPU dachte ich immer, dass eine GPU einfach nur mit Recheneinheiten mit möglichst wenig Logik vollgestopft ist. Die Teile, die nicht einfach mit der Anzahl an ALUs mitskaliert, habe ich also unterschätzt.