Ryzen 9 5950X: Leistungsbremse SMT? Benchmark-Vergleich 32 Threads vs. 16 Kerne mit Überraschungen

PS: Ps5 Leistungsvergleich anschauen an alle, lag doch ziemlich gut mit meinen Schätzungen.
Gamers Nexus! Wie schnell eine PS5 wirklich ist, gegen einen PC. Aber bestimmt konnte man das ja nicht voraus sehen!

Wo findet man den?

Aber auch dann haben bei AMD alle Kerne die selben Fähigkeiten. Mich würde es wundern, wenn die Atom-Kerne alle Fähigkeiten der schnellen Kerne unterstützen (nicht nur AVX 512). Entweder biegt Intel das intern irgendwie hin oder das gesamte bisherige Konzept zur Abfrage von CPU-Funktionalitäten klappt nicht mehr.

Zur Architektur und den Befehlssätzen ist da noch nicht so viel bekannt.
 
Zuletzt bearbeitet:
Warum sind die Spielentwickler nicht zu sowas in der Lage, das ist Aufgabe der Anwendung, und dort auch recht problemlos lösbar. Die Entwickler wissen, mit wie vielen Threads ihre (ja offensichtlich zu dumme) Software zurecht kommt.

Anfang? Seit mind. 2010 (SandyBridge) haben Spiele (und schlecht programmierte Anwendunge) Probleme damit. Das sind 10 Jahre in denen die Entwickler der Spiele hätten reagieren können.

Spieleentwickler wissen zwar, womit ihre Software zurecht kommt, sie wissen aber nicht, was die CPU kann. Meinem Wissen nach meldet das Betriebssystem der Software keine Details über den Prozessoraufbau und wie wir spätestens seit Bulldozer und Threadripper wissen, kann man solche Angaben ohnehin schwer verallgemeinern. Ein Spiel hätte zwar die Möglichkeit, den CPU-Namen abzufragen und dann spezifische Optimierungen zu laden, aber auch das würde zwangsläufig nur für Prozessoren funktionieren, die älter als das Spiel sind. In der Praxis spart man sich den ganzen Aufwand und passt die Spielkonfiguration entweder gar nicht an die vorliegende Hardware an, sondern entwickelt für einen allgemeinen Durchschnitt, oder man spawnt Threads passend zur Anzahl der gemeldeten logischen Kerne. Dass der Prozessor Probleme bekommt, wenn man diese tatsächlich auslastet, ist dann aus Sicht der Entwickler ein Problem der Hardware-Hersteller. Allgemein gilt aber ohnehin, dass eine Ausreizung von SMT auf schwachen CPUs eine gute Idee ist und dass die Performance auf guten CPUs die Entwickler reichlich wenig interessiert, weil die sowieso meist im GPU-Limit stecken.


Danke PCGH für den Test. :daumen:
Woran liegt das eigentlich das SMT (mit vielen Kernen) in Games bremst? Ist da das OS dran Schuld?
Das die Threads nicht optimal genutzt werden können?

Da gibt es mehrere Möglichkeiten, die sich von außen kaum trennen lassen:
- Zusätzlicher Verwaltungsoverhead
- Nicht optimale Kombination von Threads auf einzelnen Kernen
- Sich änderndes Turbo-Verhalten
- Ineffizientere Cache-Nutzung
- Behinderung von System-Threads
etc.
Auf der anderen Seite steht die Frage, wieviel Mehrleistung durch zusätzliche Parallelisierung überhaupt noch herausholbar ist und wie viele Wartezeiten es im ersten Thread pro Kern überhaupt gibt, in denen an einem zweiten gearbeitet werden könnte. Je mehr Kerne man ohnehin schon hat, desto geringer ist in der Regel der Nutzen und desto größer ist die Gefahr von Problemen. Irgendwann überwiegen dann die Nach- die Vorteile.
 
Auf der anderen Seite steht die Frage, wieviel Mehrleistung durch zusätzliche Parallelisierung überhaupt noch herausholbar ist und wie viele Wartezeiten es im ersten Thread pro Kern überhaupt gibt, in denen an einem zweiten gearbeitet werden könnte. Je mehr Kerne man ohnehin schon hat, desto geringer ist in der Regel der Nutzen und desto größer ist die Gefahr von Problemen. Irgendwann überwiegen dann die Nach- die Vorteile.
Dann sind wohl 6 oder 8 Kerne +HT ein guter Kompromiss?
 
