Irgendwann wieder Single-Core?

@sebko
Da hast Du vom Prinzip her Recht. Der Haken ist nur, dass die aktuelle Leistungsfähigkeit von CPUs nicht von SC oder MC Konstellationen abhängen, sondern die Architektur der aktuellen Kerne ansich z.Z. nicht mehr Leistung hergibt. Auch mit SC würden wir aktuell GHz-mäßig nicht höher kommen und dennoch schneller sein, als ein älterer, höher getakteter. Durch MC nur noch ein ganzes Stück weiter, obendrauf.
Es ist nicht so, dass durch die Verdoppelung der Kerne die Taktraten im gleichen Atemzug (sozusagen als Ausgleich ^^) halbiert wurden. Man sollte sich generell von dem GHz-Streben endlich mal lösen können. Was glaubt ihr sagt wohl ein Quantenprozessor zu einer 10 THz getakteten herkömmlichen CPU? :p Viele Wege führen nach Rom.
 
Klar, relict, aber der TE sagt:

@Wuffi schrieb:
Mir persöhnlich wäre daher ein Single-Core mit 12 GHz viel lieber als ein Quad-Core mit 4 mal 3 GHz.

Und ich mach nichts anderes als ihm Recht geben und das Gegenargument "Parallelisierung" entkräften.

Ich möchte auch im täglichen Betrieb den DualCore nicht missen. Allein schon was beim OS alles im Hintergrund läuft. Ist halt alles doch nicht so einfach. Aber so war es vom TE glaube ich zumindest auch nicht gemeint.
 
langfristig wird die entwicklung sowieso in richtung massive parallelisierung gehen (vgl. G80 mit 128 streamprozessoren oder intel polaris mit 80 kernen). das problem ist einfach, dass eine komplett neue architektur nötig wäre (eben keine X86 kompatibilität) mehr und das müssten alle großen häuser (M$ und co) auch unterstützen.
 
@Wuffi + sebko

Ich glaube ihr macht einen schweren Denkfehler, weil ihr bei dem Beispiel 1 zu 2 Kernen bislang Denkschluss macht. Klar ist 1 doppelt so schneller Kern zwei halb so schnellen Kernen in der Regel unterlegen, aber bei 4 Kernen sieht das schon viel anders aus, selbst bei einer Textverarbeitung wie Word, falls sie denn einmal echt mehrkernoptimiert ist. Ein Kern ist z. Bsp. für die Datenspeicherung zuständig, einer für die Rechtschreibprüfung, einer für die Grammatikprüfung, einer für das Layout, einer für die OLE Einbindung und einer für die Druckdatenaufebreitung.

Die ganzen Windowsprozesse könnten auch gut und gerne auf 4 einzelne echte Kerne verteilt werden, wobei hier bestimmt enorme Laufzeitenoptimierungen nötig sind.

Sobald eine Denkaufgabe sich baumartig verästelt und ich glaube das ist bei jedem wissenschaftlichen Prozess gegeben, haben Mehrkernprozessoren ihren eindeutigen Vorteil. Viele Teilbäume werden dann zwar schon spekulativ vorberechnet werden, aber das gibt es im kleinen ja schon bei Cache & Co. im PC und es hat sich niemand darüber beschwert.

Ich kann mir gut Mehrkernprozessoren im Bereich 12-56 Kerne vorstellen. Bei gleichzeitiger intelligenter Cachenutzung sehe ich da ein ganz großartiges Potential für die Leistungsfähigkeit von der wir alle profitieren werden, denn die preiswerten CPU-Preise der Mehrkernprozessoren sind meines Erachtens auch auf den technisch billigen Weg der Mehrkerntechnik zurück zu führen.
 
> Stimmt Intel hat dies genannt, allerdings sollte man vielleicht auch bedenken, dass
> die Architektur theoretisch für höchst Taktraten gemacht ist die Pipeline ist glaube ich
> 32 stufig die des C2D glaube ich 14 und die des AMD Barcelona nur 12 stufig.

Soweit so gut.
Allerdings nimmt mit der Pipeline-Länge auch die Effizienz pro MHz ab, denn bei
einer falschen Sprungvorhersage müssen bei einer 32-stufigen Pipeline mehr
"falsch" erledigte Rechenschritte verworfen werden als bei einer 12-stufiger.



> Solche Aussagen sind IMO zu pauschal. Wie oft haben wir sowas in der Elektronik schon gehört? > Sei es mit Arbeitsspeicher oder mit HDDs (es ist physikalisch nicht mehr möglich, noch mehr
> Daten magnetisch zu speicher, weil die Dichte schon so hoch ist bla bla bla...nur noch mehr
> Platten bla bla bla...)

Stimmt so halb.
Natürlich kann man die Strukturbreite weiter verkleinern ...
nur ist dies mittlerweile ziemlich teuer und die Lithographie immer aufwändiger ...
wieviel Milliarden hat nochmal die neue 45nm-Fab von Intel gekostet ? :)
Und geringere Strukturbreite kann keine Wunder in Bezug auf Wärmeentwicklung bewirken,
zumal kleinere Strukturen auch empfindlicher auf Hitze reagieren.
Und ... Elektronen können nun mal nicht schneller als mit Lichtgeschwindigkeit von
einer Ecke der CPU zur anderen reisen ...



