wie berechnet man die gesamtleistung eines mehrkernprozessors?

9 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Okay, ein Quadcore mit 2 Ghz. Ein Kern ist ein Biertrinker, ein Gigahertz ein Liter:

Bei einem Quadcore Prozessor mit 2 Gigahertz hat man 4 Biertrinker; jeder dieser 4 Biertrinker kann 2 Liter Bier pro Minute trinken.

Stellt man nun 4 Gläser mit je zwei Litern Bier auf den Tisch, können die 4 Biertrinker diese Aufgabe in einer Minute lösen.

Stellt man aber nur ein Glas mit insgesamt 8 Litern auf den Tisch, kann natürlich nur einer der Biertrinker Bier trinken - oder wie soll es gehn, dass alle 4 gleichzeitig aus einem Glas trinken? (Strohhalme gibts bei Prozessoren nicht ^^) Die folge ist, dass die 4 Biertrinker, die jeweils 2 Liter pro Minute trinken können, ganze 4 Minuten brauchen, um 8 Liter zu trinken, weil ja immer nur einer arbeiten kann.

Genau so ist es bei Prozessoren und Programmen. Ein Prozessor hat z.B. 4 Kerne, und jeder davon kann 2 Milliarden Berechnungen pro Sekunde durchführen. Ob aber alle gleichzeitig arbeiten können oder nicht, hängt davon ab, wie das auszuführende Programm die zu bearbeitenden Daten zur Verfügung stellt.

Alle alten Programme sind z.B. so programmiert, dass sie nur einen Kern benutzen. Halbwegs aktuelle nutzen teilweise schon zwei, und sehr neue können auch 4 benutzen. Nur sehr wenige Programme (und auch Spiele) können mehr als 4 Kerne benutzen.

Du siehst also: je nach auszuführendem Programm hat man tatsächlich grob die 4x2 = 8 Gigahertz, oder aber auch, im schlechtesten Fall, nur 1x2 = 2 Gigahertz.

Deshalb wird für Gamer-PCs von Prozessoren mit mehr als 4 Kernen abgeraten... kaum ein Game kann die übrigen Kerne nutzen; ein Prozessor mit weniger Kernen, aber mehr Leistung pro Kern, macht hier einfach mehr Sinn.

Ich hoff, ich konnt dir das schön anschaulich erklären :)

seidllea  26.06.2012, 13:39

supergeile erklärung!!!

0
RobbingHood  26.06.2012, 13:38

Ausführlich und nettes Beispiel, DH!

0

nein. die berechnet man gar nicht. es kommt auf die jeweilige anwendung an, wie diese programmiert ist.
als schätzwert kannst du etwa sagen 70% von 2,0 x 4 aber wie gesagt.... einen genauen wert gibts da nicht.

Man kann die Leistung bzw. Mehrleistung eines Mehrkernprozessors nicht leicht berechnen, da sie stark von der einzelnen Anwendung abhängt. Handelt es sich um leicht parallelisierbare Aufgaben, so kommt man fast an die vierfache Leistung eines single-core Prozessors heran. Ganz kann man sie aber nie erreichen, da immer Verluste beim Verteilen und Koordinieren der Prozesse entstehen. Je mehr Prozessoren um so höher ist der Verwaltungsaufwand normalerweise und um so höher sind die Verluste. Handelt es sich um schlecht parallelisierbare Aufgaben, weil z.B. die weiteren Berechnungen von dem Ergebnis einer langsamen Berechnung abhängen, so hat man 3 Przessorkerne, die warten und einen, der ausgelastet ist. Der Mehrwert eines Vierkerners is in diesem Fall fast gleich null. (Fast, weil normalerweise einige Betriebssystemrutinen zumindest im Hintergrund abgearbeitet werden müsen). Das selbe gilt für ältere Programme, die nicht für mehrere Kerne ausgelegt wurden, für Programme, bei denen z.B. Festplattenzugriffe oder Netzübertragungen der begrenzende Faktor sind etc. Auch Speicherzugriffe, die die Prozessoren mit Daten versorgen, können nicht paralelisiert werden.

Untereuinander sind verscheidene Prozessoren mit geleicher Taktfrequenz häufig nicht vergleichber, da sie zur bewältigung der selben Aufgaben verschiedene Strategien benutzen, die mehr oder weniger Zeit benötigen. Einige führen z.B. spekulativ schon einmal Rechnungen aus, während sie auf das Ergebnis anderer Rechnungen warten. Haben sie richtig spekuliert, so wurde Zeit gewonnen. Lagen sie daneben, so ist nicht nur die Rechnung verloren, sondern die Register müssen erst wieder mit den Ausgangswerten geladen werden und das System ist sogar langsamer.

Um verschiedene Prozessoren dennoch vergleichen zu können, werden Benchmarktests durchgeführt, in denen der Zeitbedarf verschiedener Systeme bei standardisierten Aufgaben gemessen wird. In diesen Tests sieht man, dass Prozessoren fast nie in allen Tests führend sind, sondern mehr oder weniger gut für verschiedene Aufgaben geeignet sind.

Nein, du kannst die Leistungen der einzelnen Prozessorkerne nicht einfach multiplizieren! Dein Prozessor hat 4 Kerne, welche jeweils mit 2GHz getaktet sind. Nicht mehr, aber auch nicht weniger.

NEin, denn alle Kerne arbeiten ja mit 2 Ghz. Wenn vier Autos mit 100 Km/h fahren, fahren ja auch nicht alle vier zusammen 400..oder? Der Vorteil von vierkern Prozessoren ist der, das die anstehende Aufgabe , wenn es die Software unterstützt, auf vie Kerne verteilt wird und somit in einem viertel der Zeit erledigt werden kann. Wenn 4 Arbeiter einen Tag brauchen um ein Loch zu graben braucht einer ja auch vier Tage, nicht wahr?. Also die Tktfrequenz bleibt die gleiche, nur die Abbarbeitung der anstehenden Aufgabe geht schneller.