• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Dual-CPU Vorteile?

Apflap

Süsser Pfaffenapfel
Registriert
13.12.09
Beiträge
665
Hi Leute,

Da ich mich im Zuge der Gerüchte um das nächste Mac-Pro-Release, erstmals mit diesem "Flagschiff" beschäftigt habe, stelle ich mir vorallem folgende Frage:

Was sind die Vorteile eines Dual-CPU-Systems, gegenüber einem Single-CPU-System?

Konkreter:
Bietet eine Architektur mit mehreren Prozessoren auch Vorteile für "Consumer-Software" oder ist sie nur für server und Professionelle Anwendungen sinnvoll?
Was ist effektiver/ leistungsstärker, ein Quad-Core-Single-CPU-System oder ein Dual-Core-Dual-CPU-System? (wahrscheinlich ist dieser Vergleich ziemlich bescheuert, ich stelle ihn mal trozdem auf und berufe mich auf meine Ahnungslosigkeit:innocent:)

LG Apflap
 

Flying Apple

Osnabrücker Reinette
Registriert
06.03.10
Beiträge
992
Was der Vorteil ist? Mehr Power!

Und sie bietet auch Vorteile für Consumer-Software. Spiel laufen flüssiger (sofern diese 2-Kernprozessoren unterstützen), Konvertierung von Musik läuft schneller über die Bühne, .... Es wird eben alles schneller.

Ob sich das für dich lohnt musst du selbst entscheiden. Allerdings verkauft Apple doch inzwischen gar keine Macs ohne Core2Duo-Prozessoren mehr.

Edit: Ein Quadcore-Prozessor ist so lange schneller wie all seine Kerne unterstützt werden. Ist dies der fall werden in allen Prozessorkernen gleichzeitig Prozesse bearbeitet. Insofern ist ein 4-Kerner mit 2, GHz einem 2-Kerner mit der selben GHz-Taktung im gegebenem Fall überlegen. Werden allerdings nur 2 Kerne unterstützt hebt sich das wieder auf. Desto mehr Kerne vorhanden sind desto mehr Prozesse können! gleichzeitig bearbeitet werden. Für Personen die allerdings keine aufwendigen Spiele spielen (meine Wenigkeit) reicht meiner Meinung nach allerdings ein aktuelles Macbook/Macbook Pro/iMac mit einem Core2Duo Prozessor.
 

Fabi

Gloster
Registriert
03.05.08
Beiträge
64
Er redet nicht von mehreren Kernen, sondern von mehreren CPUs, so wie es im Mac Pro der Fall ist. ;)
 

Paul_

Niederhelfenschwiler Beeriapfel
Registriert
30.04.09
Beiträge
855
Vom Preis-Leistungs-Verhältnis bestimmt nicht, aber dein PC oder Mac ist einfach länger "aktuell".

Und z.B. Quicktime oder HandBreak konvertieren schneller, mehrere Programme, selbst wenn sie nur einen Prozessor unterstützen werden natürlich dann gleichmäßig verteilt und du hast eben doppelte CPU-Leistung, wenn Quicktime für meine "HD-Video auf iPod reduzieren-Aktion" eben 97% CPU-Auslastung hatte, dann wären es jetzt eben nur 48,5%, oder es würde schneller gehen. Solltest du Windows (o.ä.) virtualisiert haben, so kannst du diesem einen ganzen Prozessor (oder mehre Kerne als sonst) zuweisen, wobei der Vorteil am größten ist.

Allgemein: Man brauch es nicht, aber es ist nie falsch es zu haben und du merkst den Unterschied wirklich. Und nicht nur auf der Stromrechnung ;D)
 

Flying Apple

Osnabrücker Reinette
Registriert
06.03.10
Beiträge
992
Er redet nicht von mehreren Kernen, sondern von mehreren CPUs, so wie es im Mac Pro der Fall ist. ;)

Sorry, hast recht hab mich verlesen.:p

Edit: Aber dann muss ich sagen: Welcher Ottonormal-Bürger würde sich schon einen Power Mac für 2999€ kaufen? Grafiker, ok! Special-Effektsbastler in Hollywood, jop! Aber normaler Konsument.o_O
 

Cuthbert87

Granny Smith
Registriert
12.12.08
Beiträge
17
Morgen,

um erst einmal den Unterschied zwischen Multi-Core und Multi-CPU zu nennen:

Was die Rechenleistung der Prozessoren angeht, so ist diese identisch.
D.h., dass zwei C2D Prozessoren genau soviel verarbeitet bekommen wie ein C2Q Prozessor, natürlich unter der Annahme, dass beide aus genau baugleichen Prozessorkernen bestehen.

