Frage Warum ist SMT für die meisten Spieletitel kontraproduktiv?

GR1N

Veteran
Mitglied seit
Jun 13, 2020
Beiträge
176
Bewertungspunkte
25
Punkte
29
Standort
Bayrisches Hoheitsgebiet
Hallo zusammen,

habe nun seit fünf Monaten einen Ryzen 7 3700x.
Mir ist aufgefallen dass ich bei fast allen Spieletiteln, egal wie alt oder neu Framedrops mit SMT habe.
Mit der alten 1660S welche nur vier Monate verbaut war, fielen diese wesentlich geringer aus als mit der neuen XFX RX 6800XT. Ohne SMT sind es Welten Unterschied.
In den besten Fällen sind sogar ohne SMT 30-50 Fps mehr drin.
Das System ist softwaremäßig auf dem neuesten Stand (Bios/Treiber/Win-Updates).

Habt ihr mit euren CPUs gleiche Erfahrungen?
Gibt es evtl. schon Updates/Neuigkeiten/Lösungen zu diesem Problem da ich dazu nichts gefunden habe?
Liegt das Problem beim Cpu-Hersteller, bei den Spiele-Entwicklern oder doch am Betriebssystem?
 
Habt ihr mit euren CPUs gleiche Erfahrungen?
Gibt es evtl. schon Updates/Neuigkeiten/Lösungen zu diesem Problem da ich dazu nichts gefunden habe?
Liegt das Problem beim Cpu-Hersteller, bei den Spiele-Entwicklern oder doch am Betriebssystem?

1. Ich habe die selbe CPU allerdings habe ich keinerlei Probleme mit Framedrops.
2. Ein Bios Update kann helfen muss aber nicht.
3. Das Problem wird an Win10 liegen und ja es gibt auch spiele die haben Probleme mit SMT es sind gefühlt nur die ältere spiele 8j+ .

Fragen über Fragen..
Wann wurde Win10 neu aufgesetzt?
Wie hoch sind die Temperaturen von Gpu und Cpu unter normaler Last?
Wurde der alte Nvidia Treiber deinstaliert bevor die Neue AMD eingebaut wurde?
Sind die Spiele auf einer SSD den daran könnte es auch liegen?
 
1. Ich habe die selbe CPU allerdings habe ich keinerlei Probleme mit Framedrops.
2. Ein Bios Update kann helfen muss aber nicht.
3. Das Problem wird an Win10 liegen und ja es gibt auch spiele die haben Probleme mit SMT es sind gefühlt nur die ältere spiele 8j+ .

Fragen über Fragen..
Wann wurde Win10 neu aufgesetzt?
Wie hoch sind die Temperaturen von Gpu und Cpu unter normaler Last?
Wurde der alte Nvidia Treiber deinstaliert bevor die Neue AMD eingebaut wurde?
Sind die Spiele auf einer SSD den daran könnte es auch liegen?
Wurde vor zwei Wochen alles komplett neu aufgesetzt und vorher formatiert. Temperaturen sind bei 55-65°
Alles auf einer FireCuda 510 1TB M2 (2 Partitionen).
Board ist ein RoG Strix 550B E-Gaming.

Wenn es die ssd wäre, müsste es dann nicht bei ausgeschalteten smt auch sein?

Ältere Titel? Aassassins Creed Odyssey, SW Battlefront 2, Metro Exodus, Mafia D.E. etc sind nur um mal Beispiele zu nennen nicht über 8 Jahre alt...
 
Wenn es die ssd wäre, müsste es dann nicht bei ausgeschalteten smt auch sein?
Normal Ja.
Alles auf einer FireCuda 510 1TB M2 (2 Partitionen).
Auf der die Spiele sind sollte noch min 50GB frei sein.

Wurde vor zwei Wochen alles komplett neu aufgesetzt und vorher formatiert. Temperaturen sind bei 55-65°
Das ist schon mal gut.

