News Multi-Core-CPU: Intel entdeckt den Bonus von mehr Kernen in Spielen (neu)

Über zehn Jahre muss man sich anhören, dass sich Prozesse nicht unendlich parallelisieren lassen. Auch nachdem AMD einen 6 Kerner auf den Markt brachte.

Ganz plötzlich hat aber Intel etwas Bedrängnis und haut plötzlich MT-Optimierungen raus....

Genauso wie der Laboratory- Modus von Warhammer der in Kooperation mit Intel entstanden ist.




Am liebsten würde ich mit einer Meute in den Laden einlaufen und die zur Rechenschaft ziehen, dass wird hier immernoch mit 4 Kernern rumdümpeln, Marktmanipluation FTW.
 
@aivizi
Artikel noch mal lesen, ganz ehrlich...

Games lassen sich auch nicht beliebig parallelisieren! Das steht ganz klar im Artikel! Es wird lediglich ausgesagt, dass es einige GEnres gibt, wo man noch optimieren kann, weil das z.B. Rendering noch nicht der Bottleneck ist. In allen Fällen, wo das der Fall ist, wird auch mit mehr Kernen es keine größeren Leistungssprünge geben.

Intel hat einfahc eine andere Strategie als AMD. Intel hat schlicht länger gewartet, bis das Knowhow um Parallelisierung weiter vorangeschritten ist während AMD auf dem Gebiet Vorreiter sein wollte, weil sie sich über IPC und Takt nicht genügend von Intel absetzen konnten und sich so ein anderes Merkmal suchen mussten/wollten. Völlig normale Strategien zweier Konkurrenten auf dem MArkt....
 
  • Gefällt mir
Reaktionen: MitchRapp
Intel bringt seit 10 Jahren 4Kerne als absolutes Maximum im Consumer Bereich und bemerkt jetzt dass die Software mit 8 Kernen+ nicht mehr skaliert. Schönen Dank auch ihr Vögel...
 
"Die Programmierer erklärten auch, warum SMT oder Hyper-Threading mitunter zu Leistungsverlusten führen kann. Das Problem sei, dass durch die Aufteilung eines Kerns auf zwei Threads alle Ressourcen geteilt werden, auch diejenigen, die in sehr begrenzter Menge zur Verfügung stehen, wie beispielsweise der L1-Cache der CPU oder genau gesagt des Kerns."

Also das, was eigentlich CMT (Bulldozer) entschärfen wollte, aber das Aufteilen der Aufgaben klingt auch nach einen sehr guten Ansatz.
Ist ein Thread eher auf den Cache fokussiert während ein zweiter die ALUs füttert, kann zusätzliche Leistung verfügbar sein.

Aber prinzipell bin ich deshalb auf VISC gespannt, der ja zwischen Hardware und Software noch mal eine Schicht hat (VM ähnlich), welche bei Bedarf Threads erzeugt und einen Thread leistungsfähiger macht.

Auch interessant wäre eigentlich ein ARM ähnlicher Ansatz. Bsp 2-4 Mega Cores mit viel Single Thread Performance und viel Single Thread Performance, einfach aufgebläht und dazu kleinere CPU Cores für Energiespar Modi oder eben für zusätzliche Multi-Core Last.
Aber dann müsste wohl Windows besser angepasst sein und nur auf ein bestimmten Kreis zugreifen.
Interessant ist eig, dass AMD mit ihren CCX Ansatz sowas bewerkstelligen könnte. Ein CCX mit bsp 2 starken Cores und einer mit 4 simpleren Cores. (immerhin wird ja schon daran gearbeitet, dass Windows gewisse Aufgaben nur in einem CCX macht)

Bin gespannt, wie sich das alles weiterentwickelt.

