Cell (Prozessor)

Cell (Prozessor)
Die des Cell-Prozessors

Cell ist der Name für eine Prozessorserie, die von IBM gemeinsam mit Sony und Toshiba entwickelt wurde. Die Prozessoren zeichnen sich durch die Nutzung eines 64-Bit-PowerPC-Kernes, einer Pipeline-Architektur, Unterstützung für Simultaneous Multithreading und dem Einsatz einer Multicore-Architektur aus, wodurch sie für paralleles Rechnen prädestiniert sind.

Inhaltsverzeichnis

Aufbau

Schema des Cell-Prozessors

Das Grundkonzept der Cell-Prozessoren sieht acht Synergistic Processing Elements (SPE) und ein PowerPC Processing Element (PPE) vor. Jedes SPE besteht aus einer Recheneinheit (ALU) mit vierfachem SIMD, bezeichnet als Synergistic Processing Unit (SPU). Diese 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 KB. Mit dem Verzicht auf Cache zugunsten eines direkt adressierbaren und SRAM basierten lokalen Speichers können Speicherlatenzen gegenüber einer Cache-gestützten In-Order-Architektur kontrolliert und entsprechend gering gehalten werden.[1]

Schema der PPE

Der Steuerprozessor (PPE) basiert auf der 64-Bit-PowerPC-Architektur von IBM, dessen Pipeline aber im Vergleich zu üblichen PowerPC-Prozessoren in order arbeitet.[2] Da er zwei Threads gleichzeitig abarbeiten kann, entstehen bei entsprechend eingerichteten Programmen die üblichen In-Order-Nachteile durch blockierte Pipelines in geringerem Maße. Dem PPE stehen 512 KB L2-Cache zur Verfügung. Insgesamt verfügt die CPU also über 2,5 MB internen Speicher.

Schema der SPE

Die einzelnen Prozessorkerne sind über einen Element Interconnect Bus (EIB) gekoppelt, der Daten mit bis zu 96 Byte pro CPU-Takt übertragen kann. 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 (4× 128 Bit) realisiert und wird mit halbem CPU-Takt getaktet. Der Zugriff auf den Hauptspeicher erfolgt über einen Memory Interface Controller (MIC).[3]

Der erste Cell-Prozessor wurde in 90 nm Strukturgröße im SOI-Verfahren gefertigt, dabei erreichte das Die eine Fläche von rund 221 mm².[4] Ab März 2007 stellte IBM den Prozessor in 65-nm-Verfahren her, was zu einer kleineren Die-Fläche und somit zu geringeren Fertigungskosten führte.[5]

2007 wurde eine verbesserte Variante des Cell-Prozessors auf den Markt gebracht, der PowerXCell 8i. Dieser wurde bereits vom Start weg in 65 nm gefertigt und unterstützt im Vergleich zu seinem Vorgänger Berechnungen mit Gleitkommazahlen doppelter Genauigkeit nativ, das heißt ohne Hilfsfunktionen und damit wesentlich schneller.

Einsatz

Der Cell-Prozessor wurde mit speziellem Augenmerk auf breitbandige Berechnungsanwendungen entwickelt, vor allem Grafikberechnung und Videokodierung/-dekodierung. Die erste kommerzielle Verwendung fand das Design im September 2006 in IBM-Bladeservern mit acht SPEs.[6] Bekannt wurde der Prozessor aber vor allem durch seinen Einsatz in Sonys Spielkonsole PlayStation 3, wo er mit 3,2-GHz-Takt läuft, jedoch nur mit sieben SPEs. So können auch Cell-Chips mit nur sieben funktionierenden SPEs noch verbaut werden, wodurch die Kosten gesenkt werden können. Auch mit nur sieben SPEs erreicht der Prozessor aber eine theoretische Spitzenleistung von über 200 GFlops bei einfach genauen Gleitkommazahlen, was den Prozessoren der Konkurrenzkonsolen der siebten Generation (Xbox 360 und Wii) überlegen ist.

Des Weiteren wird der Prozessor auch in Fernsehern mit erweiterten Videofunktionen eingesetzt[7], Cell-Derivate mit nur vier SPEs und zusätzlicher Hardware zur Videokodierung und -dekodierung finden auch in speziellen Notebooks von Toshiba Verwendung[8][9] sowie in Erweiterungskarten für PCs.[10] Der Nachfolgeprozessor PowerXCell 8i wird seit März 2007 in Servern eingesetzt.[11][12]