Multi-Core und Multi-CPU Systeme sind jedoch nicht gleich rechenstark, hier haben Multi-CPU Systeme die höhere Leistung.
Bei einem Multi-Core System werden alle Prozessorkerne über den selben Datenbus angesprochen und die Daten für alle Kerne müssen hierüber transportiert werden. Dies limitiert die Menge der Daten pro Kern auf einen Teil des gesamten Vermögen des Datenbus.
Bei Multi-CPU Systemen sind die verschiedenen CPUs über einen eigenen Datenbus angebunden und können somit unabhängig und schneller mit zu berechnenden Daten versorgt werden.
Wieder am Beispiel von gerade veranschaulicht:
Beim Multi-Core System hat in der Theorie jeder Prozessorkern 1/4 des Datenbus zur Verfügung.
Das Multi-CPU System kann jedoch jeder CPU einen Datenbus bereitstellen und somit jedem Prozessorkern 1/2 Bus.

Was bringt Dir das zuhause/im Alltag?
Nix!
Die meisten Prozessoren sind im Hausgebrauch eh nicht ausgelastet und dies nicht, weil der Bus nicht schnell genug neue Daten zum berechnen liefert.

Warum gibt's das denn z.B. bei Apple im Mac Pro?
Weil es Software gibt, die aus einer solchen Hardware ihren Nutzen zieht, wie zum Beispiel Software für 3D Designer die zum Rendern verwendet wird.
Weiter sind hier natürlich auch Server aufzuführen, da sie meist mit vielen Clients und diversen Programmen arbeiten und durch einen hohen Datendurchsatz (Bus) entsprechend effizient arbeiten können.

(oBdA. sollte selbes auch für Grafikkarten gelten, leider kann ich hierzu aber nichts genaues sagen, da ich mich nicht noch einmal mit den dort verwendeten Techniken beschäftigt habe.)

Fazit:
Für zuhause "reicht" ein C2Q und ein zwei C2D System ist nicht gewinnbringend.
Der zusätzliche Kostenpunkt, den eine Anschaffung eines zwei-CPU Systems mit sich bringt mal ganz außen vor gelassen.

Grüzze und ich hoffe ich konnte helfen (ohne zu viele Rechtschreibfehler zu fabrizieren)

p.s. C2D und C2Q stehen hier als Synonym für alle Zwei-/Vielkern-Prozessoren, seien es Intel oder AMD Produkte jeder Art.
 

Cuthbert87

Granny Smith
Registriert
12.12.08
Beiträge
17
Und z.B. Quicktime oder HandBreak konvertieren schneller, mehrere Programme, selbst wenn sie nur einen Prozessor unterstützen werden natürlich dann gleichmäßig verteilt und du hast eben doppelte CPU-Leistung, wenn Quicktime für meine "HD-Video auf iPod reduzieren-Aktion" eben 97% CPU-Auslastung hatte, dann wären es jetzt eben nur 48,5%, oder es würde schneller gehen.

Kurz und knapp: Das ist Unfug.

Aber um das mal direkt was zu relativieren, direkt einmal zur Erklärung, was der Fehler ist:
Es kann sein, dass Quicktime und andere Software dadurch schneller arbeiten, jedoch nur dann, wenn sie mindestens Mehrkern fähig sind, denn andernfalls ist es nicht möglich einen Prozess auf zwei Kerne zu spalten.
Analoges Beispiel: Klausur.
Die Klausur hat eine Aufgabe mit zwei Teilen, die aufeinander aufbauen. Teamarbeit erlaubt.
Dein Nachbar macht Teil 1 und Du machst Teil 2. Nach deiner Rechnung bräuchtet Ihr nur halb so lange, aber...
Kannst Du nun Teil 2 bearbeiten, bevor dein Nachbar dir Teil 1 gibt? -Nein.
Das selbe ist es im Grunde mit der Mehrkern Fähigkeit von Prozessen.
Und in dem Moment wo du erst auf deinen Nachbarn warten musst ist es auch zeitlich egal, ob Ihr zusammen arbeitet oder nicht.
Auch hast Du in dieser Situation keine 50:50 Aufteilung der Last, sondern 100:0 und 0:100, was im Schnitt wie eine 50:50 Last aussehen kann.

Ist es möglich Teile eigenständig zu bearbeiten, hast Du natürlich einen Vorteil, ob optimiert oder nicht.

War nicht so bös gemeint, wie ich's vielleicht mit "Unfug" formuliert hab, aber von Seiten der Informatik ist's leider so.

Grüzze
 

Apflap

Süsser Pfaffenapfel
Registriert
13.12.09
Beiträge
665
@Paul_ & Cuthbert87: danke für die ausführlichen antworten.