Meiner Meinung nach liegt der Sweetspot im Moment in diesem Bereich, ja. Alles darüber hinaus skaliert vergleichsweise schlecht mit dem zusätzlichen Aufwand. Allerdings würde ich nach Budget durchaus mit einem Zwölfkerner liebäugeln (oder alternativ einen billigen Sechskerner in einer Platine mit 16-Kern-Aufrüstoption wählen), denn man kauft eine CPU ja meist nicht nur für die aktuellen Spiele. Während man als Besitzer eines guten Sechskerners heute noch keine Sorgen hat, würde ich die Neuanschaffung desselbigen also nicht mehr als langfristigen Kauf betrachten.

(Wie gesagt: Je nach Budget. Eine 6900 wird durch einen Ryzen 5 3000, geschwiege denn 2000, in manchen Situationen bereits leicht ausgebremst. Spätestens beim nächsten GPU-Upgrade verschenkt man dann vermutlich messbar Leistung. Aber wann wird der typische Budget-CPU-Käufer diese Grafikleistung haben? Vermutlich nicht vor 2022.)
 
Summa sumarum:

Ich lege mir im BIOS ein Profil an, in dem ich HT ausschalte, das OC optimiere und zocke dann damit. Dann habe ich 16 echte (OC) Kerne. Damit dürfte ich meilenweit vor den 8 Kern + HT CPUs liegen (sofern das Game mit den 16 Threads klarkommt). :daumen:
 
Was mich persönlich mehr interessieren würde, wären Titel wie Dual Universe, werden oder könntet dieser Titel mitgetestet werden? Dahingehend würde auch mein nächster Rechner aufgebaut werden, da mein aktuelles System damit schon überfordert zu sein scheint, wobei es eigentlich gar nicht so alt ist. Sehe aber auch dass Dual Universe Ram geradezu verschlingt (32gb vorhanden) ebenso wie den Grafikspeicher (8gb voll ausgelastet). Generell ist das Spiel von den Mindestvoraussetzungen die dort angegeben sind kaum zu bewerkstelligen, aber das Spiel hat eben viel Potenzial und kann durchaus Spiele wie Eve Online in den schatten stellen.
 
Da gibt es mehrere Möglichkeiten, die sich von außen kaum trennen lassen:
- Zusätzlicher Verwaltungsoverhead
- Nicht optimale Kombination von Threads auf einzelnen Kernen
- Sich änderndes Turbo-Verhalten
- Ineffizientere Cache-Nutzung
- Behinderung von System-Threads
etc.
Auf der anderen Seite steht die Frage, wieviel Mehrleistung durch zusätzliche Parallelisierung überhaupt noch herausholbar ist und wie viele Wartezeiten es im ersten Thread pro Kern überhaupt gibt, in denen an einem zweiten gearbeitet werden könnte. Je mehr Kerne man ohnehin schon hat, desto geringer ist in der Regel der Nutzen und desto größer ist die Gefahr von Problemen. Irgendwann überwiegen dann die Nach- die Vorteile.
Ich verstehe trotzdem nicht, warum das nicht vom Software Entwickler entsprechend abgefangen wird. Die sollten doch wissen wieviel HW-Threads mindestens nötig sind und wenn es zu viele sind.
 
Gerade bei etwas älteren Spielen wird man schlicht ein System gebaut haben was für alle realistisch zugänglichen Prozessoren sinnvoll skaliert. Dass das darin befindende Thread-Spawning relativ zum HW-Thread Support vielleicht bei vier Mal so vielen HW-Threads nicht mehr sinnvoll agiert hat schlicht niemand bedacht. Ganz im Gegenteil: Man ist ja eigentlich gerade zukunftssicher weil man sogar damit skaliert.
 
Ich verstehe trotzdem nicht, warum das nicht vom Software Entwickler entsprechend abgefangen wird. Die sollten doch wissen wieviel HW-Threads mindestens nötig sind und wenn es zu viele sind.
siehe vorheriger Kommentar
Es würde nicht reichen allein die Menge an Threads zu begrenzen. Es könnten beispielsweise bei einem Ryzen 7 2700 noch immer 8 Threads auf nur 4 Kernen landen. Im Gerätemanager sieht man das ganz gut:
Jeder mögliche Thread wird als ein Prozessor installiert. Wenn man viel am PC arbeitet, kann HT/SMT aktiviert werden.
Beim Gaming ist die Deaktivierung davon nicht allgemeingültig, allerdings sollte man es mal probieren und vergleichen. :)
 
