Cell (Prozessor)
Der Prozessor Cell wurde von IBM gemeinsam mit Sony und Toshiba entwickelt und wird mit einer Strukturgröße von 90 nm gefertigt, wobei die Umstellung auf 65 nm geplant ist. 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.
Aufbau
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'. 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 Seite. Insgesamt verfügt die CPU also über 2,5 MByte internen Speicher.
Die Chipfläche, also die Ausmaße des Die betragen rund 221 mm². Die Gesamtleistung sämtlicher Cores beträgt theoretisch ca. 256 GFLOPS.
Die einzelnen Prozessorkerne sind über einen Element Interface Bus (EIB) mit 96 Byte pro Takt gekoppelt. Sowohl das PPE, als auch die SPEs können pro Takt mit 16 Byte auf den EIB zugreifen. Der EIB ist dabei als Ringbus (4x) realisiert.
Zugriff auf den Hauptspeicher erfolgt über einen Memory Interface Controller (MIC).
Zukünftige Entwicklungen
Die erste kommerzielle Verwendung wird das Cell-Design in Sonys Playstation 3 mit 3,2 GHz Taktung finden, hier jedoch mit nur 7 aktiven SPEs (entspricht noch ca. 216 GFLOPS), um die Ausbeute bei der Fertigung zu erhöhen. Für Cell 2 ist die generelle Fertigung in 65 nm angekündigt sowie die Auslegung der SPEs auf doppelte Genauigkeit (double precision).
Weitere Informationen
Vergleich der Linpackperformance zwischen Cell BE und anderen Prozessoren
Linpack 1kx1k (DP) | Peak GFLOPS | Actual GFLOPS | Effizienz (in %) |
---|---|---|---|
SPU, 3,2 GHz | 1,83 | 1,45 | 79,23 |
8 SPUs, 3,2 GHz | 14,63 | 9,46 | 64,66 |
Pentium 4, 3,2 GHz | 6,4 | 3,1 | 48,44 |
Pentium 4 + SSE3, 3,6 GHz | 14,4 | 7,2 | 50,00 |
Itanium, 1,6 GHz | 6,4 | 5,95 | 92,97 |
(Quelle: [1])
Die Werte beziehen sich auf doppelt genaue Fließkommazahlen (64 Bits), für die der Cell-Prozessor nicht optimiert ist. Linpack-Berechnungen mit einfache genaue Fließkommazahlen (32 Bits) erreichen über 73 GFLOPS auf einem Cell-Prozessor mit 8 SPUs.
Siehe auch
Nebenläufigkeit, Parallelisierung, Pipeline-Architektur, Simultaneous Multithreading, Multicore-Prozessor, PowerPC
Weblinks
- ibm.com - STI cell processor (englisch)
- www.the-cell-chip.de - Unabhängige Webseite über den Cell Prozessor, Forum und Technik-Wiki
- cell.raw.net - Unabhängige Webseite über Cell (englisch)
- http://www.blachford.info/computer/Cells/Cell0.html - Funktionsweise (englisch)
- http://www.heise.de/newsticker/meldung/56139 - Genauere Beschreibung
- http://www-128.ibm.com/developerworks/power/library/pa-cellstartsim/ SDK für den Cell Prozessor