wohl eher an die Grafikkarte abgibt, als sie an die CPU zu verweisen, einfach weil es dort flexiblere Möglichkeiten gibt bzw. sich darüber bei gleichem Aufwand wesentlich mehr an Leistung gewinnen lässt.
Deshalb ist ja eigentlich HSA so interessant und somit auch GPU Shaders im Prozessor. Aber auch hier ist die Spieleentwicklung noch hinterher, obwohl viele CPUs mittlerweile eine IGP haben.
Bin mir sicher, dass das nächste ist, was Intel promoten wird, sobald ihre "neuere" IGP in den CPUs zu finden sind und das HSA unter einen anderen Namen wie AMDX86 mehr und mehr zu finden sein wird.
 
Zuletzt bearbeitet:
Xes schrieb:
Sicher ein Dualcore Pentium profitiert enorm von HT, aber tut das ein Ryzen 5 1600X mit 6-Kernen oder Ryzen 7 mit 8C auch noch?

Kommt aufs Spiel an - BF1 z.B. ist ein Threadfresser - läuft mit nem R7 1700 butterweich und das obwohl ich nur ne 1060 3GB im System habe - da sind alle 16 Threads @Work im Taskmanager bei dem Spiel. Dann gibts aber auch Spiele die machen nicht mal Nutzen von nem Quadcore-Prozessor.

Kommt wie gesagt echt drauf an was man so zockt - ne pauschale Aussage kann man da nicht treffen.
 
mein Gott Intel (facepalm)
 
Volker schrieb:
Die Programmierer erklärten auch, warum SMT oder Hyper-Threading mitunter zu Leistungsverlusten führen kann. Das Problem sei, dass durch die Aufteilung eines Kerns auf zwei Threads alle Ressourcen geteilt werden, auch diejenigen, die in sehr begrenzter Menge zur Verfügung stehen, wie beispielsweise der L1-Cache der CPU oder genau gesagt des Kerns. Wollen zwei Threads auf den gleichen kleinen Cache zugreifen, kommt es zu Problemen, was in erhöhter Zugriffszeit münden kann. Daten werden dann verzögert ausgeliefert. Leistungsgewinne sind aber möglich, wenn die Trennung stärker erfolgt: Ist ein Thread eher auf den Cache fokussiert während ein zweiter die ALUs füttert, kann zusätzliche Leistung verfügbar sein.

Welche Komponente im System entscheidet eigentlich darüber, welche Kombination von threads auf einem Core parallel abgearbeitet werden ?

Arbeitet der CPU core (btw die beiden threads eines CPU Cores) die einzelnen threads "ohne intelligenz" der Reihe nach ab ? Thread 1 -> 1, Thread 2 -> 2, Thread 3 -> 1, Thread 4 -> 2, usw ?

Wo gäbe es da ggf Optimierungsmöglichkeiten, damit die 2 threads, die auf einem Core laufen, unterschiedliche resourcen des Cores ansprechen, damit die beiden Tasks sich nicht gegenseitig blockieren ?

Ich denke mal das Problem ist, dass auf der Ebene des Process Schedulers möglicherweise zu viel "micromanagement" betrieben werden müsste und könnte hier zu einem Flaschenhals führen.
Auf der anderen Seite gibt es ja auch tools wie "process Lasso" die hier ja auch einige Möglichkeiten bieten zB bestimmte Processe auf bestimmte CPU cores zu legen, was für einige Applikationen möglicherweise Sinn macht.

Ob auf CPU core level sowas wie eine Klassifizierung möglich wäre, keine Ahnung.
Das hiesse ja, die CPU müsste instruktionen puffern und dann entscheiden können,
was macht Sinn parallel ausführen zu lassen mit dem Ziel, das möglichst viele CPU
resourcen parallel genutzt werden und sich nichts gegenseitig blockiert.
 
Zuletzt bearbeitet von einem Moderator:
Mustis schrieb:
Intel hat einfahc eine andere Strategie als AMD. Intel hat schlicht länger gewartet, bis das Knowhow um Parallelisierung weiter vorangeschritten ist während AMD auf dem Gebiet Vorreiter sein wollte, weil sie sich über IPC und Takt nicht genügend von Intel absetzen konnten und sich so ein anderes Merkmal suchen mussten/wollten. Völlig normale Strategien zweier Konkurrenten auf dem MArkt....