Ich verstehe trotzdem nicht, warum das nicht vom Software Entwickler entsprechend abgefangen wird. Die sollten doch wissen wieviel HW-Threads mindestens nötig sind und wenn es zu viele sind.
Ein Thread ist ja erstmal nichts anderes als abstraktes Model einer Abspaltung eines "Handlungsfadens" bzw. eines Ablaufs in einem Computerprogramm. Ein Thread selbst macht aber keine technische Zusicherungen.

Ein Entwickler kann daher nur sagen, dass er z.B. 16 Threads verwendet, quasi 16 Abläufe in einem Programm parallel ablaufen sollen. Er kann aber nicht entscheiden auf welchem Kern der Thread läuft, ob ein einzelner Thread jetzt auf einem echten oder einem virtuellen Kern läuft und ob der Thread nicht immer wieder zwischen verschiedenen Kernen hin- und her geschoben wird. Das entscheidet das OS.
 
Zuletzt bearbeitet:
20 Spiele laufen hingegen ohne SMT besser als mit SMT. In den meisten Fällen beträgt die Differenz der Durchschnitts-Fps weniger als fünf Prozent, hin und wieder entspricht die Stilllegung von SMT aber auch dem Lösen einer Handbremse. Während Doom Eternal um 14 Prozent beim P1-Perzentil zulegt, [..]

Hmmm, interessant.
Das mag erklären, warum das Spiel bei mir katastrophale Frametimes hat.
In dem Fall werd ich es mal wieder runterladen, SMT deaktivieren und ihm die... vierte Chance oder so geben.
 
@hrIntelNvidia
Nun verstehe ich auch warum es trotz Deaktivierung von smt das game noch immer Probleme hat. Das erklärt auch warum die einzelnen cores so 5 % auf dem oder 4 % auf dem core und 8 core auf 100 % liegt.die Entwickler haben also damit Probleme gehabt und Windows tut den Rest. Somit ist klar das es selbst nen 3950x ohne smt das game noch immer Probleme hat 16 threads so richtig auszulasten. Was weit weniger als nen 8 Kerner bedeutet und dennoch wird ein 8 Kerner empfohlen.
Ich verstehe es nicht. Muss ich wohl auch nicht.
 
Wobei ich das Problem eher bei Windows mit seine Thread hin und her schieberei sehe....

Hab das die Tage gesehen..
mw19 getestet mit 16 threats laut der config auf nem 5950x
Still auf der Map gestanden im privatspiel
Und man kann bei diversen Tools richtig sehen wie die einzelnen Kerne Hochspiken weil Windows ständig die Kernzuweisung hin und her schmeißt. (Cppc pref core disabled)
 
Ein Thread ist ja erstmal nichts anderes als abstraktes Model einer Abspaltung eines "Handlungsfadens" bzw. eines Ablaufs in einem Computerprogramm. Ein Thread selbst macht aber keine technische Zusicherungen.

Ein Entwickler kann daher nur sagen, dass er z.B. 16 Threads verwendet, quasi 16 Abläufe in einem Programm parallel ablaufen sollen. Er kann aber nicht entscheiden auf welchem Kern der Thread läuft, ob ein einzelner Thread jetzt auf einem echten oder einem virtuellen Kern läuft und ob der Thread nicht immer wieder zwischen verschiedenen Kernen hin- und her geschoben wird. Das entscheidet das OS.
Demnach müsste sich durch manuelle Zuweisung von Anwedungsthreads über den Taskmanager eine Leistungssteigerung besonders bei Spielen wie Anno nachweisen lassen, oder nicht?
 
Ich finde es sehr lobenswert, dass nun die mathematisch richtige Bezeichnung für das P1-Perzentil verwendet wird - bitte beibehalten

:pcghrockt:
 
Meiner Meinung nach liegt der Sweetspot im Moment in diesem Bereich, ja. Alles darüber hinaus skaliert vergleichsweise schlecht mit dem zusätzlichen Aufwand. Allerdings würde ich nach Budget durchaus mit einem Zwölfkerner liebäugeln (oder alternativ einen billigen Sechskerner in einer Platine mit 16-Kern-Aufrüstoption wählen), denn man kauft eine CPU ja meist nicht nur für die aktuellen Spiele. Während man als Besitzer eines guten Sechskerners heute noch keine Sorgen hat, würde ich die Neuanschaffung desselbigen also nicht mehr als langfristigen Kauf betrachten.

(Wie gesagt: Je nach Budget. Eine 6900 wird durch einen Ryzen 5 3000, geschwiege denn 2000, in manchen Situationen bereits leicht ausgebremst. Spätestens beim nächsten GPU-Upgrade verschenkt man dann vermutlich messbar Leistung. Aber wann wird der typische Budget-CPU-Käufer diese Grafikleistung haben? Vermutlich nicht vor 2022.)