Wie verhalten sich die FPS wenn du die GPU mit 4k und max einstellungen belastet wird und einmal in den niedrigsten Einstellungen in 720p damit nur die CPU belastet wird achte dabei auf die Temperaturen und Taktraten.

Hast du eventeuell PBO im Bios aktiviert?

Ist der 3700X neu mit geschlossenen siegel oder gebraucht gekauft?

Die aktuellste Bios version ist Version 1804 vom 2021/02/08.
 
Speicher ist genügend frei.
Im Schnitt:
Bei 4k max ist Gpu bei 70-75° und Hotspot 87-90°, voller Auslastung und taktet normal bei ca 2350mhz, der Vram bei ca. 1980mhz und 11-12Gb. Cpu ist bei ca 25% und ca. 55°

Bei 720p min ist Gpu bei ca.55° sowie der Hotspot bei 60, ca 60% Auslastung, Gpu Takt 1100-1350mhz, Vram 1980mhz und 3000-4500mb Auslastung.
cpu ist vei 60-70% Auslastung und ca 65°. Die Fps Schwankungen sind nicht weniger stabil als bei 4k. Zumindest kommt es mir so vor.

PBO sind alle Einstellungen auf Auto, dies war aber schon von Haus aus und ich hab nichts geändert.
Cpu läuft momentan auf Auto Core Ratio. Hatte anfangs 42 probiert, da es keine Leistungssteigerung brachte, außer mehr Punkte im Mark hab ich's wieder auf Auto.

Cpu wurde neu gekauft mit geschlossenem Siegel.

genau die neueste Uefi-Version ist drauf
 
Zuletzt bearbeitet :
Eine sache fällt mir noch ein ist der Ram mit dem richtigen Taktraten/Timing eigestellt und er läuft nicht über.

Ich glaube es ist einfacher SMT im Bios auszuschalten dann ist ruhe. (y)
 
Ist das System mit UEFI/GPT oder CSM/MBR installiert?
kannst unter Datenträgerverwaltung nachsehen ob GPT oder MBR. Ein muss für SMT ist GPT und UEFI.
im BIOS muss UEFI ausgewählt sein, einfaches umstellen geht leider nicht, da musst mal hier lesen:

Benutzt du zufällig den GOG Galaxy Launcher oder ähnliche Overlay Launcher, die Steam und Co Spiele starten können?

AMD Chipsatz Treiber und BIOS sind aktuell?

Lass mal userbenchmark.com laufen und poste den Link deines Ergebnisses
z.B. https://www.userbenchmark.com/UserRun/28977730

checke die Windows Integrität
öffne die Eingabeaufforderung als Administrator und schreib rein: DISM /Online /Cleanup-Image /RestoreHealth
https://www.lifewire.com/how-to-open-an-elevated-command-prompt-2618088
https://answers.microsoft.com/en-us...em-files/bc609315-da1f-4775-812c-695b60477a93

clean boot

RAM testen: memtest.org usb autoinstaller (bootable USB flash drive)

Festplatten mit deren Herstellertool testen und evtl. Firmware updaten
 
Zuletzt bearbeitet :
ich denke es liegt am Win10 und der thread verteilung, es berücksichtigt einfach nicht die lastverteilung über die realen kerne >da werden einzelne kerne mit 2 threads voll ausgelastet anstatt die Last über mehr Kerne zu verteilen. einige spiele haben ohne smt bei mir auch deutlich mehr fps
 
@helpstar
Hast du da nähere Informationen wie das UEFI das SMT beeinflusst?
Userbenchmark gehört mit der künstlichen Intel-Bevorzugung eigentlich boykottiert, eine furchtbare Seite.
 
@helpstar
Hast du da nähere Informationen wie das UEFI das SMT beeinflusst?
SMT SAM funktioniert nur mit UEFI/GPT. Ohne UEFI kein GPT folglich ohne GPT kein SAM