Intel hat einfach die letzen 10 Jahre gar nichts gemacht, AMD hat wenigstens versucht den CPU Markt mit Parallelisierungen zu pushen wurde aber von der Konkurrenz die Wirklich was in Richtung Zusatzeffekten in form von Physx verdrängt.

Ja genau, die Beispiele die Intel nennt wurden im Falle von Physx bereits vor 10!! Jahren verwendet und bei Nvidia von der GPU gerendert... AMD musste das auf der CPU Rendern weil kein Physx.

Man muss sich auf vor Augen führen wie viele von den Effekten oder Berechnungen die Intel nennt schon vorher in einer anderen alternativ Form existiert haben.

Siehe: Realistic Destruction , Realistiv Clothing. Advanced Particles oder 3D Audio .

Das sind 4 von 12 Punkten die Intel nennt.

3 Davon sind schon in Physx seit einer Ewigkeit vertreten und 3D Audio gibt es auch in Form von Dolby Atmos oder True Audio (was aber keine Beachtung bekommt :D, ich kann mir vorstellen wie das plötzlich jeder braucht, wenn es Intel pusht :D )


Die anderen 8 Aspekte die Intel nennt, sind kaum der Rede Wert und sind eher in die Kategorie "Atmosphäre des Spiels " einzuordnen.


Entsprechend ist es einfach nur ein Armutszeugnis, dass man plötzlich auf die Idee kommt die Prozesse auf einer CPU laufen zu lassen. Das kommt einfach viiiiieeeeelllllll zu spät. Einfach viel zu spät.

Abgesehen dass man sich nach zehn Jahren dauer 4 Kerner als "Intel" nicht zu wundern braucht, warum denn nicht mehr als 4 Kerne unterstützt werden..... Das hat Intel selbst zu verantworten und keinerlei Gründe das als toll zu vermarkten, dass man plötzlich doch die Reserven nutzen kann.
 
Zuletzt bearbeitet:
Nachdem die Wechsel von 16 BIT auf 32 BIT und dann auf 64 BIT so zäh verlief bin ich doch überrascht, wie weit man offensichtlich mit Mehrkernprozessoren ist.

Dabei lassen sich ja nicht immer alle Aufgaben parallelisieren.

Im Prinzip kann ich aber Intels Strategie nachvollziehen. Wozu ein 12 Kern CPU wenn die Software nicht so weit ist? Dann mit 2 und 4 Kernen anfangen bis die Programmierer lernen wie sie damit umgehen. Viele 4 Kern CPUs dürften mittlerweile schon entsorgt worden sein ohne jemals von den Kernen profitiert zu haben.

Ein wenig erstaunt bin ich aber, dass die CPUs trotz mehr Kernen im selben Preisrahmen blieben. Haben die 6 Kern CPUs nicht deutlich mehr Transistoren als 4 Kern CPUs?
 
Zotac2012 schrieb:
​Er setzt halt den L1 Cache mit dem L3 Cache auf eine Stufe, ist auch eine Idee! :D

Nein, das tue ich nicht. Nur gilt dasselbe halt ebenfalls auch für den L2- oder L3-Cache. Mehr bringt mehr, und der Cache ist ebenso wie der RAM nie genug.


Da aber solche Einflüsse kaum mit Benchmarks, erst Recht nicht mit irgendwelchen sinnlosen FPS-Messungen erfaßt werden können, finden sie in der öffentlichen Meinung keine Beachtung.

In der Spiele-Realität jedoch sind Spiele nicht optimiert, und schon gar nicht fehlerfrei. Es werden für bestimmte Aufgaben, so z.B. oft beim Speichern und Laden, Ressourcen reserviert, aber nach Gebrauch nicht wieder vollständig an das System wieder freigegeben. Gothic III (und damit auch Risen und Elex) ist nur so ein Paradebeispiel von mir, auch die komplette Anno-Reihe, aber man erlebt das in sehr, sehr vielen Spielen. Je länger man zockt, umso langsamer wird das Game. Und irgendwann stürzt es ab.