Selbst mit einem höheren Budget finde ich es wirklich schwierig sich für den z.B. 5900X zu entscheiden.
Aktuell ist natürlich der deutliche Aufpreis zum 5900X eine Hürde im Allgemeinen und alternativen von Intel sind nicht wirklich existent in diesem Segment.
Aus Sicht von Gamern: Aktuell gibt es wirklich nur sehr wenig Games die von 12C wirklich profitieren und dieser Unterschied skaliert leider auch nicht "perfekt". Kann aber durchaus was ausmachen! Will ich nicht widersprechen. Wenn man auf jede Eventualität gewappnet seinen will, gibts keinen Weg um einen 12er Kerner. Wobei man selbst hier sagen muss, dass manche Spiele wie Anno auf einen CCX wie beim 5800X besser reagieren und dieser minimal vorne liegt.

Zudem hat es sich bis dato selten gelohnt auf die Mehrkernwette einzugehen. Der 5800X ist das beste Beispiel dafür, wenn man ihn mit seinen höher kernigen Zen2 Brüdern vergleicht.
Niemand weiß wie lange es dauert bis sich die Software angleichen wird. Es ist wahrscheinlicher, dass ein neuer 8 Kerner den 5900X schlägt bzw. ein günstiger 12 Kerner kommt in den nächsten 3-4 Jahren und in dieser Zeitspanne bottleneckt eher die GPU als die CPU.
Wenn man dann seine alte Plattform verkauft und sich die neue anschafft, hat man wahrscheinlich ein besseres P/L als sich einen 5900X zu kaufen (vor allem aktuell).
 
"Mehrkernwette": Das prominenteste Beispiel, das mir dazu einfällt, ist die Entscheidung zwischen Core 2 Quad Q6600 und Core 2 Duo E8400 vor vielen Jahren. Die Dinger waren eine Weile vergleichbar teuer, also stellte sich die Leistungsfrage (während die Leistungsaufnahme trotz des G0-Steppings klar für den Wolfdale sprach). Mittlerweile sucken beide, keine Frage. Zwischendrin gab es jedoch eine Zeit, in der man mit vier optimierten Kentsfield-Kernen irgendwo zwischen 3,2 und 3,6 GHz klar besser fuhr als mit einem Wolfdale @ 4+ GHz. Das passiert derzeit zwischen 4- und 6-Sechskernern und wird in einigen Jahren auch die Achtkerner einholen.

MfG
Raff
 
Ich verstehe trotzdem nicht, warum das nicht vom Software Entwickler entsprechend abgefangen wird. Die sollten doch wissen wieviel HW-Threads mindestens nötig sind und wenn es zu viele sind.

Wie im von dir soeben zitierten Post beschrieben:
Es gibt kein "mindestens" und selbst wenn es das gäbe, bräuchte es zusätzlich noch ein "maximal". In der Praxis geht es aber um das Zusammenspiel zwischen Spiel, Scheduler und CPU. Die Entwickler kennen das Spiel, aber nicht die Gegenseite – erst Recht nicht mit Blick auf die Zukunft.


@hrIntelNvidia
Nun verstehe ich auch warum es trotz Deaktivierung von smt das game noch immer Probleme hat. Das erklärt auch warum die einzelnen cores so 5 % auf dem oder 4 % auf dem core und 8 core auf 100 % liegt.die Entwickler haben also damit Probleme gehabt und Windows tut den Rest. Somit ist klar das es selbst nen 3950x ohne smt das game noch immer Probleme hat 16 threads so richtig auszulasten. Was weit weniger als nen 8 Kerner bedeutet und dennoch wird ein 8 Kerner empfohlen.
Ich verstehe es nicht. Muss ich wohl auch nicht.

Wenn die Auslastung so extrem ungleich ist, dass mehrere physische Kerne (also ein Pärchen aus zwei logischen) nur mit 4 Prozent ausgelastet sind, dann würde ich bei einem Ryzen 9 sogar mal eine CCD-Deaktivierung versuchen. Ein Kern, der so wenig zu tun hat, kann netto praktisch keine Rechenleistung beisteuern, aber die inter-CCD-Kommunikation kann Ryzens ausbremsen. Eine unnötige Bremse, wenn die Rechenleistung eines CCD bereits ausreicht.


Demnach müsste sich durch manuelle Zuweisung von Anwedungsthreads über den Taskmanager eine Leistungssteigerung besonders bei Spielen wie Anno nachweisen lassen, oder nicht?