SORRY, kleine Verwechslung meinerseits im Abkürzungsjungle :LOL: SMT ist natürlich nit identisch mit SAM

Userbenchmark gehört mit der künstlichen Intel-Bevorzugung eigentlich boykottiert, eine furchtbare Seite.
Wenn man nicht auf die Ergebnisse an sich zum Vergleichen schaut, ist das die beste Datenbank die mir bekannt ist. Es ist ein kleines Tool, welches alle möglichen Daten abfragt (bis auf Temperaturen). BIOS Version, Treiberversionen, genaue Hardwarekonfig (Speichermodell, CPU, GPU, Festplatten, Firmware der Festplatten), grobe Probleme sind direkt ersichtlich und das alles in einem Link und nicht per Screenshot oder ähnlich. Außerdem kann man Kompatibilitäten checken, z.B. ob die GPU überhaupt bei nem anderen User mit gleichem Mainboard schon funktioniert hat und mit welcher BIOS Version.
Daher bin ich sehr von diesem Tool überzeugt. Wenn man nur wissen will, ob die Hardware die man selbst benutzt auch so tut, wie es bei anderen tut, ist das das richtige. Wenn man zwischen verschiedenen Systemen benchmarken will, nimmt man eher 3dmark oder Cinebench und co.

EDIT:
vielleicht auch ganz interessant:
 
Hallo 6R1N

Ich habe erst auch gedacht es geht um SAM, weil dauernd danach gefragt wird. :)

Ich habe mit vor ein paar Jahren mit dem Thema SMT im Zusammenhang mit dem Flightsimulator FSX auseinander gesetzt. Da kann man verschiedene Einstellungen vornehmen um das zu beeinflussen.

Erst muss man einmal wissen, was SMT genau ist. Die Porzessoren von Intel und AMD lösen das technisch etwas unterschiedlich, aber das Grundprinzip ist das selbe. Hyperthreading ist eine Technik, mit der zwei Prozess-Stränge gleichzeitig auf einem Core laufen können. Bei der Ausführung eines Befehls werden zuerst die nötigen Daten gesammelt, dann wird der Befehl ausgeführt und danach werden die Resultate abgelegt. Bei Prozessoren mit Hyperthreading ist ein Teil der Prozessorstruktur doppelt ausgeführt. Jeder Core hat zwei Eingänge, die ihm die Befehle vorbereiten. Der Core bearbeitet diese dann abwechselnd. Zum Ablegen der Daten sind ebenfalls zwei Ausgänge vorhanden. So muss der Core weniger auf die eingehenden und ausgehenden Daten warten. Wenn ein herkömmlicher Core auf Daten warten muss, bearbeitet er einfach Befehle des anderen Eingangs. Dadurch hat ein Core mit Hyperthreading etwa 1½ mal so viel Leistung wie ein Core ohne. Diese Leistung verteilt sich aber auf zwei Stränge (Threads) die dem entsprechend etwa 3/4 der Leistung haben.

Die beiden Eingänge eines Cores unterscheiden sich nicht von einander. Für beide ist genau die gleiche Hardware verbaut. Auch Windows behandelt beide gleich und verteilt die auszuführenden Prozesse flexibel auf die verfügbaren Threads. Ein Programm merkt nicht, auf welchem Thread es ausgeführt wird. Es gibt nicht - wie manche behaupten - einen normalen physischen Thread und einen virtuellen Hyperthread der schlechter läuft als der richtige.

