AMD Ryzen: Windows 10 kennt AMD-SMT, aber nicht die CCX

141
News Mark Mantel Als bevorzugte Quelle auf Google hinzufügen
AMD Ryzen: Windows 10 kennt AMD-SMT, aber nicht die CCX
Quelle: PC Games Hardware

Tests haben ergeben, dass der Scheduler von Windows 10 durchaus das SMT von AMDs Ryzen-CPUs erkennt und die Last auf diesen richtig verteilt. Probleme gibt es jedoch bei der CCX-Bauweise, die Windows 10 nicht kennt: Wechseln Threads zwischen den zwei 4-Kern-Clustern, kommt es zu massiv höheren Latenzen.

Die Webseite pcper.com hat in ersten Tests überprüft, woran es liegen könnte, dass Ryzen-CPUs mit Windows 7 teils deutlich schneller sind als mit Windows 10. Eine These beinhaltete die Erkennung der logischen Threads durch SMT. Windows 10 hat im Gegensatz zu Windows 7 den Bulldozer-"Fix" integriert, bei dem zusammenhängende Threads auf dasselbe Modul gelegt werden. Hätte Windows 10 Ryzen wie Bulldozer behandelt, wären die logischen Threads bevorzugt mit Arbeit versorgt worden. Diese These konnte pcper.com widerlegen.

In den Datenträgertests mit Ryzen-CPU fiel auf, dass wiederholt die "richtigen" Threads belastet wurden. Durften 16 Threads beim Test arbeiten, wurde pro physisch vorhandenen Kern je ein Thread nahezu voll ausgelastet. Die Last auf dem jeweils zweiten Thread stieg nur analog zu einer Senkung auf dem ersten. Wurde ein Limit von acht Threads für die Tests eingestellt, hat der Scheduler ebenfalls alle acht Kerne korrekt ausgelastet und nicht etwa virtuelle Threads oder vier von acht Kernen.

In einem zweiten Test hat pcper.com ein kleines Programm geschrieben, mit dem sich Workloads auf beliebige Threads legen lassen, ohne dass die CPU tatsächlich viel berechnen musste. Die Webseite hat die Zeiten bis zu einer Antwort gemessen und möchte so die Latenzen erfahren haben, wenn ein oder mehrere Threads belastet werden. Das Fazit beweist, was man laut Theorie erwarten konnte: Die Kommunikation innerhalb eines CPU Complexes (CCX) bestehend aus vier Kernen und Caches ist mit bis zu 45 Nanosekunden sehr schnell. Wechselt jedoch ein Threads zwischen den beiden CCX, steigt die Latenz um rund 100 ns. Kennt Windows 10 oder eine Anwendung mit eigenem Scheduler die CCX-Bauweise nicht und wechselt die Threads zwischen den CCX, kann die Performance je nach Häufigkeit der Wechsel mehr oder weniger stark einbrechen.

Latenzen AMDs CCX vs. Intels Ring-Bus
Latenzen mit AMDs CCX
Latenzen mit AMDs CCX Latenzen mit Intels Ring-Bus

Am Rande sei erwähnt, dass der Test wunderbar die Vor- und Nachteile von AMDs CCX- und Intels Ring-Bus-Ansatz zeigt: AMD hat niedrige Latenzen innerhalb eines CCX, aber hohe darüber hinaus. Intel hat eine höhere Latenz von circa 80 ns, die dafür auf allen Kernen konstant bleibt.

Vorerst ist klar, dass Windows 10 mit AMDs SMT umgehen kann. Die CCX-Problematik lässt sich grundlegend mit Patches lösen, erfordert aber einen gewissen Aufwand seitens Microsoft beziehungsweise Spieleentwicklern. Unklar ist, warum Windows 7 bessere Leistungswerte als das aktuelle Betriebssystem zutage fördert und ob das mit den CCX zusammenhängt.