Wenn Anno keine zusätzlichen Threads für weitere Kerne spawnt (oder diese keine Konflikte verursachen) kann die manuelle Zuweisung genauso helfen, wie eine UEFI-Änderung, ja. Wenn der Verwaltungsoverhead für viele Threads mit jeweils nur geringer Rechenlast das Problem ist, muss der Zugang zu den Kernen dagegen schon beim Start verweigert werden – das kann der Taskmanager nicht bieten, da hilft nur das UEFI.


"Mehrkernwette": Das prominenteste Beispiel, das mir dazu einfällt, ist die Entscheidung zwischen Core 2 Quad Q6600 und Core 2 Duo E8400 vor vielen Jahren. Die Dinger waren eine Weile vergleichbar teuer, also stellte sich die Leistungsfrage (während die Leistungsaufnahme trotz des G0-Steppings klar für den Wolfdale sprach). Mittlerweile sucken beide, keine Frage. Zwischendrin gab es jedoch eine Zeit, in der man mit vier optimierten Kentsfield-Kernen irgendwo zwischen 3,2 und 3,6 GHz klar besser fuhr als mit einem Wolfdale @ 4+ GHz. Das passiert derzeit zwischen 4- und 6-Sechskernern und wird in einigen Jahren auch die Achtkerner einholen.

MfG
Raff

Naja. Das ist aber auch ein Vergleich mit 100 Prozent mehr Kernen und massivem Taktunterschied. Würde AMD heute einen Ryzen 9 5905X mit nominell 2,5 GHz zum Preis des 5800X anbieten, wäre das auch ein Nobrainer. Aber stattdessen stehen heute nur noch maximal getaktete CPUs im Laden und die Preise werden über die Kernzahlen skaliert. Der offizielle Nachteil des Q6600, die taktbedingt schlechte Single-Core-Leistung konnte man mit OC ausgleichen. Aber wie kompensiert man den Preis des 5950X? Das ist eher ein Situation wie zwischen E8400 und QX9650: Beide mit hohem Takt, einer mit doppelt so vielen Kernen aber auch so schweine viel teurer, dass die E8400-Käufer ein paar Jahr später einen i5-2500K nebst Board vom gesparten Geld kaufen konnten. Und der ist gegenüber einem QX9650 klar vorzuziehen.
 
Moin,

interessanter Artikel.
Ich hatte in den letzten Wochen die Gelegenheit folgende Konfigurationen zu testen. (Schwerpunk war Cyberpunk)

1800x + 2080Super
3900XT + 3080
1800X + 3080
10900k + 3070
5950X + 3080

Die AMD CPUs haben deutlich davon profitiert SMT abzuschalten. (bei dem 10900k sank durch HT off zumindest die Temperatur deutlich, den konnte ich allerdings nur kurz testen und Cyberpunk ist auch definitiv eines der Spiele, was davon profitieren kann, aber nur bei höherer Kernzahl) Nach meinen Versuchen bin ich auch davon ausgegangen, dass es für die reine Spieleleistung generell eher von Vorteil ist SMT / HT auszuschalten als von Nachteil. In vielen Spielen sind die MIN FPS und Frametimes besser. In wenigen Fällen verliert man marginal Leistung. In manchen Fällen steigt die Leistung deutlich. Ihr hab das besser untersucht und belegt als ich das hier erklären könnte, vorallem da ich nicht emprisisch genug vorgegangen bin.

Am Ende hab ich mir, als Folge dieser Erkenntnisse, den 5950X gegönnt um ihn ohne SMT als 16 Kern Spiele CPU laufen zu lassen.
Samstag ist er gekommen. Die Spieleleistung ist unfassbar hoch. Selbst der 10900k war spürbar schwächer in Cyberpunk.
Dort hatte ich noch gelegentliche Framedrops beim rumfahren durch die Stadt. (Einstellungen hoch bis ultra, Raytracing Ultra, WQHD, Bevölkerungsdichte hoch) Mit dem 5950X ist das Geschichte. Es ist natürlich zutiefst dekadent. Aber diese bombastische Grafik mit stabilen 65 - 70 FPS absolut geschmeidig, und ohne jegliche Drops, zu genießen hat was. Ohne die CPU wäre das nicht möglich gewesen.
Dabei ballern allerdings auch 600 Watt durch die Steckdose.

Long Story Short, ich bin rein rießen Fan von SMT off ;-)
 
Zuletzt bearbeitet:
Zurück