Original von America`s Most Wanted
... das nicht mehr. Da kannst du gleich Tschechisch mit mir reden. Ich weiß weder, was drei Kerne sind/sein sollen, noch was ein "aufgebohrter G5" ist, geschweige denn "Threadsynchronisation", "Multicore-Monolithen" oder "X86 oder PPC".
OK, dann versuche ich das nochmal verständlicher zu formulieren:
3 Kerne - Die CPU der XBox besitzt drei vollständige Prozessoreinheiten, die sich aber die Verbindung zur Außenwelt (Speicher, Grafik, Peripherie) teilen müssen. Diese sind auf einem sogenannten
Die integriert, das ist das winzige Stück Halbleiter (< Briefmarke), welches aus der großen Silizium-Platte ausgesägt und üblicherweise in ein Keramik-Gehäuse mit Metallfüßen gepackt wird. Stell dir einfach vor: drei Köpfe auf dem Hals, kann zwar schneller denken aber es bleiben trotzdem nur je 2 Arme und Beine. Das gleiche planen Intel und AMD derzeit mit 2 Kernen in ihren jeweiligen Prozessorlinien, soll Mitte bis Ende dieses Jahr marktreif werden.
X86/PPC - Das sind Kurzbezeichnungen für die derzeit erfolgreichsten Prozessor-Architekturen. X86 steht für alles, was Intel (außer Itanium) und AMD bauen, das X ist eine
Variable: z.B. 386, 486, 586 (Pentium), 686 (Athlon, Pentium 4). PPC steht für PowerPC, vornehmlich bekannt als Mac-Prozessor, wovon die aktuelle Variante
G5 genannt wird.
aufgebohrter G5 - Das was CELL eben nicht ist, es enthält zwar einen G5-Kern, aber dieser ist (fast?) ausschließlich dafür da, die 8
SPUs zu steuern, welche die eigentliche Rechenleistung liefern.
SPU steht für Synergistic Processing Unit (etwa: Zusammenarbeits-Recheneinheit) und das sind die Arbeiter im CELL-Verbund.
Multicore-Monolithen - Kein Fachbegriff, sondern mein Versuch, auszudrücken, dass die Strukturen herkömmlicher Prozessoren nicht darauf ausgelegt sind, massiv parallel zu arbeiten. Monolithisch bezeichnet Strukturen, die ein untrennbares Ganzes darstellen (Mono = ein, Lithos = Stein; z.B. Kunstwerk, welches aus einem Stein gemeißelt wurde). Multicore bedeutet mehrere Kerne auf einer CPU, somit meine ich mit diesem Begriff, dass mehrere eigentlich eigenständige Einheiten auf einen Prozessor gezwängt werden. Die Praxis zeigt, dass dies nur in wenigen Fällen bei bestimmten Aufgaben nahe an das Doppelte eines Kerns herankommt (1,8 bis 1,9), bei höheren Anzahlen wird der Verlust durch Teilen von Kommunikationswegen und Koordination der Aufgaben höher.
Threadsynchronisation - Die eben genannte Koordination der Aufgaben, Thread heißt Verzweigung. Bestimmte Aufgaben lassen sich parallel unabhängig ausführen, andere müssen aufeinander abgestimmt (synchronisiert) werden, weil vielleicht ein Ergebnis von Aufgabe 1 irgendwo bei Aufgabe 2 weiter bearbeitet werden muss. Normalerweise ist dies die Aufgabe der Software, im CELL findet sich dafür auch Unterstützung auf Hardware-Seite. Diese sollte die Effizienz beim Verteilen der Threads erhöhen. Dazu besitzt CELL extrem breite Datenbusse, sowohl intern als auch extern zum Hauptspeicher, fehlende Bandbreite ist das Hauptproblem bei massiv paralleler Verarbeitung heutzutage.
</Tschechisch>
Eine einfache Frage: Ist der Cell denn den ganzen derzeitigen Hype wert?
Eine einfache Antwort: sehr stark vermutlich ja!
Original von Rentner
Noch was zu dem Cell Chip: Liest sich ganz nett was mit dem Teil so theoretisch möglich wäre. Nur stellt sich mir die Frage: Können sich die Entwickler es sich überhaupt leisten den Cell Chip voll auszunutzen? Da müsste doch eine unglaubliche Entwicklungsarbeit dahinter stecken, würde man solche Späße wie individuelle KI oder einzelne Grashalme in ein Spiel einbauen?
IBM behauptet, dass CELL sich sehr leicht programmieren lässt. Das natürlich unter der Vorraussetzung, dass man die Struktur seine Programme an das verlangte Format anpasst (sogenannte Apulets, Einheiten aus Daten und Programmcode, der auf diesen Daten ausgeführt werden soll). Wer bisher ausschließlich monolithische Strukturen programmiert hat, wird es erst mal schwer haben, umzudenken. Wer jedoch die Emotion Engine der PS2 gemeistert hat, oder Programme für Großrechner geschrieben hat (CELL ist nicht nur PS3), der wird sich dort sicher wesentlich wohler fühlen.
Ansonsten bleibt abzuwarten, wie die Entwickler in ein paar Monaten/Jahren damit zurechtkommen, das Zauberwort heißt aber Middleware. Sowohl Microsoft als auch Sony haben sich dazu bekannt, dass die Bedeutung dieser Gattung Software essentiell für die zukünftige Spieleentwicklung ist. Middleware bedeutet, dass bestimmte Entwickler (z.B. Sony oder Microsoft selbst) Bibliotheken und Frameworks zur Verfügung stellen, auf die die eigentlichen Spieleentwickler aufsetzen. Es muss sich eben nicht jeder darum kümmern, wie man das Gras darstellt, man bindet das entsprechende Modul ein. Das findet heute bereits in kleinerem Rahmen statt, für die Next Generation wird das zum A und O.