Kann mann also zusammenfassen, dass nur Software von einer multi-CPU-Lösung profitiert, wenn sie für diese Entwickelt wurde?
Und das dies bei (fast allen) Consumer-Anwendungen nicht der fall ist?
 

markthenerd

Cellini
Registriert
26.08.06
Beiträge
8.746
Volltreffer!


@Flying Apple: "Welcher Ottonormal-Bürger ... ?"

Zugegeben nicht viele, doch es gibt sie. So hat sich z. B. einer meiner Bekannten einen "Multimedia-kann-alles-und-noch-etwas-mehr-Computer" andrehen lassen, nur um nach zwei Jahren festzustellen, dass er von all den beworbenen (selbstredend auch bezahlten) Features nichts aber auch gar nichts jemals benutzt hat.

So ganz nach dem Motto: "Was 'Super-Trooper-High-Feel-ANXS-Multi-Goil-Flex' bedeutet weiss ich zwar nicht, Hauptsache es ist drin."
 

karolherbst

Danziger Kant
Registriert
11.05.07
Beiträge
3.878
Kurz und knapp: Das ist Unfug.

Aber um das mal direkt was zu relativieren, direkt einmal zur Erklärung, was der Fehler ist:
Es kann sein, dass Quicktime und andere Software dadurch schneller arbeiten, jedoch nur dann, wenn sie mindestens Mehrkern fähig sind, denn andernfalls ist es nicht möglich einen Prozess auf zwei Kerne zu spalten.
Analoges Beispiel: Klausur.
Die Klausur hat eine Aufgabe mit zwei Teilen, die aufeinander aufbauen. Teamarbeit erlaubt.
Dein Nachbar macht Teil 1 und Du machst Teil 2. Nach deiner Rechnung bräuchtet Ihr nur halb so lange, aber...
Kannst Du nun Teil 2 bearbeiten, bevor dein Nachbar dir Teil 1 gibt? -Nein.
Das selbe ist es im Grunde mit der Mehrkern Fähigkeit von Prozessen.
Und in dem Moment wo du erst auf deinen Nachbarn warten musst ist es auch zeitlich egal, ob Ihr zusammen arbeitet oder nicht.
Auch hast Du in dieser Situation keine 50:50 Aufteilung der Last, sondern 100:0 und 0:100, was im Schnitt wie eine 50:50 Last aussehen kann.

Ist es möglich Teile eigenständig zu bearbeiten, hast Du natürlich einen Vorteil, ob optimiert oder nicht.

War nicht so bös gemeint, wie ich's vielleicht mit "Unfug" formuliert hab, aber von Seiten der Informatik ist's leider so.

Grüzze

Hier steht aber auch etwas "Unfug". Bei mehreren Kerne geht es eben genau darum mehreres gleichzeitig zu machen. Was für einen Sinn hätte denn sonst Multicore? Und 50:50 ist die Auslastung auch nicht, wenn dann 100:100.
Beispiel: es wird ein Bild gerendert. Man hat jetzt aber 4 Kerne. Was macht man? Genau, man teilt das Bild in mehrere Bereiche auf und verteilt das Rendern auf die verschiedene Kerne. Cinebench r11.5 zeigt das ganz gut, wie das dann abläuft.
Jeder dieser Berechnungen wird in einem eigenen Thread abgehandelt. Und jeder Kern kann zur selben Zeit nur einen! Thread behandeln. Die neuen i7 können sogar ihre Kerne virtuell aufspalten und per Kern sogar 2 Threads bedienen.
Bei dem Bild Beispiel sind sogar alle Teile voneinander unabhängig und können so gleichzeitig gerendert werden. Aber genau das ist das Problem bei Multi-Cores/CPU. Man braucht erst Prozesse, die aufgeteilt werden können. Jedoch passiert das in Mac OS X schon teilweise automatisch.
Zb bekommt der ObjC Dispatcher von jedem Prozess einen eigenen Thread usw...
 

Cuthbert87

Granny Smith
Registriert
12.12.08
Beiträge
17
@karolherbst

Ich muss Dir recht geben, dass das, was ich geschrieben habe in Bezug auf den wirklichen Ablauf beim Rechner nicht richtig ist.
Mir ging es bei der Aussage aber auch weniger darum genau darzustellen, wie Rechenleistung bei Mehrkernprozessoren und entsprechenden multi-threaded Prozessen aufgeteilt wird und was für eine Last dadurch entsteht, als darum klar zu machen, dass es nicht möglich ist einen single-threaded Prozess auf mehrere Prozessoren aufzuteilen.
Und da wirst Du mir zustimmen, dass das nicht geht.

Was wiederum genau in den aktuellen Prozessoren geschehen kann (Stichword i7) und was die einzelnen Betriebssysteme anstellen können denke ich sollte hier einfach mal völlig ignoriert werden, denn es geht ja nur darum, ob es sinnig ist für dem Heimgebrauch einen Multi-CPU Rechner zu kaufen oder eben nicht.

