Ist das Performancewachstum bei den CPUs gestoppt?
-
afaik nein. bald 1024 cores.
-
1024 cores bringen nur nix.
Da gab's doch von John Carmack mal so ein Diagram über Quake ? und dem nutzen von MultiCore CPUs.
Mit jeder weiterem Core verringerte sich der Performancegewinn und ab AFAIK ca. 4 Kernen war nicht mehr viel zu gewinnen.
Leider finde ich das Diagramm nicht mehr.
-
d.h. die Performance stagniert?
-
omg wir werden alle streben
-
eeko schrieb:
omg wir werden alle streben
Zuerst sterben die Java und PHP Entwickler.
-
-
kritisher Beobachter schrieb:
Ist das Performancewachstum bei den CPUs gestoppt?
Ja, seit 10 Jahren schon.
-
nein, die physikalischen grenzen sind noch nicht überschritten und man darf noch so einiges erwarten.
http://www.tomshardware.de/CPU-Entwicklung-Strukturbreite-5nm-7nm-10nm,news-247513.html
und wenn "nur" stromsparende systeme mit weniger energieverbrauch dabei rauskommen, ist das schon viel wert.
spannend wird es auch in der quantencomputer-forschung, laut wikipedia steckt die entwicklung noch in den kinderschuhen.
http://de.wikipedia.org/wiki/Quantencomputer
-
-
Multicorediagram schrieb:
1024 cores bringen nur nix.
Da gab's doch von John Carmack mal so ein Diagram über Quake ? und dem nutzen von MultiCore CPUs.
Mit jeder weiterem Core verringerte sich der Performancegewinn und ab AFAIK ca. 4 Kernen war nicht mehr viel zu gewinnen.
Leider finde ich das Diagramm nicht mehr.
Das ist wohl sehr anwendungsabhängig. Es gibt jede Menge Anwendungen, die auch von sehr vielen Rechenkernen profitieren.
-
Warum haben die neuen Haswells nur 4 Kerne?
-
Gregor schrieb:
Das ist wohl sehr anwendungsabhängig. Es gibt jede Menge Anwendungen, die auch von sehr vielen Rechenkernen profitieren.
Mir ging es um Spiele und Anwendungen die der typische Endanwender so benützt
und von denen gibt's außer Videocodecs und Packer nicht viel, was von Multicores mit mehr als 4 Kernen wesentlich profitiert.
-
Es ist aber nicht grundsätzlich so, das man in Spielen nicht mehr als 4 Prozessoren ausnutzen könnte. Mit der doppelten Anzahl an Prozessoren hat man einfach die doppelte Menge an Rechenleistung zur Verfügung, das heißt man kann im idealen Fall in der gleichen Zeit doppelt soviel berechnen. Also man könnte z.B. mehr Objekte physikalisch simulieren oder so.
Auf aktuelle Spiele wirkt sich das natürlich weniger aus, da dort vermutlich 4 Kerne ausreichen. Aber wenn die Anzahl der Kerne mit der Zeit steigt, dann wird man die auch in zukünftigen Spielen ausnutzen können.
-
J.Carmack hat ja geschaut, wie gut das skaliert.
Da Spiele alle ähnlich funktionieren, würde ich davon ausgehen, dass das allgemeingültig ist, du wirst nämlich immer einen Single Thread haben, der das ganze Zeugs verteilen muss und das geht bei Zeitkritischen Spielen einfach nicht gut. Die anderen Kerne liefern ihr Rechenergebnis zurück und dann müssen sie von dem einen Thread wieder mit neuen Daten gefüttert werden, das ganze natürlich zeitkritisch, denn die Ergebnisse braucht man ja wieder für das nächste Frame usw..
Das kann man also nicht ganz mit Anwendungen vergleichen, die einmal auf 1024 Kernen ihre Daten schieben und dann diese in Ruhe durchrechnen lassen.
Fazit:
Spiele skalieren einfach nicht gut und John Carmack hat das in seinem Diagram aufgezeigt.Bei 8 Kernen gibt's noch ein klein bischen was, bei 16 schon fast gar nichts mehr usw.
-
1.) Siele brauchen keine 1024 Kerne.
2.) Wenn sie es doch brauchen, dann machen sie Echtzeitraytracing.Es gibt auch Anwendungen, die keine 3GHz brauchen, beispielsweise Office-Programme.
-
Geht es bei Carmack/Spielen um die Graphik oder auch um die KI?
-
@Multicorediagram:
Ich glaube, die Betrachtung heutiger Anwendungen wird der Einfuehrung von multiplen Rechenkernen in CPUs nicht unbedingt gerecht. Mit den Prozessoren, die man in 10 Jahren hat, willst Du vor allem die Anwendungen performant ausfuehren koennen, die es dann gibt. Die Anwendungen von gestern werden dann voellig ohne Probleme laufen und den Prozessor eben nicht auslasten.
Die eigentliche Frage ist also eher, welche neuen Moeglichkeiten man durch Many-Core-Prozessoren bekommt. Die Anwendungen werden sich so aendern, dass sie das ausnutzen.
Ich weiss nicht, was momentan bei Spielen die meiste CPU-Rechenzeit benoetigt. Vielleicht ist es die KI, vielleicht ist es die Physik, vielleicht ist es etwas ganz anderes. KI und Physik sollten aus meiner Sicht allerdings problemlos auch sehr massiv parallelisierbar sein.
Jenseits davon: Wenn auf einer Anwendung "Multimedia" oder so draufsteht, dann ist es sehr wahrscheinlich, dass sie auch von vielen Rechenkernen profitiert. Videos (oder vielleicht Videobearbeitung) hast Du ja schon genannt. Bildbearbeitung profitiert natuerlich auch davon und Audiosoftware sollte auch profitieren. Multimediaanwendungen gehoeren zu den Anwendungen, die im Vergleich zu anderen vom Normalverbraucher genutzten Anwendungen eher mehr Rechenleistung benoetigen und da ist es doch gut, dass gerade diese Anwendungen von zusaetzlichen Rechenkernen profitieren.
-
es gibt einfach probleme die sich nicht performant (linear) parallelisieren lassen.
-
langsamer code kenner schrieb:
es gibt einfach probleme die sich nicht performant (linear) parallelisieren lassen.
Das heißt aber nicht, dass man nicht stattdessen was anderes machen kann, mit dem man auch jede Menge Spaß haben kann. Um beim Spielebeispiel zu bleiben, könnte man in Zukunft zum Beispiel die Physik der Spielwelt verbessern. Das lässt sich ganz wunderbar parallelisieren, sofern man nur Mechanik macht. Heutzutage hingegen geht eine aufwändige Physik im Spiel noch gar nicht, da die 4-8 Kern CPUs noch nicht genug Rechenleistung bieten. Daher gibt's ja auch die Physikkarten und Physikimplmentierungen auf der Grafikkarte. Da hat man wieder Parallelrechner vorliegen.
-
hmmmmmmmmm schrieb:
Warum haben die neuen Haswells nur 4 Kerne?
Das frag ich mich auch.
Vor allem ist für mich irgendwie überhaupt kein echter Fortschritt erkennbar.i7 3770: 4C 8T, 3.4 GHz (3.9 Turbo), HD 4000, 32+32kB/C L1, 256kB/C L2, 8MB L3, 77W
i7 4770: 4C 8T, 3.4 GHz (3.9 Turbo), HD 5200, 32+32kB/C L1, 256kB/C L2, 8MB L3, 84WWenn man nur nach diesen Daten geht dann sieht Haswell aus wie SB + bessere Grafik + ein paar Zusatzfeatures (AVX2, ...) mit inetwa dem selben Verbrauch.
(84W mit Spannungswandler in der CPU wird wohl nicht so viel schlechter sein als 77W mit externem Spannungswandler -- bei den 84W sind ja dann die Verluste vom Wandler mit dabei).Ich hätte mir zumindest nen höheren Turbo-Takt erwartet wenn schon nicht mehr Cores, bzw. einfach irgendwas was bei bestehenden Anwendungen was bringt. (Neue Instructions sind zwar fein, aber helfen bei bestehenden Anwendungen halt genau gar nix.)
Kann man nur warten und hoffen dass sie die Superskalarität verbessert haben, bzw. halt allgemein den Befehlsdurchsatz/Zyklus. Das wäre natürlich auch sehr cool, aber ich erwarte mir nicht dass sich da noch viel tun wird.