Weitere Informationen

Peter Hoftsee, einer der leitenden Architekten des Prozessors

Im LINPACK-Leistungsvergleich mit anderen Prozessoren schneidet der Cell BE wie folgt ab:[2]

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 Gleitkommazahlen (64 Bits), für welche die SPUs des Cell-Prozessors nicht ausgelegt sind. Mithilfe der für doppelten Genauigkeit optimierten VMX-Einheit im PPE gelingt dem Cell-Prozessor 21,03 GFlops. Jack Dongarra und sein Team erreichten mit LINPACK unter doppelter Genauigkeit eine Performance entsprechend 100 GFlops auf einer 4K×4K-Matrix.[13]

LINPACK-Berechnungen mit einfach genauen Gleitkommazahlen (32 Bits) erreichen auf einem Cell-Prozessor mit acht SPUs über 73 GFlops. Mit zunehmender Matrixgröße steigt die Recheneffizienz, so dass 8 SPUs auf einer 4K×4K-Matrix unter LINPACK etwa 156 GFlops erreichen.

Zudem ist es auch interessant, den Cell-Prozessor mit anderen Multiprozessoren zu vergleichen:

Multi-Array Prozessoren[14]
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
Verlustleistung
in Watt
Ausführung
IBM Cell BE1 8 4 2 3,2 204,8 201 80 Prozessor
Nvidia 8800Ultra (G80) 128 1 2 1,512 387,1 2 >170 Karte
Nvidia 8800GTX (G80) 128 1 2 1,350 345,6 1053 120–170 Karte
Nvidia GT200b 240 1 n/a 1,476 1062,7 2 180–240 Karte
ATI HD2900 XT (R600) 320 5 2 0,742 474,9 2 150–200 Karte
ATI 1900XTX (R580) 48 4 2 0,65 249,6 120 130–1704 Karte
ATI RV770 800 5 n/a 0,750 1200 2 80–160 Karte
ClearSpeed CSX700[15] 192 1 2 0,25 96 80 10 Prozessor
ClearSpeed e710 192 1 2 0,25 96 80 25 Karte
  1. ohne Berücksichtigung des PPE
  2. unbekannt
  3. unter DirectX 9
  4. ctm

Siehe auch

Weblinks

Referenzen

  1. Cell’s Approach - In Order with no Cache, aufgerufen am 28. Januar 2011
  2. a b IBM: Cell Broadband Engine Architecture and its first implementation - A performance view
  3. D. Pham, S. Asano, M. Bolliger, M. Day, H. Hofstee, C. Johns, J. Kahle, A. Kameyama, J. Keaty, Y. Masubuchi, M. Riley, D. Shippy, D. Stasiak, M. Suzuoki, M. Wang, J. Warnock, S. Weitzel, D. Wendel, T. Yamazakiund K. Yazawa: The design and implementation of a first-generation CELL processor; International Solid-State Circuits Conference, Seiten 184–185, Februar 2005
  4. Introducing the IBM/Sony/Toshiba Cell Processor -- Part II: The Cell Architecture, Artikel auf Arstechnica vom 8. Februar 2005
  5. IBM Produces Cell Processor Using New Fabrication Technology, Nachricht auf X-bit Labs vom 12. März 2007
  6. IBM stellt Blade-Server-Modul mit Cell-Prozessoren vor, Nachricht auf Heise.de vom 13. September 2006
  7. Toshiba Demonstrates Cell Microprocessor Simultaneously Decoding 48 MPEG-2 Streams, Nachricht auf Tech-On vom 25. April 2005
  8. Toshiba Qosmio G55 - erstes Notebook mit SpursEngine, Nachricht auf Golem vom 18. Juni 2008
  9. Toshiba Qosmio® G55-Q802 Laptop Computers Specs & Customer Reviews, Produktspezifikation zum Notebook mit SpursEngine-Prozessor, einem Cell-Derivat
  10. The WinFast PxVC1100 Video Transcoding Card: Worth The Price?, Testbericht auf tomshardware.com, 28. Januar 2010
  11. IBM announces PowerXCell 8i, QS22 blade server, Nachricht auf Beyond3D vom 13. Mai 2008
  12. IBM BladeCenter QS22, Produktspezifikation zum IBM-Bladeserver mit PowerXCell 8i
  13. Exploiting the Performance of 32 bit Floating Point Arithmetic in Obtaining 64 bit Accuracy (Englisch), 31. Oktober 2006, aufgerufen 5. Januar 2011
  14. Zelluläre Strukturen in c't, Seite 196 ff, Ausgabe 12/2007, Heise-Verlag
  15. Clearspeed CSX700, Produktspezifikation zum CSX700-Prozessor