Empfohlener redaktioneller Inhalt [EMBED_URL] An dieser Stelle finden Sie externe Inhalte von [PLATTFORM]. Zum Schutz Ihrer persönlichen Daten werden externe Einbindungen erst angezeigt, wenn Sie dies durch Klick auf "Alle externen Inhalte laden" bestätigen: Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit werden personenbezogene Daten an Drittplattformen übermittelt. Mehr dazu in unserer Datenschutzerklärung.
Externe Inhalte Mehr dazu in unserer Datenschutzerklärung.
141
    • Kommentare (141)

      Zur Diskussion im Forum
      • Von Khabarak Volt-Modder(in)
        Zitat von mrmurphy007
        Aber wann wussten sie bescheid? Die Biosprobleme stemmen ja auch daher, dass die Hersteller sehr wenig Zeit hatten, um zu optimieren. Zumal es auch um die Kommunikation der zwei CCX-Einheiten geht und nicht nur die Zuordnung der Threads.
        Wenn man bedenkt dass die Xbox One Scorpio sehr wahrscheinlich ein Ryzen Herz, gepaart mit Vega iGPU haben wird, dürfte Microsoft schon ziemlich lange über Ryzen informiert sein.
        Die Frage ist nur: hat die Abteilung für Konsolen mit der Abteilung für Desktop OS gesprochen?
      • Von Khabarak Volt-Modder(in)
        Zitat von mrmurphy007
        Aber wann wussten sie bescheid? Die Biosprobleme stemmen ja auch daher, dass die Hersteller sehr wenig Zeit hatten, um zu optimieren. Zumal es auch um die Kommunikation der zwei CCX-Einheiten geht und nicht nur die Zuordnung der Threads.
        Wenn man bedenkt dass die Xbox One Scorpio sehr wahrscheinlich ein Ryzen Herz, gepaart mit Vega iGPU haben wird, dürfte Microsoft schon ziemlich lange über Ryzen informiert sein.
        Die Frage ist nur: hat die Abteilung für Konsolen mit der Abteilung für Desktop OS gesprochen?
      • Von mrmurphy007 Software-Overclocker(in)
        Zitat von SaPass
        Das ist mir durchaus bewusst. Daher war ja auch meine Frage, ob man das nicht irgendwie Nachstellen kann, wenn man im Taskmanager den Anwendungen nur die Nutzung bestimmt Kerne erlaubt (1 CCX vs 2 halbe CCX). Sofern dies in Benchmarks funktioniert, kann man schon heute eine grobe Aussage darüber Treffen, ob und wie viel die Optimierung bringt.
        Die Voraussetzung dafür ist, dass nur der L3-Cache des aktiven CCX benutzt wird.

        Zitat von Khabarak
        AMD hat mit der Zuordnung der Threads in Windows nichts zu tun.
        Microsoft wusste garantiert bescheid.. immerhin wird XBox Scorpio wahrscheinlich einiges von Zen verwenden, genau wie sie Vega Technik verwenden.
        Aber wann wussten sie bescheid? Die Biosprobleme stemmen ja auch daher, dass die Hersteller sehr wenig Zeit hatten, um zu optimieren. Zumal es auch um die Kommunikation der zwei CCX-Einheiten geht und nicht nur die Zuordnung der Threads.
      • Von Khabarak Volt-Modder(in)
        Zitat von mrmurphy007
        AMD wusste sicher um die Problematik und hatte entweder nicht die Zeit oder die Kapazitäten um rechtzeitig eine Lösung zu entwickeln.
        AMD hat mit der Zuordnung der Threads in Windows nichts zu tun.
        Microsoft wusste garantiert bescheid.. immerhin wird XBox Scorpio wahrscheinlich einiges von Zen verwenden, genau wie sie Vega Technik verwenden.
      • Von SaPass BIOS-Overclocker(in)
        Zitat von OnkelDrops
        Da ein R7 aus 2 CCX ( sind es auch 2 L3 Caches), sollte jetzt ein Kern mit einem anderen Kern ( anderer CCX) zusammenarbeiten drosselt dieses . am effektivsten wäre die Nutzung eines CCX da so keine Kommunikation zwischen den CCX drosselt. Aber an der Kommunikation und deren Latenzen ( Geschwindigkeit) kann sich durch Optimierungen schon noch was ändern. Nur wieviel dabei optimiert werden wird ist Glaskugel Sache.
        Das ist mir durchaus bewusst. Daher war ja auch meine Frage, ob man das nicht irgendwie Nachstellen kann, wenn man im Taskmanager den Anwendungen nur die Nutzung bestimmt Kerne erlaubt (1 CCX vs 2 halbe CCX). Sofern dies in Benchmarks funktioniert, kann man schon heute eine grobe Aussage darüber Treffen, ob und wie viel die Optimierung bringt.

        Jetzt fehlt mir nur noch ein AMD Ryzen zum Probieren.
      • Von mrmurphy007 Software-Overclocker(in)
        AMD wusste sicher um die Problematik und hatte entweder nicht die Zeit oder die Kapazitäten um rechtzeitig eine Lösung zu entwickeln.
      Direkt zum Diskussionsende
  • Print / Abo
    Apps
    PCGH Magazin 07/2026 PC Games 07/2026 play5 07/2026 N-Zone 07/2026 Linux Magazin 07/2026 LinuxUser 07/2026 Raspberry Pi Geek 07/2026
    PC Games Hardware PC Games Linux Magazin Raspberry Pi Geek Computec Kiosk