Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf bitte mit, ihn zu verbessern, und entferne anschließend diese Markierung. |
Der Prozessor Cell wurde von IBM gemeinsam mit Sony und Toshiba entwickelt und wird mit einer Strukturgröße von 90 nm, 65 nm sowie 45 nm gefertigt. Er ist ein 64-Bit-PowerPC-Prozessor, der Pipeline-Architektur, Simultaneous Multithreading und Multicore-Architektur vereint, um ein besonders hohes Maß an Parallelisierung zu erreichen.
Inhaltsverzeichnis |
Der Cell-Prozessor ist aus acht Synergistic Processing Elements (SPE) und einem PowerPC Processing Element (PPE) aufgebaut. Jedes SPE besteht aus einer Recheneinheit (ALU) mit vierfach SIMD, bezeichnet als Synergistic Processing Unit (SPU). Sie verfügt über 128 Register, die jeweils 128 bit groß sind. Zum SPE gehört weiterhin ein Memory Flow Controller (MFC), der DMA-Übertragungen zum Hauptspeicher oder zu anderen SPEs steuert, sowie ein eigener lokaler Speicher von 256 KByte, der jedoch nicht durch einen Cache unterstützt wird.
Der Steuerprozessor (PPE) basiert auf der 64-Bit PowerPC-Architektur von IBM und arbeitet "in order" [1]. Da er zwei Threads gleichzeitig abarbeiten kann, entstehen bei entsprechend eingerichteten Programmen nicht die üblichen "in order"-Nachteile durch blockierte Pipelines. Dem PPE stehen 512 KByte L2-Cache zur Verfügung. Insgesamt verfügt die CPU also über 2,5 MByte internen Speicher.
Die Chipfläche, also die Ausmaße des Die, beträgt rund 221 mm².
Die einzelnen Prozessorkerne sind über einen Element Interface Bus (EIB) mit 96 Byte pro CPU-Takt gekoppelt. Sowohl das PPE als auch die SPEs können pro CPU-Takt mit 8 Bytes auf den EIB zugreifen. Der EIB ist dabei als Ringbus (4x128-Bit) realisiert und wird mit halbem CPU-Takt getaktet.
Zugriff auf den Hauptspeicher erfolgt über einen Memory Interface Controller (MIC). [2]
Die erste kommerzielle Verwendung fand das Cell-Design im September 2005 in IBM Bladeservern mit acht SPEs. Sollte sich in der Fertigung eine SPE als defekt herausstellen, wird der Prozessor in Sonys Playstation 3 mit 3,2 GHz Taktung (entspricht ca. 180 GFlops bei einfach genauen Fließkommazahlen) eingesetzt. So können auch defekte Chips mit nur sieben funktionierenden SPEs verbaut werden, wodurch die Kosten gesenkt werden können.
Für Cell 2 ist die generelle Fertigung in 65 nm angekündigt sowie die Auslegung der SPEs auf doppelte Genauigkeit (double precision). Diese werden nach dem Produktionsstart im März 2007 zunächst nur in den Servern verbaut. Die geringere Die-Größe führt zu niedrigeren Fertigungskosten und einem reduziertem Stromverbrauch.
Vergleich der Linpackperformance zwischen Cell BE und anderen Prozessoren
Linpack 1k×1k (DP) |
Taktfrequenz | Höchstleistung | Durchschnittliche Leistung |
Effizienz |
---|---|---|---|---|
SPU | 3,2 GHz | 1,83 GFlops | 1,45 GFlops | 79,23 % |
8 SPUs | 3,2 GHz | 14,63 GFlops | 9,46 GFlops | 64,66 % |
Pentium 4 | 3,2 GHz | 6,40 GFlops | 3,10 GFlops | 48,44 % |
Pentium 4 + SSE3 | 3,6 GHz | 14,40 GFlops | 7,20 GFlops | 50,00 % |
Itanium | 1,6 GHz | 6,40 GFlops | 5,95 GFlops | 92,97 % |
Die Werte beziehen sich auf doppelt genaue Fließkommazahlen (64 Bits), für die der Cell-Prozessor nicht optimiert ist. Linpack-Berechnungen mit einfach genauen Fließkommazahlen (32 Bits) erreichen über 73 GFLOPS auf einem Cell-Prozessor mit acht SPUs.
Zudem ist es auch interessant, den Cell-Prozessor mit anderen Multiprozessoren zu vergleichen:
Hersteller | Prozessor | Anzahl der Kerne | Anzahl der SIMD Einheiten |
FMul+FAdd Performance in Flop/s |
Takt in GHz |
Spitzenleistung in GFlop/s |
BLAS/SGEMM in GFlop/s |
Joule-Verlust in Watt |
Ausführung |
---|---|---|---|---|---|---|---|---|---|
IBM | Cell BE | 1 (6SPU`s) | 4 | 2 | 3,2 | 204,8 | 201 | 80 | Prozessor |
Nvidia | 8800Ultra | 128 | 1 | 2 | 1,512 | 387,1 | 1 | >170 | Karte |
Nvidia | 8800GTX | 128 | 1 | 2 | 1,350 | 345,6 | 1052 | 120-170 | Karte |
ATI | HD2900 XT | 320 | 5 | 2 | 0,742 | 474,9 | 1 | 150-200 | Karte |
ATI | 1900XTX | 48 | 4 | 2 | 0,65 | 249,6 | 120 | 130-1703 | Karte |
ClearSpeed | CSX600 | 96 | 1 | 2 | 0,25 | 48 | 25 | 10 | Prozessor |