Somit ist SMT nur eine Angelegenheit der CPU selbst. Andere Hardware hat damit nichts zu tun. Am meisten Einfluss darauf hat die Programmierung eines Games. Um ein Programm multicorefähig zu machen, muss man eine Programmierumgebung verwenden, die das umsetzen kann. Dazu muss der Programmierer das Programm so organisieren, dass Teile der Arbeit unabhängig auf einem anderen Core ausgeführt werden können. Viele Games haben einen Kernprozess, der sich nicht auf verschiedene Core aufteilen lässt. Wenn bei der Programmierung zu wenig darauf geachtet wurde, dass viele Kerne verwendet werden können, dann bliebt viel Arbeit an ein oder 2 Core hängen. Das kann dann das ganze Game limitieren. Die anderen Kerne hätten wohl noch Zeit, aber sie bekommen vom Hauptprozess keine Arbeit zugeteilt. Bei älteren Games trifft man das häufiger, aber auch neue sind nicht immer gut programmiert.

Wenn der Hauptprozess allein auf einem Kern läuft, bekommt er die vollen 100 % der Leistung. Wenn daneben aber auf dem selben Kern noch ein Prozess läuft, teilt er sich die Leistung mit diesem und bekommt nur etwa 75 % Leistung. Darum kann es in solchen Fällen besser sein, SMT abzuschalten damit der Hauptprozess die volle Leistung eines Kerns bekommt. Da sich dadurch die Anzahl Threads halbiert, kann es aber zu anderen Engpässen kommen.

Windows hat auch einen Einfluss darauf, weil es die Threads auf die Kerne verteilt. Man kann teilweise auch über den Taskmanager, Tools oder Einstellungen der Games Einfluss auf die Zuteilung der Kerne nehmen. Meist sind die Möglichkeiten aber recht beschränkt und man kann nicht viel heraus holen. SMT im BIOS ausschalten ist nicht ideal, aber wenigstens zuverlässig.
 
Der Userbenchmark zeigt, dass die SSD nur noch gut 10 % freien Platz hat. Wenn nur so wenig Platz frei ist, kann die SSD nicht mehr so viel Cache anlegen und muss dauernd umorganisieren. Dadurch wird sie spürbar langsamer und verschleisst auch schneller. Auch der eine Test ist nicht durchgelaufen, weil es zu wenig Platz hatte. Wenn möglich würde ich mindestens 50 GB löschen und dann den Test nochmals laufen lassen.

Sonst läuft alles wie erwartet.
 
Der Userbenchmark zeigt, dass die SSD nur noch gut 10 % freien Platz hat. Wenn nur so wenig Platz frei ist, kann die SSD nicht mehr so viel Cache anlegen und muss dauernd umorganisieren. Dadurch wird sie spürbar langsamer und verschleisst auch schneller. Auch der eine Test ist nicht durchgelaufen, weil es zu wenig Platz hatte. Wenn möglich würde ich mindestens 50 GB löschen und dann den Test nochmals laufen lassen.

Sonst läuft alles wie erwartet.
Seltsam ist nur dass die Probleme schon waren als noch 500GB frei waren. Ich versuche es bei Gelegenheit aber dennoch. Zwecks firmware update hab ich von seagate noch nichts gefunden.
Sollte es damit zusammenhängen dann wird natürlich eine zweite m2/ssd verbaut
 
Eine fast volle SSD oder eine HD kann Ruckler verursachen oder zu fehlenden Texturen führen, weil beim Nachladen von Landschaft zu lange gewartet werden muss. Das hättest du dann aber mit und ohne SMT. Die SSD hat somit keinen Einfluss auf das Verhalten, das du oben beschreibst. Natürlich sollte die SSD gut laufen.

Die Unterschiede mit und ohne SMT werden aber bleiben. Das ist nun mal durch die Bauart der CPU und durch die Programmierung der Games gegeben. Man kann BIOS, Chipsatztreiber und Windows aktualisieren, aber das macht meist nichts aus. Dann kann man in Foren der Games nach Tipps suchen. Bei einzelnen gibt es Möglichkeiten etwas zu beeinflussen. Bei den meisten hat man aber keine Möglichkeit. Auch Einstellungen im Taskmanager (Core zuordnen, Priorität ändern) bringt wenig, denn Windows macht seine Arbeit normal schon gut und gibt dem aktiven Programm die volle Leistung und lässt Hintergrundaufgaben nur laufen wenn sonst nichts los ist.

