"Genutzt" war wohl tatsächlich der falsche Ausdruck, es gibt aber keine Spiele die Numa affin entwickelt werden, warum auch?
Daher wird die Leistung wohl (stark) verringert wenn Prozesse zwischen den CPUs hin und her geschoben werden.
Das kann man so pauschal nicht sagen... Es hängt von vielen Faktoren ab, Software, die wenig Cache/Speicherlastig ist, wird sich davon weitestgehend unbeeindruckt zeigen. Kommt dann noch hinzu, das die "Workerthreads" mehr oder weniger unabhängig von einander arbeiten, dürfte der Nachteil effektiv gegen Null gehen.
Warum? Anwendung fordert Rechenzeit von der CPU durch lasterzeugende Threads, das OS schubst diese auf die CPUs los, die CPUs rechnen und irgendwann kommt ein Ergebnis hinten raus, dann wird der Thread terminiert und ggf. ein anderer/neuer dafür aufgemacht -> und weiter gehts.
Anders schaut das bei Software aus, die Threads sehr lange am Leben hält, wo große Datenmengen durch die Caches fließen und vor allem, wo die Threads starke Abhängigkeiten zueinander haben. NUMA ist ja nicht "nur" Speicher vom anderen Prozessor. Real geht es ja dabei gerade auch um Cachezugriffe. Wenn ich da mal keine Ahnung, 20MB L3 Cache Inhalt "benötige", die aber auf nem anderen Prozessor im Cache liegen, muss entweder über den langsameren Interconnect zugegriffen werden oder die Software holt die Daten in den eigenen Cache.
Sinnvollerweise sollte man, wenn man solche Systeme ansprechen möchte, möglichst derartige Konstruke verhindern/vermeiden... Also eher Ursachenbekämpung anstatt reagierende Maßnahmen.
Ich habe bspw. Jahrelang mit nem Dual Xeon Setup gearbeitet. 2x Dualcore, später 2x Quadcore auf Core2 Basis. Das geht schon... Der hat zwar den Memory am Chipsatz klemmen, die Cachezugriffsproblematik ist dort aber (sogar schlimmer noch, durch den lahmen FSB) ebenso gegeben. Zwingt man bspw. SuperPI (was ja eigentlich nur einen Thread nutzt!) auf Thread 1 von Prozessor 1 und Thread 1 von Prozessor 2 (über den Taskmanager), geht sichtbar Leistung verloren. Weil der Worker mal links, mal rechts läuft und damit Cacheinhalte nicht zur Verfügung stehen bzw. erst übertragen werden müssen. Das gleiche (allerdings nicht ganz so stark) kann man beobachten, wenn man zwei Threads bei nem Quadcore Core2 über beide internen DIEs verteilt (2x L2 Cache).
Oder auch mit anderen Modellen aka AMDs G34 Opterons -> unter der Decke 2x NUMA Nodes zu je 2x64Bit Speicheranbindung...
Wer es also real mal testen möchte wird möglicherweise mit nem Single Sockel G34 Workstation Brett und nem G34 Opteron auf Bulldozer, ggf. K10 aka MagnyCours Basis sehr günstig an ein Dual NUMA Setup ran kommen...
Oder halt auf die neuen Server Zens warten. Das 32 Core Teil wird mindestens 2x NUMA Nodes haben...
Am Ende ist es wie bei Grafikkarten, eine CPU mit mehr Leistung ist besser als 2.
Theoretisch ja, allerdings stellt sich hier oftmals die Preisfrage... Und, was im Serverbereich dazu kommt, die breiten CPUs sind im Takt teils massiv reduziert!
Such mal nach aktuellen Broadwell-E Xeons für S2011-3 mit deutlich über 3GHz und keine Ahnung 12+ Cores... Wird es nicht geben.
Heist also, mit 2x6 oder 2x8 Cores als HighClock Modelle könnte es in so mancher Situation doch deutlich besser gehen als mit einem 12/16 Core bei deutlich niedrigerem Takt. -> Alles eine Frage der Anwendungen.
Auch im Serverbereich lässt sich bei weitem nicht alles derart zerhacken, dass es bedingungslos in allen Situationen über die Breite streut. Denn auch dort wird sehr häufig "nur" das Mittel der gleichzeitigen Ausführung bei entsprechend vielen Anfragen gewählt.
Simples Beispiel, ein Apache Webserver streut bei entsprechend vielen Anfragen klar massiv in die Breite. Was bringen mir aber xx Threads auf dem Prozessor, wenn das Teil dann nur noch im mittleren zweistelligen GHz Bereich taktet, meine Abfragen auf die Dauer einer Abfrage runtergebrochen aber zu langsam ist/sind?
Ich seh prinzipiell kein Problem darin mit zig Kernen flüssig zu zocken, es muss halt nur klar sein dass das Ergebnis nicht besser sein wird als mit 4 Kernen.
Seh ich ja bei mir am 3930k, nur wenige Games schaffen es die CPU zu mehr als 25% auslasten, GTA V z.B. schafft stellenweise 40-50%.
Ich hab bei GTA V schon streckenweise 80-90% CPU Load bei mir mit 16 Threads beobachten können