Grüzze
 

deloco

Weißer Winterkalvill
Registriert
14.11.07
Beiträge
3.505
Kann mann also zusammenfassen, dass nur Software von einer multi-CPU-Lösung profitiert, wenn sie für diese Entwickelt wurde?
Und das dies bei (fast allen) Consumer-Anwendungen nicht der fall ist?

Das kann man so eigentlich gut zusammenfassen, ja.

Allerdings wird, gerade durch die Multikern-Verbreitung, inzwischen viel Heimsoftware auch für mehrere Kerne programmiert. Es ist eben ein bisschen wie mit 64 Bit, man muss wissen wofür man es braucht.
Es bringt nix, sich noch so viele Prozessoren/Kerne ins System zu schrauben, wenn man kein Programm nutzt, welches mehr als 2 Kerne verwenden kann.

Ein schönes Beispiel sind hier Spiele… Dazu eine kleine Anekdote:
Ein Freund von mir hat sich einen neuen Rechner gekauft. Einen Quad-Core AMD mit jeweils etwa 3 GHz pro Kern. Ich habe ihn nach der CPU-Geschwindigkeit gefragt und er sagte 12GHz…
Ich habe dann etwas länge gebraucht um ihm zu verklickern, dass er nur 4 Kerne mit je 3GHz hat und dass wohl leider keines seiner Spiele einen großen Perfromance-Boost von dem neuen Rechner haben wird… Sein alter Rechner war ein 3GHz Dual-Core und die Grafikkarte hatte er behalten…

Fazit: Wenn man weiß, das man Software hat, die einen guten Nutzen aus mehreren Kernen zieht (meines Wissens nach Bildbearbeitung, Videoschnitt und Audiorecording/-Mixing) lohnt sich eine entsprechende Investition, ansonsten bringt es nix…
 

karolherbst

Danziger Kant
Registriert
11.05.07
Beiträge
3.878
naja er hatte ja nicht nur wegen consumer Software gefragt, darum habe ich das allgemein gefasst. Naja heuzutage würde ich schon sagen, dass viel der Consumer Software von multi-Core Systemen profitieren, da verschiedene Aufgaben schon auf Threads aufgeteilt werden können. Auch hat man meist mehr als nur 1 Programm auf. Es ist aber schwachsinnig nur für den Heimgebrauch oder für Games gleich 2 CPUs usw zu verbauen, da dort die Entiwcklung in Sachen multi-core noch etwas schleppend ist. Da profitiert man doch schon eher an hohen Taktraten und einer schnellen Grafikkarte.
Also DualCore ja, DualCPU nein, da zu teuer und bringt relativ wenig Performancegewinn. Außer man braucht diese wirklich, zb für einen Server usw...
 

karolherbst

Danziger Kant
Registriert
11.05.07
Beiträge
3.878
Ein weichgekochtes Ei kocht man vier Minuten, zwei logischerweise acht Minuten. :-D

Außer man hat 2 Kocher, dann sogar in 4,1 Minuten (4 wäre unrealistisch, welcher Mensch tut 2 Eier ins 2 Kocher in der gleichen Zeit wie 1 Ei in einen Kocher? Außer man hat 2 Menschen, aber dann wirds was ganz anderes. 2 Computer, die miteinander arbeiten sind nicht 2x so schnell, sondern sogar ein bisschen mehr ;) aber das ist eine ganz andere Sache)
 

bennibrother1

Zuccalmaglios Renette
Registriert
24.09.08
Beiträge
259
Das Thema war zwar schon mal eines, trotzdem noch mal:

Ein weichgekochtes Ei kocht man vier Minuten, zwei logischerweise acht Minuten. :-D
Oder man tut 2 in den gleichen Topf, dann hat man 2 Eier in 4 Minuten ;)

Beim Rendern mit Blender würde ich mir allerdings schon manchmal 2 Quadcore-Prozessoren wünschen, das ist teilweise wirklich Zeitaufwändig, gerade wenn man Anaglyph-Filme macht.
 

karolherbst

Danziger Kant
Registriert
11.05.07
Beiträge
3.878
Oder man tut 2 in den gleichen Topf, dann hat man 2 Eier in 4 Minuten ;)

Nein, das wäre sowas wie Vektoriesierung, wo die gleiche Aufgabe gleichzeitig mehrmals gemacht wird. Wir reden aber von 2 Kernen, also 2 Eierkochern ;) Aber hast schon Recht, hier wäre einer schlauer, aber mal schauen, ob der Mensch auch es unterstützt mehrere Eier in einem Kocher zu kochen