Es bleibt vor allem die Einstellung SMT ein/aus im BIOS die wirklich etwas verändert.
 
Das Problem liegt an den Spielen selbst, daher sind manche etwas besser damit und viele nicht so gut wie ohne
 
Simpel ausgedrückt bedeutet ja SMT, dass ein Kern seine Leistung auf zwei Threads verteilt. Ohne SMT fokussiert der Kern seine Leistung auf einen Thread und kann hier die bessere Singlecore-Leistung geben, da er nicht "abgelenkt" wird.
Du hast nun bei deaktiviertem SMT nur noch 8 Threads statt 16, aber dafür 8 etwas stärkere Threads. Solange nicht zu viele Programme im Hintergrund laufen, die Leistung schlucken, oder das Spiel nicht mehr als 8 Threads in Anspruch nehmen kann, ist davon auszugehen, dass man die Leistung so steigern kann. Da viele Spiele der letzten Jahre noch auf maximal die klassischen i7-Prozessoren mit 4 Kernen und 8 Threads optimiert sind, ist man mit 8 starken Threads meistens sehr gut aufgestellt. Im Nachteil ist man so nur bei Spielen, die mehr Threads nutzen können. Diese wird es in Zukunft immer öfter geben, aber das müsste eben ausprobiert werden. Aktuell stehen die Chancen noch sehr gut, ohne SMT die höhere Spieleleistung zu erreichen.
Für Multithreading-Aufgaben, wie Videobearbeitung, ist man aber mit SMT besser aufgestellt.
 
Ahje lange her für den Artikel... aber ich mag dennoch für 2022 einen Beitrag abgeben, denn ich glaube das mit Modernen Titeln immernoch etwas besseres spielverhalten herausgeholt werden kann wenn man eben SMT Deaktiviert.
Und damit meine behauptung nicht nur so hörensagen herüberkommt, werde ich Screenshots anhängen von CapFrameX.
Mein System:
Ryzen 7 3700X
16gb Ballistix 3600mhz cl16
RX 580 8gb
Kein OC weder Graka noch CPU!
Aktuelle Treiber auf Windows 11 21h2

Spiel: Assetto Corsa Competizione (GT3/4 Simulations Rennspiel mit Mittleren Settings und 1st gen FSR auf Optimum)
 

Anhänge

  • Screenshot (1337).png
    Screenshot (1337).png
    702,3 KB · Aufrufe : 9
  • Screenshot (1338).png
    Screenshot (1338).png
    795,9 KB · Aufrufe : 9
  • Screenshot (1339).png
    Screenshot (1339).png
    697,6 KB · Aufrufe : 9
  • Screenshot (1340).png
    Screenshot (1340).png
    749,9 KB · Aufrufe : 5
  • Screenshot (1341).png
    Screenshot (1341).png
    701,3 KB · Aufrufe : 6
Und hier noch die restlichen 4 Bilder =)
Man erkennt einen leichten drop der FPS aber da ich 4K auf 60Hz Spiele ist es noch immer ausreichend für mich.
 

Anhänge

  • Screenshot (1342).png
    Screenshot (1342).png
    763,7 KB · Aufrufe : 5
  • Screenshot (1343).png
    Screenshot (1343).png
    639,3 KB · Aufrufe : 4
  • Screenshot (1344).png
    Screenshot (1344).png
    686,5 KB · Aufrufe : 4
  • Screenshot (1345).png
    Screenshot (1345).png
    644,6 KB · Aufrufe : 8
@Fab
Das ist ja auch logisch.
1. Kostet SMT Takt,daher auch weniger FPS.
2. Wird im Kern immer wieder verschoben was die Fram Times erhöht.
 
Oben Unten