Wikimedia Foundation.

Игры ⚽ Нужен реферат?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Cell-Prozessor — Cell ist der Name für eine Prozessorserie, die von IBM gemeinsam mit Sony und Toshiba entwickelt wurde. Die Prozessoren zeichnen sich durch die Nutzung eines 64 Bit PowerPC Kernes, einer Pipeline Architektur, Unterstützung für Simultaneous… …   Deutsch Wikipedia

  • Cell Broadband Engine — Cell ist der Name für eine Prozessorserie, die von IBM gemeinsam mit Sony und Toshiba entwickelt wurde. Die Prozessoren zeichnen sich durch die Nutzung eines 64 Bit PowerPC Kernes, einer Pipeline Architektur, Unterstützung für Simultaneous… …   Deutsch Wikipedia

  • Cell Chip — Cell ist der Name für eine Prozessorserie, die von IBM gemeinsam mit Sony und Toshiba entwickelt wurde. Die Prozessoren zeichnen sich durch die Nutzung eines 64 Bit PowerPC Kernes, einer Pipeline Architektur, Unterstützung für Simultaneous… …   Deutsch Wikipedia

  • Cell — steht für eine wissenschaftliche Zeitschrift, siehe Cell (Zeitschrift) einen Prozessor, siehe Cell (Prozessor) den Film The Cell eine Band, siehe Cell (Band) Diese Seite ist eine …   Deutsch Wikipedia

  • Prozessor (Hardware) — Ein Prozessor ist eine Maschine oder eine elektronische Schaltung (i.A. ein IC), welche gemäß übergebener Befehle andere Maschinen oder elektrische Schaltungen steuert und dabei einen Prozess oder Algorithmus vorantreibt, was meist… …   Deutsch Wikipedia

  • Doppelkern-Prozessor — Der Begriff Mehrkernprozessor (auch Multicore Prozessor oder Multikernprozessor) bezeichnet einen Mikroprozessor mit mehr als einem vollständigen Hauptprozessor auf einem einzigen Chip. Sämtliche Ressourcen mit Ausnahme des Bus und eventuell… …   Deutsch Wikipedia

  • Dual-Core-Prozessor — Der Begriff Mehrkernprozessor (auch Multicore Prozessor oder Multikernprozessor) bezeichnet einen Mikroprozessor mit mehr als einem vollständigen Hauptprozessor auf einem einzigen Chip. Sämtliche Ressourcen mit Ausnahme des Bus und eventuell… …   Deutsch Wikipedia

  • Mehrkern-Prozessor — Der Begriff Mehrkernprozessor (auch Multicore Prozessor oder Multikernprozessor) bezeichnet einen Mikroprozessor mit mehr als einem vollständigen Hauptprozessor auf einem einzigen Chip. Sämtliche Ressourcen mit Ausnahme des Bus und eventuell… …   Deutsch Wikipedia

  • Multi-Core-Prozessor — Der Begriff Mehrkernprozessor (auch Multicore Prozessor oder Multikernprozessor) bezeichnet einen Mikroprozessor mit mehr als einem vollständigen Hauptprozessor auf einem einzigen Chip. Sämtliche Ressourcen mit Ausnahme des Bus und eventuell… …   Deutsch Wikipedia

  • Multicore-Prozessor — Der Begriff Mehrkernprozessor (auch Multicore Prozessor oder Multikernprozessor) bezeichnet einen Mikroprozessor mit mehr als einem vollständigen Hauptprozessor auf einem einzigen Chip. Sämtliche Ressourcen mit Ausnahme des Bus und eventuell… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”