Es klingt zumindest so. Allerdings wird der Nutzen bei Programmen, die alle Cores nutzen, gegen Null gehen.
Naja, wenn du Last erzeugst ohne groß Memory Zugriffe respektive primär Cache gepuffert, dann bringt das dort wahrscheinlich nix. Betreibst du aber Mischumgebungen, wo du vllt neben deinem Renderjob noch ein Spielchen laufen hast, könnte das schon funktionieren.
Die Manuelle Pinmethode funktioniert aber eh immer. Und die nutzt man wahrscheinlich auch wenn man so ne CPU nutzt.
Mal eine Frage aus Unwissenheit: Warum gibt es hierfür eine extra Software, müsste sowas nicht tief im Windows Kerner eingebaut werden? CPU Zuweisung ist doch etwas sehr hardwarenahes oder?
Der Prozessor "gaukelt" dem OS vor, es wäre ein 4x NUMA Design, bringt aber nur an 2x der 4x Nodes eigenen Speicher mit.
Das wohl größte Problem von Windows ist das Threadgeschubse.
Wenn MS da aber nix hardcoded, wird es schwierig bei diesen Bedingungen das via Scheduler zu lösen. Was genau das Ding hier bei AMD macht, ist ja nicht ganz klar, oder?
Möglicherweise pinnt es auch nur die Threads - oder der Spaß geht noch tiefer. Dieses Turbo 3.0 Ding von Intel da pinnt ja auch Threads - teils mit negativen Auswirkungen, weil eben dann auf 1-4 Threads fix gepinnt wird und damit der Takt zwar steigt für den Core, die Leistung absolut aber sinkt, weil bisschen MT doch mehr gebracht hat...
Was noch dazu kommt ist die Tatsache, dass die "Leute" meist versuchen das Design abseits der Grenzen und Limitierungen mit der Brechstange für andere Einsatzzwecke zu missbrauchen. Normalerweise kommen da nur die wenigsten auf die Idee - aber im Clientbereich haben die Leute davon schlicht keinen Plan (meist). Ein 4x NUMA Design hat halt 4x NUMA Nodes. Und wer da ein Single non NUMA aware Task mit 64 Threads drauf fahren will, weil das Ding nunmal 64 Threads in Summe kann - bricht mit den Grenzen des Designs -> und muss sich dann mMn auch nicht wundern, wenns scheiße läuft.
Leider sind aber die Zahlen die man da ließt pures Marketing. Denn nicht der non NUMA aware Software-Wert ist 100%, sondern normalerweise sollte eine NUMA aware Software/Bench bei Nutzung eines Multi-NUMA Designs die Basis sein. Und ausgehend von dieser Basis kommt die Umsetzung mit dem Dienst dann an so und so viel Prozent ran... AMD suggeriert aber hier x% Performancegewinn, obwohl nichts gewonnen wird - es wird ja deswegen nicht schneller. Die mit bisschen Abstand schnellste Lösung bleibt ne NUMA aware Software.
@NasaGTR: Afaik ist das ein Windows-Problem, das sich wohl unter Linux so gar nicht erst stellt. Deswegen wohl auch der Performancevorsprung von TR II unter Linux:
A Look At The Windows 10 vs. Linux Performance On AMD Threadripper 2990WX - Phoronix
Ganz so einfach ist das aber auch nicht...
Auch Linux unterliegt den Restriktionen des Hardware Designs. Schau dir mal im Vergleich dazu die Werte bspw. der 2700X Linux/Win10 Vergleiche an. Da sind auch paar Benches bei, die laufen absolut ohne jegliche NUMA Themen auf der Linux Umsetzung einfach weit schneller (sogar in ähnlichem Maßstab zu den TR Werten) -> Blender ist so ein Fall wo das seit Jahren bekannt ist. "Minion" aus dem Test ist auch so ein Fall.
Ist am Ende schwer das passgenau zu vergleichen, da funkt einfach ne Menge mit rein und kleinste Details können große Wirkung haben. Um so schwerer ist am Ende da ein Urteil zu fällen. Denn oft ist das dann eben nicht auf eine Pauschale eingrenzbar. OpenMP lässt sich bspw. als einer der Gründe benennen. Je nachdem, gerade bei bezahlmich oder Drittanbieter Software ist meist der Spaß für Windows precompiled fix und fertig, während du die Linux Version nicht selten völlig frei compilieren kannst - mit allen guten wie schlechten Optimierungen.