Und wenn wir schon bei vielen Kernen sind: Kingdome Come Deliverance ist z.Z. heftig in der Kritik wegen der unterirdischen Performance die das Game liefert. Öffnet man den Taskmanager findet man auch sofort den Grund: Das Spiel nutzt einzig und allein einen Core/Thread meines i7-2600K, die restlichen 7 Threads werden einfach ignoriert.

Auch heutzutage nutzt nur eine sehr begrenzte Anzahl von Games mehr als zwei Threads. 4 oder mehr Kerne werden meist nur von wenigen AAA-Titeln die mit enormen Aufwand produziert worden optimal unterstützt. Auch wenn die technischen Grundlagen geschaffen werden, ändert das nichts an der Tatsache, daß die Implementierung sehr viel Aufwand benötigt und entsprechend Zeit. Und die Spielentwickler von heute haben nicht einmal die Zeit, ein Game fertig zu programmieren, werfen es wie im Fall von KCD schon im Alphastadium auf den Markt und behaupten einfach nur es sei fertig.

Da soll mir bitte einer erklären was Intel dabei zu ändern vermag. MMn nur heiße Luft und nichts dahinter wenn man alle Spiele in der Masse testen würden, und nicht nur ausgesuchte AAA-Titel.

Ein Quadcore ist zwar heute schon Pflicht, aber ein Hexacore bringt nur in weniger als 1% der Spiele etwas. Deshalb ist es da auch komplett sinnlos einen Ryzen zu kaufen, da schon ein i3-8350K über eine deutlich bessere Performance verfügt als ein Ryzen 1800x.
 
Zuletzt bearbeitet:
Wenn das größte Limit immer noch der Main Renderer ist, und man den nicht aufteilen kann, muss man eben der CPU wieder mal ein paar Aufgaben zurück geben, die nach und nach in die GPU gewandert sind.
Physik und Audio wären da nennenswert.
GPUs sind eigentlich immer an der Kotzgrenze und auch leicht da hin zu treiben, während das bei CPUs viel schwerer ist.
Wäre schön, wenn die nächste Generation an Engines dem mal Rechnugn trägt und selbstständig Many-Core CPUs ein paar mehr Aufgaben zuweist, als den kleinen Quads und co.
Ein moderner CPU Thread oder eben zwei sollten mehr als genug Leistung für 3D Audio mit vielen Kanälen und Quellen haben und PhysX würde auf Prozessoren auch ganz wunderbar funktionieren, wenn es nicht zwangsweise mit Rechenpfaden und Methoden aus den frühen Jahren des Jahrtausends (war es nicht sogar SSE2?) auf einem Thread laufen würde, wenn ein Chip Dongle aka GeForce im System erkannt wird.
 
Und genau aus diesem Grund sollte man die Konkurrenz unterstützen, auch wenn sie in 720p nicht so gut abschneidet.

Plötzlich kostet eine 8Kern CPU keine 2000 Euro mehr sondern nur noch 400..

Manche verstehen das aber leider nicht. Und dann gibt es wieder 100Mhz Boosts pro Jahr.
 
"Viele Kerne helfen, doch nur bis zu einem gewissen Punkt. Aktuell skalieren Spiele bis zu sechs Kernen bereits mitunter sehr gut, spätesten bei"

sollte es nicht "spätestens" heißen? oder bin ich da falsch?


es gibt doch einige spiele z.b. Metro die mit 16/32 kernen sehr gut klar kommen und ich merke keinen leistungsverlust dadurch.

merkwürdig das intel das erst jetzt bemerkt hat. sogar die smartphones haben mehr kerne.
 
Zuletzt bearbeitet von einem Moderator:
anexX schrieb:
Kommt aufs Spiel an - BF1 z.B. ist ein Threadfresser - läuft mit nem R7 1700 butterweich und das obwohl ich nur ne 1060 3GB im System habe - da sind alle 16 Threads @Work im Taskmanager bei dem Spiel. Dann gibts aber auch Spiele die machen nicht mal Nutzen von nem Quadcore-Prozessor.