> Wo haben wir größtenteils gleiche Aufgaben? ... Word, Excel, Nero ...?
> Das kann auch auf einem Core laufen. Ich denke wir haben vorwiegend unterschiedliche
> Aufgaben für die CPU, daher ja auch der Vorteil für den MC. Was würde es bringen Word
> auf multicore zu optimieren, eben gar nix .. Oder ich verstehe deinen Post nich, ...

Ich glaube, Du verstehst meinen Post nicht ... :)
Für Excel & Co braucht man doch keinen MultiCore ... da hatte mein Celeron900 schon genug
Power für ... ;)
MC spielt seine Stärke bei rechenintensiven Programmen aus ... VideoEncoding z.B. oder
Spielen ... und hier müssen die verschiedenen Kerne und ihre Rechenergebnisse synchronisiert
werden und ergeben zusammen erst ein brauchbares Ergebnis (= Film in Divx oder H.264 oder
halt ein gesamtest Spiel mit Grafik,Physik, Sound etc.)
 
Also Ende nächsten Jahren kommen ja wahrscheinlich noch die 8-Kerner raus... Aber wie wil man das realisieren, das zum Beispiel Spiele die voll unterstützen? Irgendwann kann man die Aufgaben nicht weiter unter den Kernen aufteilen, das ging mit 2 Kernen gut, mit 4 wirds vielleicht auch noch gut gehen, aber bei 8 wirds schwierig... Da muss man sich noch irgendwas einfallen lassen, um die einzelnen Befehle auch optimal den Kernen zuzuweisen und alles ausgewogen zu verteilen. Das aber nicht nur software-mäßig, sondern vielleicht auch in der Hardware... so ein Kontrollzentrum für sowas in der CPU... Ein extra Kern, der dafür da ist, die Befehle aufzuteilen und den anderen Kernen zuzuweisen... Irgendwie so.

Gut möglich wäre es ja bei den 8-Kernern. Wenn sie so aufgeteilt sind, dass es 3 Reihen mit jeweils 3 Kernen gibt, muss der mittlere Kern weg, damit es 8 sind. Und da kann dann das Kontrollzentrum hin, was mit allen Kernen drum herum verbunden ist. Falls das möglich ist, wäre das vielleicht keine so schlechte Lösung...
 
Normalerweise kümmert sich der Programmierer einer Software nicht um die Anzahl der Kerne. Es kann jetzt schon Programme geben, die z.B. für 20 Kerne konzipiert sind aber nur auf 2 Kernen laufen.

Stichwort ist das User Level Threading und das Kernel Level Threading.

Jedes Programm wird in verschiedene User Level Threads aufgeteilt (ob jetzt ein programm ein Thread braucht oder mehrere kommt auf die Programmierung drauf an)

Diese User Level Threads werden auf die Kernel Level Threads zugeteilt. Dann werden die Kernel Level Threads auf einer CPU ausgeführt.

Das Problem ist, dass es viele Aufgaben gibt, die derzeit einfach nicht optimal parallelisiert sind. Es gibt daher immer wieder Warteschleifen. Die probleme der Synchronisation, Schlechtes Schreiben etc. müssen noch gelöst werden. Besonders bei der Netzwerkkommunikation ist dies sehr kompliziert.

Ich denke mal, dass die Entwicklung für private Anwender spätestens bei 16 Kernen aufhören wird - da eine höhere parallelität nur noch in Mehrbenutzersystemen möglich ist. Bis dahin wird sich auch die Mentalität zu einem richtig verteilten System überschwenken. Siehe Google. Wir werden nur noch an "Terminals" arbeiten und unsere Leistung die wir benötigen ausm Internet bekommen ohne zu wissen wieviel wir brauchen und wo es gerade steht. Für uns sieht es aber so aus, als hätte die Leistung der Rechner den wir gerade benützen.

Ich denke mal, dass man in Zukunft zwar versuchen wird, die parallelität zu erhöhen, aber parallele Programme sind um einiges schwerer zu schreiben als sequentielle, auch große teile der Systemarchitektur für sequentielle zugriffe nur geeignet sind (HDD) und somit eine parallelität ihre Anreiz verliert.

Und man sollte nicht davon ausgehen, dass z.B. ein Prozessor nur weil er jetzt doppelt im System ist doppelt soviel bringt. Denn die Verwaltung von beiden Prozessoren wird auch schwieriger und daher geht hier schonmal immer weniger.
 
@Garrona
lustig ist bloß, dass man Terminal-Computing schon vor 20 Jahren als Zukunftslösung prophezeit hat - gekommen ist das krasse Gegenteil, nämlich Dual(quad) Core Workstations fürs simple Briefe Schreiben und Internet.

Was professionelle Anwender angeht, gaub ich auch, dass sowas wie Grid Computing, wie man des dann ja nennt, kommen wird.

Im Privatbereich allerdings... ...gibts schwache Ansätze, mehr aber auch nicht, das dauert schon noch seine 20Jahre.
Es gab höchstens mal zu P4 Zeiten mal eine Software, die einen XP Rechner zum vollwertigen 2 Benutzer System gemacht hat, mit 2Tastaturen,sound,Bildschirmen usw. - scheiterte damals aber an schwacher Hardware(SingleCore + hohe Rampreise)
 
Zurück
Oben