Kommt wie gesagt echt drauf an was man so zockt - ne pauschale Aussage kann man da nicht treffen.
Arbeiten und Vorteil ist ja immernoch ein Unterschied. ;)
Hast du mal getestet was passiert, wenn du SMT abschaltest und das Spiel möglichst in beiden Fällen im CPU-Limit läuft?

Im CB-Test liegt ein i5-8600K selbst unter 720p nur 6% hinter einem i7-8700K und auch der Ryzen 7 1800X kann sich gerademal 3% vom Ryzen 5 1600X absetzen. Bei den Intel CPU`s würde ich den kleinen Unterschied eher beim höheren Takt des i7, bei den Ryzen beim höheren L2 Cache suchen. SMT/HT scheint zumindest in Bf1 ab 6 Threads keinen wirklich spürbaren Unterschied zu machen...
 
pipip schrieb:
Auch interessant wäre eigentlich ein ARM ähnlicher Ansatz. Bsp 2-4 Mega Cores mit viel Single Thread Performance und viel Single Thread Performance, einfach aufgebläht und dazu kleinere CPU Cores für Energiespar Modi oder eben für zusätzliche Multi-Core Last.

Ist das nicht das, was AMD mit Zen+ über die Energiesteuerung im Prinzip ermöglicht?
Also das eben, wenn die anderen Cores nicht ausgelastet werden dann wenig Takt anliegen haben, dafür aber die ausgelasteten im Rahmen der Strom- und Kühlleistung auch übertaktet werden?

Kann sein, dass ich da was durcheinander werfe, habe zuletzt zu viel auf zu vielen Seiten gelesen :rolleyes:
 
Selbst wenn es keinen Performanceboost bei Mehrkern + HT gibt würde ich das immer bevorzugen, denn das wirkt sich meist positiv auf die Frametimes aus. Aber für die Meisten scheinen Balkenlänge einfach immer noch am Wichtigsten zu sein.
 
Naja es wird so getan, als gäbe es keine Multikern Programmierung in Spielen.
Fakt ist doch, dass schon wenige Jahre nachdem die ersten Quad core CPUs rausgekommen sind und man überall in den Forem lesen durfte, wie sinnlos das ist und das ein hoch taktender dual core so viel besser ist, plötzlich Spiele da waren, die auf den Quad core CPUs deutlich besser liefen.
Ich denke da an Anno 1404, Witcher 2 usw.
Von mehr Kernen profitieren Spiele also schon lange. Nur eben selten von mehr als vieren;).

Und BF1, ROTTR, Hitman, FFXV um nur mal ein paar neuere zu nennen, profitieren von mehr als 4 threads.

Ashes of the Singularity lastet meine 16Thread CPU im integrierten CPU Benchmark zu 80-90% aus. Da hat man sogar Leistungssteigerungen, wenn man von 8c8t auf 8c16t geht(was sonst in Spielen nicht der Fall ist).

Entgegen der CB Tests profitiert auch ein The Witcher 3 von mehr als 4 Kernen, Es kommt halt auf die getestete Szene an.

Natürlich ist es schwer das rendering zu splitten, aber ich denke ein größeres Problem für erfahrene Spieleentwickler, ist nicht mehr das Wissen, wie man die Arbeit auf viele Kerne verteilt, sondern die Aufsplittung der Käuferschaft.

Wenn das eigene Spiel 8+ Kerne gut unterstützt, merkt man es nicht wenn die Gesamtlast nicht auch mehr als "vier-Kern-Rohleistung" entspricht.
Es wäre sicherlich ein leichtes sich mehr Physik Berechnungen usw in das Spiel zu holen, die die Rohleistung von 8 Kernen fordert(siehe AotS), aber dann verliert man die ganzen Notebook spieler und Leute die sich keine 1500€ + PCs kaufen.
Ashes of the Singularity geht das Problem so an, das vier Kern CPUs einfach deutlich weniger Effekte berechnen müssen(Ausnahme der Benchmark). Da laufen dann im Spiel sogar 4 Kerne schneller als 8.
Eventuell ist das ein gutes Konzept für die Zukunft. Aber dann möche ich bitte die Wahl haben, ob ich die Effekte auch berechnen will^^
 
Zuletzt bearbeitet:
[F]L4SH schrieb:
Ein moderner CPU Thread oder eben zwei sollten mehr als genug Leistung für 3D Audio mit vielen Kanälen und Quellen haben und PhysX würde auf Prozessoren auch ganz wunderbar funktionieren, wenn es nicht zwangsweise mit Rechenpfaden und Methoden aus den frühen Jahren des Jahrtausends (war es nicht sogar SSE2?) auf einem Thread laufen würde, wenn ein Chip Dongle aka GeForce im System erkannt wird.

Der Befehlssatz bei Physx der auf der CPU angewendet wurde falls keine Geforce drinnen war, war damals so veraltet, dass es deswegen auch einen kleinen Shitstorm gab :D

Dann stellt sich aber die Frage wie solche vermeintlich komplexen Effekte von einer GPU mit ~ 128 Shadern ( 8800 GTX) berechnet werden konnten, aber man immer noch keinen Weg gefunden hat, sowas auf die CPU auszulagern ohne dass es ruckelt.

Hätte man mit Ageia Physx damals einen modernen Befehlssatz verwendet und diesen Parallelisiert, dann hätten wir nicht den Salat, dass die CPU nur zu ~ 20 % Ausgelastet wird.

Die Beschleuniger Karte von Ageia war damals auch nichts weiter als nur irgendein Asic mit Vektorprozessoren spezialisiert für die Berechnung der Physik etc. Warum man nicht ein paar CPU Kerne für diese Aufgabe bereitstellt und die Software optimiert um gegenüber den spezialisierten VPUs einen Vorteil zu haben ist mir ein Rätsel.

Stattdessen befasst man sich jetzt viel zu spät damit. Ich rechne mit keiner vernünftigen Unterstützung von 8 Kernern vor 2025...
 
Naja, auch bei Intel kocht man nur mit Wasser und warum soll man vorzeitig Technik fördern, wenn die alte Technik von den Leuten immernoch wie warme Semmel gekauft werden?
Wer Innovationen voran treiben will ist selten bei dem Branchenprimus gut bedient, das gilt für nahezu jede Branche auf dieser Welt.

Es klingt halt eindeutig danach, dass höhere Skalierung vor allem auch an der Kommunikation untereinander(unter den Kernen) scheitert, wenn man das Problem sieht, dann kann man ja auch mal an Lösungen scheitern.
An immer größere Chips hat man sich als Intel Kunde doch eh gewöhnt, an jedes Jahr neue Mainboards kaufen auch.
Ich denke da kann man die Kunden auch weiter melken und einfach mal nen Monster an CPU erschaffen.

Das wiederum kann AMD dazu bringen, alles kleiner und effizienter und besser zu machen.
So befruchtet sich ja der Markt in der Regel gegenseitig.

Die Effizienz der Spiele tun aber auch ihren Teil, sie sind einfach mitunter sehr schlecht programmiert und müssten komplett umgeschrieben werden um nur einen Bruchteil der Leistung zu benötigen oder eben noch besser auszusehen.

Aber auch hier tut sich ja herzlich wenig.

Immersion in Spielen ist heutzutage fast das wichtigste, je mehr die Kerne also dazu beitragen, möglichst flüssig und parallel die Spielewelt zu erschaffen, umso besser fürs Spiel.

Das hätte Intel aber auch schon vor 20 Jahren erkennen können.

Bin gespannt ob die Entwicklung endlich mal wieder etwas Fahrt aufnimmt oder zumindest mal nen kleinen Boost erhält.
 
Zuletzt bearbeitet:
Alle Jahrzehnte wieder... und Intel promotet die Spieleindustrie mittel Kernanzahl.
Beim letzten Mal (Alan Wake) ging es ja gehörig in die Hose 😆 ob es diesmal besser laufen wird?

Auf diesem Wege nochmals 1000 Dank an AMD, den Schlag mit dem Vorschlaghammer vor das Schienbein hat Intel wirklich nötig gehabt.
 
Zurück
Oben