PCs, Server & Xbox 360: Power-CPUs universell erfolgreich

18.01.2007 von Thomas Steudten
Kaum eine Prozessorarchitektur wird so vielseitig eingesetzt wie die von IBMs Power-CPUs. Von Servern bis hin zu den Konsolen Xbox 360, PS3 und Wii nutzen alle Prozessoren auf Power-Basis. Wir stellen die Besonderheiten der Architektur heraus.

Die Power-Architektur von IBM zählt neben dem SPARC-Design zu einer weiteren RISC-Prozessorlinie, die Kompatibilität, Skalierbarkeit und Performance im professionellen Umfeld bietet. Für den Consumer-Markt wurde auf diesem Design 1991 gemeinsam von Apple, IBM und Motorola (AIM) – ursprünglich für den Einsatz in PCs – der PowerPC-Prozessor (PPC) entwickelt.

Die Embedded- und im Auftrag gefertigten Versionen kommen aber auch in den Spielekonsolen Gamecube, Xbox 360 und Wii sowie in HPC-Systemen zum Einsatz. Bekanntermaßen hatte der PowerPC-Prozessor im Apple Macintosh Computer von 1994 bis 2006 den größten Erfolg, bevor Apple auf x86-Prozessoren umgestiegen ist.

Doch Apples Abkehr von den PowerPC-Prozessoren bedeutet für die Power-Architektur keineswegs das Aus. IBM stellt Mitte 2007 den mit Spannung erwarteten neuen POWER6 vor, eine Highend-CPU mit über 4 GHz Taktfrequenz. Der Cell BE in Sonys PS3 basiert auf einem Power-Core, und viele neue Geräte wie die Spielekonsole Nintendo Wii setzen auf Power-CPUs.

In diesem Artikel informieren wir Sie über die Architektur der Power-Prozessoren und deren Leistungsfähigkeit. Außerdem führen wir die vielfältigen Varianten der Power-CPUs auf.

Kompatibilität der POWER-Architektur

Zwischen dem POWER- und dem PowerPC-Prozessor besteht eine große Kompatibilität, jedoch unterstützen erst neuere POWER-Prozessoren (ab POWER3) auch den vollen PowerPC-64Bit-Befehlssatz. Bis auf wenige Ausnahmen laufen Applikationen und Betriebssysteme auf beiden Architekturen. Basieren POWER1 und POWER2 noch auf der POWER-ISA (Instruction Set Architecture), unterstützen nachfolgende Versionen nur noch die 64-Bit-PowerPC-ISA.

Im direkten Vergleich zur SPARC-Architektur von Sun hat IBM mit diversen ISA für POWER-, PowerPC-, AS/400-Prozessoren und zahlreichen variierenden Erweiterungen einige Umwege genommen. Aus dem POWER2-Design ging der PowerPC hervor, dann bildete Letzterer mit seinen 64 Bit und der Multiprozessorfähigkeit (SMP) die Vorreiterrolle, und das POWER-Design wurde angepasst.

Im High-Performance-Computing (HPC) bietet IBM mit den POWER- und PPC-Prozessoren heute Systeme mit bis zu 64 Prozessoren beziehungsweise 128 Kernen an. Die CPUs arbeiten mit dem proprietären Betriebssystem AIX5L, das quellkompatibel zum ebenfalls einsetzbaren Linux ist.

POWER ist ein Akronym für (P)erformance (O)ptimization (W)ith (E)nhanced (R)ISC, also Leistungssteigerung mit erweitertem RISC-Befehlssatz; steht aber ebenso für die Prozessorlinie bei IBM. Vom POWER1 bis zum aktuellen POWER5+ haben diverse Veränderungen stattgefunden. Die Prozessoren für das HPC-System „Blue Gene“ sind eine vom POWER- und PPC- vollkommen eigenständige Prozessorreihe.

In den 70er Jahren ging es los

Ursprünglich im Jahr 1974 der Idee entsprungen, ein System für die Telefonvermittlung zu entwickeln, das in der Lage war, 300 Anrufe pro Sekunde zu verarbeiten, wurde das Potenzial dieses neuen Prozessordesigns bei IBM erkannt. Nachdem das Telefonieprojekt nach nur einem Jahr eingestellt wurde, ging die Entwicklung am Prozessor jedoch weiter, und das Projekt bekam den Namen „801“, benannt nach der Gebäudenummer 801 am Thomas J. Watson Forschungszentrum.

Um die Echtzeitfähigkeit beim ursprünglichen Projekt zu gewährleisten, sollte eine komplexe (Schalt-) Funktion auf dem Chip durch mehrere einzelne, simple Befehle mit gleicher Ausführungszeit nachgebildet werden – der Vorläufer des RISC-Designs. Die Bezeichnung „RISC“ sollte sich auch später bei der Modellbezeichnung RS (für RISC System) wiederfinden.

Power-Zeitreise: Im Bild sehen Sie die Entwicklung vom PPC601 bis hin zum Power5 im Jahr 2004. Mitte 2007 folgt der Power6. (Quelle: IBM)

Beim RISC (Reduced Instruction Set Computer) haben die Instruktionen eine gleiche Bitbreite, und komplexe Funktionen werden durch viele einfache Befehle bearbeitet, so dass dieses Design leichter skaliert. Dazu im Gegensatz steht CISC (Complex ISC), welches komplexe Funktionen mit unterschiedlich breiten Befehlen und variabler Ausführungszeit bearbeitet.

Das Design des Prozessors mit Namen „801“ wurde durch getrennte Funktionsblöcke für Gleit- (FP) und Festkomma-Berechnungen (FX) sowie für Programmverzweigungen (Branch) für ein Multi-Execution-Design erweitert und erhielt den Namen „Cheetah“. Als Transistoren sollten Anfang der 80er noch schnelle bipolare ECL-Typen eingesetzt werden, doch 1984 machte die CMOS-Technologie einen hilfreichen Entwicklungssprung, und so kam diese Technik zum Einsatz.

POWER1

Die zweite Generation dieses Designs – „America“ getauft – bildete die Basis für den superskalaren POWER1. Mit dieser CPU brachte IBM das Modell RS/6000 (heute pSerie) 1990 auf den Markt. Dieser auch RIOS genannte Prozessor bestand bereits aus elf einzelnen Chips, funktional für:

Mit 25 MHz Taktfrequenz erreichte die RS/6000 eine Rechenleistung von 50 MFLOPS. Nur zwei Jahre später, 1992, wurde diese gesamte Funktionalität auf nur einem Chip realisiert und als RSC (RISC Single Chip) in Lowend-RS/6000-Modellen verbaut. Etwa zu dieser Zeit wurde die Vernetzung der Systeme zu Clustern populär, und IBM brachte mit dem SP1 (Scalable POWERParallel) den ersten POWER1-basierten Parallelrechner mit 62,5 MHz und 125 MFLOPS auf den Markt.

POWER2 / Super Chip

Der immer währende Wunsch nach mehr Rechenleistung manifestierte sich 1993 mit dem Nachfolger POWER2. Die CPU wurde um neue Befehle (beispielsweise Quadword load/store) erweitert sowie um einen größeren Daten-Cache und jeweils eine zweite Fest- und Fließkomma-Einheit, unter anderem zur Berechnung der Quadratwurzel in Hardware.

Der mit 67 MHz getaktete Chip brachte es auf 254 MFLOPS, also die doppelte Leistung gegenüber dem POWER1. Auch hier brachte IBM nur wenig später alle Einheiten auf einem Single-Chip unter und stellte diesen 1996 als POWER2SC / P2SC (POWER2 Super Chip) vor. Durch die Integration auf einem Chip konnte die Taktrate später beim P2SC+ auf 160 MHz Taktfrequenz gesteigert werden. Vom POWER2 gab es insgesamt drei Versionen, namentlich „Original“, „New Desktop“ und „New-Server“ – die beiden Letzteren angekündigt im Mai 1994. Alle sind binärkompatibel und differenzieren sich über Cache-Größe, Speicher- und Prozessor-Interface-Breite. Der POWER2 fand im Parallelsystem SP2 seinen Einsatz.

Durch die neue Allianz kam mit Motorola ein erfahrener Prozessorhersteller ins Boot, und der PowerPC (PPC), der die meisten POWER-Befehle bearbeiten konnte, entstand 1993 aus dieser Kooperation. Hauptaugenmerk wurde auf die bisher beim POWER fehlende Multiprozessorfähigkeit gelegt, und so kamen neue Befehle und die Unterstützung für SMP hinzu. Zudem wurde ein L2-Cache implementiert und die Taktrate erhöht.

POWER3

Aus dem „Gemisch“ von POWER2 und PPC (PPC-630) entstand 1997/1998 der erste SMP-fähige POWER-Prozessor, der POWER3. Gefertigt im CMOS6S2-Verfahren enthält er eine vollständige 64-Bit-Implementierung und besteht aus 225 Millionen Transistoren auf einer Die-Fläche von 225 mm².

Es gab vier POWER3-Kombinationen, die sich in der Anzahl kombinierbarer CPUs und der Taktrate (200-450 MHz) unterschieden. Die POWER3-Varianten trugen Bezeichnungen wie Winterhawk und Nighthawk. Das System ASC White war damals mit dem POWER3 (Nighthawk-2) das schnellste HPC-System auf dem Markt.

Flurplan: Das Die des IBM POWER3-Prozessors mit seinen 15 Millionen Transistoren wurde im CMOS6S2-Prozess (250 nm) mit fünf Interconnect-Layern gefertigt. (Quelle: IBM)

Der POWER3 verfügt über einen separaten Daten- und Adressbus, 64 KByte Daten- und 32 KByte Instruktions-L1-Cache. Der L2-Cache konnte maximal 16 MByte betragen, womit das 16-CPU-System insgesamt 64 GByte Hauptspeicher adressieren konnte. Der Prozessor arbeitet superskalar mit acht Executions- (IFU), zwei Fließkomma- (FPU), drei Festkomma- (FXU), zwei Load-Store- (LDST), eine Branch- (BIU) und eine Condition-Register-Unit.

Der I/O- und Switch-Bus (BIU) arbeiten unabhängig vom Speicher-Cache-Bus. Der POWER3 unterstützt Bus- und Switch-basierte Systeme mit dem PPC-6xx-Bus mit 94 bis 100 MHz Taktfrequenz und Off-Chip-L2-Cache. Mit Einführung der Silicon-on-Insulator-Technologie SOI konnte IBM die Performance 20 bis 35 Prozent gegenüber dem Standard-CMOS-Prozess steigern.

POWER4 / POWER4+

Im Jahr 2001 folgte der POWER4 erstmalig mit zwei Kernen (Dual-Core) auf einem Die und einem gemeinsamen L2-Cache. Der 32 MByte große L3-Cache war über den Switch-Bus angebunden und musste sich damit die Bandbreite teilen. Mit dieser schnellen Switch-Schnittstelle kam der Prozessor im Enterprise-Server Regatta p690 von IBM in Form von vier Multi-Chip-Modulen (MCM) mit je vier Prozessoren zum Einsatz.

Mit 1,3 GHz Taktfrequenz schaffte ein POWER4 im Jahr 2002 eine Rechenleistung von 5,2 GFLOPS und eine Performance von 166,4 GFLOPS bei einem System mit 32 Kernen. Der POWER4 arbeitet 8fach superskalar und kann 200 Befehle parallel ausführen.

Premiere: Der POWER4-Prozessor vereint zwei Kerne sowie einen gemeinsamen L2-Cache auf einem Die. (Quelle: IBM)

Zwei komplett überarbeitete POWER3-Kerne (fünffach superskalar) bilden die Basis für den 64-Bit-POWER4. Die modernisierte Version des POWER4 nennt sich POWER4+ und ist seit März 2003 verfügbar. Es ist die erste Prozessorbezeichnung mit einem Plus als Suffix. IBM erhöhte die Taktfrequenz auf 1,2 bis 1,9 GHz bei verkleinertem Design im 130-nm-CuSOI-Prozess.

Geschrumpft: Vergleicht man die Größe des POWER4 (180 nm) und POWER4+ (130 nm), so erkennt man anhand der Chipgröße die unterschiedlichen Fertigungsdesigns. (Quelle: IBM)

Der POWER4+ bietet bis zu 32 dynamisch veränderbare logische Partitionen (LPAR). Dies ist ein Feature von IBM, um Systemressourcen gemeinsam, aber von den Partitionen getrennt, zu nutzen.

POWER4 Multi-Chip-Modul

Beim Multi-Chip-Modul (MCM) aus vier POWER4-Prozessoren verbindet ein schneller Switch alle Prozessoren miteinander auf dem MCM mit einer Bandbreite von 35 GByte/s. Zum L3-Cache beträgt die Bandbreite 40 GByte/s und 100 GByte/s zwischen dem internen L1- und L2-Cache. Der I/O-Bus arbeitet dabei mit der halben Prozessortaktfrequenz, also zirka 500 MHz.

Von den insgesamt 5200 Pins sind „nur“ 2200 Signal- beziehungsweise Masseleitungen. Beim MCM fällt die stabile Ausführung auf, die zum einen die hohe Wärmeleistung von 4 x 125 Watt pro Prozessor über den Metallrahmen abführen muss. Um die 5200 Pins mit der Gegenseite zu verbinden, bedarf es einer Masse von zirka 60 Gramm pro Pin. Insgesamt sind somit 312 kg notwendig, um das MCM in den Sockel zu pressen. Der massive Metallträger verteilt diese Kraft gleichmäßig.

Single: Im Bild sehen Sie einen POWER4+-Prozessor mit Dual-Core-Technologie. (Quelle: IBM)

Mit dem POWER4 hat IBM den Fokus mehr auf Nebenläufigkeit (Thread-Level-Paralism TLP) als auf Instruction-Level-Parallelism (ILP) gesetzt. TLP bietet dann Vorteile, wenn ein Thread gerade Wartezyklen aufgrund von Speicherzugriffen oder falschen Sprungvorhersagen hat. Wenn dies der Fall ist, wird einfach der nächste Thread ausgeführt, während der andere wartet – so ist immer ein Thread aktiv und der Prozessor immer ausgelastet.

Quadrupel: Das Multi-Chip-Modul (MCM) besteht aus vier POWER4-Prozessoren. Mit einer Masse von 312 kg kontaktiert das MCM die Pins der Gegenseite auf dem System-Board. (Quelle: IBM)

POWER5 / POWER5+

Die fünfte Generation der POWER-Prozessor-Linie, der POWER5 mit Dual-Core-Technologie, wurde erstmalig im Jahr 2003 mit einer Taktfrequenz von 2 GHz vorgestellt. Seit 2004 kommt er durchgängig vom Desktop-System bis hin zum Großsystem in der p5-Serie zum Einsatz. Er basiert auf der PowerPC-ISA Version 2.01 und ist binär- und strukturkompatibel zur POWER4-Serie. Es ist die erste Serie, die aufgrund getrennter Out-of-Order-Pipelines, Register und doppelter Funktionseinheiten in der Lage ist, zwei Threads pro Kern gleichzeitig auszuführen.

Nach dem Reset arbeitet der Prozessor jedoch im Single-Thread-Modus und kann softwaremäßig in den Dual-Thread-Modus geschaltet werden.

Cache-lastig: Einen Großteil der Die-Fläche belegt beim POWER5 der von beiden Kernen gemeinsam genutzte L2-Cache. (Quelle: IBM)

Die Funktionsblöcke in der Abbildung zeigen sehr schön die doppelten Einheiten der beiden Kerne von der Dual-Gleitkomma- (FPU) und Dual-Festkomma-Einheit (FXU), der Befehls-Pipeline (ISU – Instruction-Sequencing-Unit), der Befehlsverarbeitung (IDU – Instruction-Decode-Unit), der Dual-Load-Store-Unit (LSU), der Befehlsholung (IFU – Instruction-Fetch-Unit), des Memory-Controllers (MC) und die Steuereinheiten für den Off-Chip-L3-Cache. Im unteren Teil der Abbildung ist der L2-Cache zu erkennen. Die FP-Pipeline wurde auf 24 Stufen gegenüber der des POWER4 erweitert, ansonsten sind die Pipeline-Tiefen unverändert.

Statt Hyper-Threading: Simultanes Multi-Threading

Die Thread-Level-Parallelität bei der Bearbeitung nennt IBM Simultanes-Multi-Threading (SMT), Intel bezeichnet sein Verfahren als Hyper-Threading. Dafür ausgelegte Betriebssysteme sehen daher zwei logische Kerne beziehungsweise in einem POWER5-Prozessor vier logische Prozessoren. In SMP-Systemen skaliert der POWER5 bis 64 Prozessoren beziehungsweise 128 Kerne. IBMs POWER5 besitzt einen integrierten Speicher-Controller und bietet die neue Virtual-Vector-Architektur (ViVA).

Der POWER5 verfügt bei einer Die-Größe von 389 mm² über 276 Millionen Transistoren. Die CPU wird im CMOS9S-Designprozess mit 130 nm (wie POWER4+) gefertigt und arbeitet mit einer Taktfrequenz von 1,65 bis 1,90 GHz. Dem POWER5 stehen 32 KByte 4-Wege-Daten- und 64 KByte 2-Wege-Befehls-L1-Cache zur Verfügung. Er besitzt 1,92 MByte 10-Wege-Shared-L2-Cache sowie einen 36 MByte Off-Chip-L3-Cache.

Der noch beim POWER4/4+ außerhalb des Chips befindliche Speicher-Controller für DDR2-Speicher wurde nun auf den Chip gepackt. Außerdem erfolgt die Anbindung des L3-Cache nicht mehr über den Switch-Bus, sondern direkt an den L2-Cache.

Cache-Struktur: Im Vergleich zum Vorgänger setzt die fünfte Generation auf die direkte Anbindung des L3-Cache an den L2-Cache sowie auf eine Integration des Speicher-Controllers auf den Chip. (Quelle: IBM)

Mit seinen zwei Kernen und 2-Wege-SMT kann der POWER5 vier Threads gleichzeitig bearbeiten. Mittels dynamischen Power-Managements steuert der Chip seine Leistung und damit seine Wärmeabgabe.

POWER-Pipeline

Die Pipeline-Struktur im POWER5 beinhaltet eine Master- und einige Ausführungseinheiten-Pipelines, die alle autonom arbeiten. Die Master-Pipeline liefert spekulative und In-Order-Instruktionen zum Mapping, Sequencing und zur Dispatch-Funktion. Sie stellt zudem sicher, dass der Programmfluss in der ursprünglichen Reihenfolge erfolgt. Daten aufgrund falscher Sprungvorhersagen verwirft die Pipeline.

Die Executions-Einheiten-Pipelines arbeiten Out-of-Order mit spekulativen und nicht spekulativen Instruktionen. Bis zu acht Befehle werden aus dem L1-Instruktions-Cache in die Pipeline geladen und durchlaufen diverse Bearbeitungen, bis das Ergebnis vorliegt. Aus dem Instruction-Buffer werden bis zu fünf Befehle (IOP) pro Takt geladen und dann in die 3-Wege Dekodier-Pipeline geschoben, um eine Dispatch-Gruppe aus insgesamt 20 Gruppen zu bilden. Der Sprungbefehl ist immer der letzte Befehl in der Gruppe oder, falls kein Sprung erfolgt, der NOP-Befehl.

Um die einzelnen Gruppen zu verfolgen, hat jede von ihnen einen Eintrag in der Global-Completion-Tabelle (GCT), der freigegeben wird, wenn die Gruppe bearbeitet wurde. Verschiedene Kernressourcen werden den Befehlen in der Gruppe während der Bearbeitung zugewiesen. Im Einzelnen sind dies:

Load-, Store-, & Performance-Unit

Die Load-Recorder-Queue (LRQ) ist 32-stufig, enthält reale Adressen und steuert die Reihenfolge der Load-Abläufe. Sie wird wieder freigegeben, wenn die Gruppe abgearbeitet ist. SRQ ist die Store-Recorder-Queue mit 32 Stufen und steuert die Store-Abläufe in der Load-Store-Unit (LSU). Diese Queue wird freigegeben, wenn die Speicheranforderung an das Speichersubsystem weitergereicht wurde.

POWER5-Pipeline: Rechts im Bild sehen Sie die Ausführungseinheiten des Prozessors. (Quelle: IBM)

Eine Performance-Monitor-Einheit (PMU) inklusive Zähler im POWER5 erlaubt das Zählen von Ereignissen und damit eine Aussage über die Auslastung der Einheiten. Insgesamt stehen sechs Performance-Monitoring-Counter (PMC) pro Thread zur Verfügung. Die Anzahl der zu zählenden Ereignisse ist mittlerweile auf 900 Events gewachsen, 500 einmalige und 230 pro Zähler.

Neue Features beim POWER5+

Den Nachfolger des POWER5 bezeichnet IBM als POWER5+. Die CPU ist seit Juni 2005 auf dem Markt und verfügt über den erweiterten Befehlssatz ISA 2.02. Der POWER5+ arbeitet mit Taktfrequenzen bis 2,3 GHz und wird im CMOS10S-90nm-Prozess fabriziert.

IBM verdoppelt beim POWER5+ die mögliche L3-Cache-Größe auf 72 MByte. Neue Page-Größen (64 KByte, 16 GByte), eine neue Segmentgröße (1 TByte), ein auf 2048 Einträge vergrößerter Translation-Look-ahead-Buffer (TLB) sowie neue Befehle zur Rundung von Gleitkommazahlen nach Integer führte IBM zusätzlich ein. Ein True-Little-Endian-Mode, Erweiterungen im Dual-SMP-Support, modernisierter Speicher-Controller für DDR2 mit 667-MHz-DIMMs und erweiterte Redundanz in den Caches runden die Architekturerweiterungen ab. Der POWER5+ kommt unter anderem auch beim Cell BE neben den acht Co-Prozessoren zum Einsatz.

Blockschaltbild: Beide Kerne des POWER5+ greifen wie beim Vorgänger auf einen gemeinsamen L2-Cache zurück. (Quelle: IBM)

Das LPAR-Feature aus dem POWER4+ wurde mit einem virtuellen Netzwerk und virtuellen Speicher erweitert. Beide Prozessoren ermöglichen eines Firmware-Updates. ViVA bietet beim POWER5/5+ in Software die Möglichkeit, die skalaren Gleitkomma-Einheiten zu einem einzelnen logischen Vektorprozessor zu summieren. Vektor- und Matrizenoperationen skalieren besser, wenn eine Operation parallel auf mehrere Daten angewendet werden kann (SIMD).

Vielfalt bei POWER5+-CPUs

Verfügbar sind die POWER5+-Prozessoren in unterschiedlichen Packungsversionen: Als Single-Core-Version ohne L3-Cache (SCM), als Dual-Core-Version (DCM mit L3-Cache, 1,9 GHz) und als Quad-Core-Version mit zwei Dual-Core- und zwei L3-Cache-Chips sowie als Multi-Chip-Modul (MCM). Das MCM besteht aus vier Dual-Core-Prozessoren mit jeweils eigenem L3-Cache.

Das Multi-Core-Modul für den POWER5 mit vier Prozessoren (8 Kerne) und 36 MByte-L3-Cache besteht aus 89 Metalllagen mit 5370 I/O-Pins, bestehend aus 2313 Signal-Pins und 3057 Pins, die der Energiezufuhr dienen. Das so genannte Hardware-Re-Routing-Feature (eFuse) erlaubt im Fehlerfall die Übergabe eines Threads an einen anderen Prozessor.

Quad-Core: Das Modul QCM besteht aus zwei POWER5+- und zwei L3-Cache-Siliziumplättchen. (Quelle: IBM)

Seit Herbst 2006 bietet IBM für die p5-Server-Serie den POWER5+ mit bis zu 2,3 GHz (SMP64, p5-595) an. Strained Silicon beziehungsweise Dual-Stress-Liner sind hier das Stichwort: Das Silizium wird gezielt gestreckt (NMOS-) oder gestaucht (PMOS-Transistor), und der Transistor schaltet damit um bis zu 24 Prozent schneller. Diese Technik kommt auch beim Nachfolger POWER6 zum Tragen.

5 GHz: Neuer POWER6 kommt Mitte 2007

Die neuen POWER6-Prozessoren treten Mitte 2007 die Nachfolge von IBMs aktuellen POWER5+ an. Den POWER5+ fertigt IBM im 90-nm-Prozess in Single- und Dual-Core-Varianten. Die 64-Bit-RISC-CPUs für Highend-Server und HPC-Anwendungen gibt es mit Taktfrequenzen bis 2,3 GHz.

Mit dem POWER6 erhöht IBM die Taktfrequenz radikal. Die ebenfalls mit einer Dual­-Core-Technologie ausgestatteten RISC-CPUs will IBM in Versionen von 4,0 bis 5,0 GHz Taktfrequenz ausliefern. Damit geht IBM nicht den Weg vieler Konkurrenten, Taktfrequenz zugunsten der Verlustleistung zu opfern.

Einer zu hohen Wärmeentwicklung wirkt der POWER6 laut IBM durch seinen 65-nm-Prozess sowie Core-Spannungen von nur 0,8 V entgegen. IBM verwendet bei der Fertigung SOI sowie die Strained-Silicon-Technologie. Außerdem kommen neue Techniken wie variable Gate-Längen und variable Schwellenspannungen bei den Transistoren zum Einsatz. Damit reizt IBM die maximale Performance pro Watt auf Transistorebene aus.

Allein durch den Schritt von 90 auf 65 nm Fertigungstechnologie erreicht IBM bei unveränderter Leistungsaufnahme eine 30 Prozent höhere Performance. Besonders durch die Dual Stress Liners wird die höhere Performance laut IBM-Fellow Bradley McCredie erreicht.

Zahlreiche Architekturerweiterungen

Die Pipeline-Tiefe des POWER6 bleibt trotz der verdoppelten Taktfrequenz unverändert zum POWER5. Für mehr Performance sorgen neben dem hohen Arbeitstakt zahlreiche Architekturerweiterungen. Beispielsweise verarbeitet der POWER6 nun Fließkomma-Dezimalzahlen in der Hardware statt wie vormals per Software. IBM erweiterte hierzu die POWER-Architektur um 50 neue Instruktionen. In Java-Applikationen erreicht IBM mit dem Decimal Floating Point Accelerator beispielsweise eine bis zu siebenfach höhere Performance. Zusätzlich spendiert IBM dem POWER6 die VMX-Engine Altivec, die aus den PowerPC-Prozessoren bekannt ist.

Die Vektor/SIMD Multimedia Extension (VMX) ist, wie der Name bereits sagt, eine Erweiterung, um Multimedia-Applikationen zu beschleunigen, und entspricht funktional Intels SSE-Erweiterung. AltiVec – als eingetragenes Warenzeichen von Freescale – bezeichnet IBM als VMX und definiert das Gleitkomma- und Integer-SIMD Instruction-Set. Es ist in der Power ISA 2.03 integriert.

Jeder Core des POWER6 beherrscht wie bereits beim POWER5 Multithreading. Das 2-Wege-SMT-Verfahren wurde von IBM allerdings verfeinert. Beispielsweise soll der zweite Thread eines Kernes für 55 Prozent mehr Performance bei OLTP-Anwendungen sorgen. Integer-Berechnungen beschleunigt das SMT des POWER6 um 40 Prozent.

Für eine hohe Betriebssicherheit bei POWER6-Systemen soll die neue Recovery-Unit des Prozessors sorgen. Mit diesem RAS-Feature lässt sich beispielsweise der Workload eines POWER6 bei Hardwaredefekten auf einen anderen Prozessor schieben, sollte ein Restart der CPU nichts nützen.

Mehr Cache und höhere Bandbreiten

Bei den Caches weist der POWER6 ebenfalls Änderungen auf. So dimensioniert IBM den L1-Cache nun mit jeweils 64 KByte für Daten und Befehle – pro Core. Damit besitzt der POWER6 die doppelte Daten-Cache-Größe gegenüber den POWER5-Modellen. Kräftig aufgestockt wurde der L2-Cache: Statt 2 MByte stehen dem POWER6 nun 8 MByte zur Verfügung. Jedem Core weist IBM dabei einen 4 MByte großen „Private L2-Cache“ zu.

Den 32 MByte fassenden L3-Cache legt IBM wieder extern aus. Dabei lässt sich die dritte Pufferstufe wahlweise auf dem POWER6-Modul oder dem System integrieren. Alternativ kann der L3-Cache komplett weggelassen werden. Den POWER5-Prozessoren spendierte IBM noch eine L3-Cache-Größe von 36 MByte, den 90-nm-Modellen POWER5+ sogar bis zu 72 MByte. Die Bandbreite zum L3-Cache beträgt beim POWER6 80 GByte/s. Zum Speicher erlaubt der POWER6 maximale Transferraten von 75 GByte/s.

Für den SMP-Betrieb lassen sich vier POWER6 zu einem Knoten zusammenschalten, und der Datenaustausch über die drei Intra-Node-SMP-Busse erfolgt mit 80 GByte/s. Über die zwei Inter-Node-SMP-Busse erfolgt die Kommunikation zu den anderen Knoten mit bis zu 50 GByte/s. Darüber hinaus gibt es noch einen gemultiplexten Daten- und Adress-SMP-Bus mit 20 GByte/s. Total beträgt damit die Bandbreite des POWER6 305 GByte/s. Als Einsatz sind Systeme mit 32 Prozessoren (64 Kerne) bis Mitte 2007 geplant. Das dafür notwendige Two-Tier-Kohärenzprotokoll hat IBM entsprechend überarbeitet.

Neuigkeiten vermeldet IBM beim POWER6 auch bei den Virtualisierungs-Features mit der Bezeichnung ViVA-2. Der POWER6 erlaubt jetzt bis zu 1024 Micro-Partitionen. Die Virtual Page Key Protection schützt dabei Datenbereiche vor unautorisierten Zugriffen. Auch der Speicher lässt sich bei POWER6-Systemen in virtuelle Partitionen aufteilen. Ausführliche Details über die Virtualisierung finden Sie bei tecCHANNEL im Artikel Virtualisierung mit IBMs POWER5-Server.

PowerExecutive reguliert den Energiehaushalt

IBM verknüpft seine POWER6-CPU auch erstmals mit einem externen Embedded-Controller. Dieser überwacht und reguliert die Spannungs- und Performance-Parameter des Prozessors abhängig vom eingestellten Powermanagement-Schema. IBM bezeichnet das neue Powermanagement-Verfahren des POWER6 als PowerExecutive. Damit lässt sich neben dynamischen Parametern beispielsweise auch über Nacht statisch der Energiebedarf der Prozessoren senken.

Der im 65-nm-Verfahren gefertigte POWER6 besitzt eine Die-Fläche von 340 mm². Darauf breiten sich insgesamt 750 Millionen Transistoren aus. Das Gros entfällt auf den 8 MByte fassenden L2-Cache.

Der POWER6 soll in Servern mit 2 bis 64 Prozessoren ab Mitte 2007 zum Einsatz kommen. Als typische Anwendungsgebiete für POWER6-Systeme nennt IBM Enterprise-Datenbanken, Transaktionen, Finanzanalysen und High-Performance Computing wie Flugzeugdesign und Crash-Simulationen von Automobilen. Als Konkurrenz für den POWER6 gelten Intels Itanium-2-9000-Prozessoren sowie die Highend-SPARC-Prozessoren von Sun und Fujitsu.

Die PowerPC-Prozessoren

Die PowerPC-Prozessoren sind eng mit der POWER-Serie verbunden. Technologien und Befehlssätze (ISA) wurden zwischen beiden Serien ausgetauscht.

Der erste PowerPC trug die Bezeichnung 601, und der Einfluss von Motorola manifestierte sich in dem Bus-Interface, das sich von Motorolas 88000-Prozessor ableitete. Es folgten der PPC603e, PPC604, PPC750, PPC970, und im Jahr 2004 der PPC970FX mit 2,7 GHz im 90-nm-CuSOI-Prozess. Wie seinerzeit der POWER2 enthält auch der PPC970FX jeweils zwei Gleit- und zwei Festkomma-Einheiten sowie darüber hinaus zwei Load-Store-Einheiten (LSU).

PowerPC-Chips: Im Bild sehen Sie die beiden Modelle PPC970 und PPC970FX. (Quelle: IBM)

Weitere Versionen sind die 2006 vorgestellten Single-Core-GX- und Dual-Core-MP-CPUs. Beide basieren auf einem 3-GHz-Kern mit einem MByte L2-Cache sowie Stromsparfunktionen und arbeiten im 32- und 64-Bit-Modus.

Beschleuniger: Die SIMD/Vector Unit des PowerPC970FX soll Berechnungen im Multimedia-Bereich schneller machen. (Quelle: IBM)
PowerPC-Serien: IBM teilt seine PowerPC-Prozessoren in drei Segmente auf. (Quelle: IBM)

Power-CPUs in Spielekonsolen

Das POWER- beziehungsweise PowerPC-Design hat im Gegensatz zu anderen RISC-Prozessoren auch Einzug in Spielekonsolen und anderen Industrie- und Heimgeräten gehalten.

Nintendos Gamecube-, die aktuelle Wii-Spielekonsole und die Xbox360 von Microsoft werden mit erweiterten PowerPC-Prozessoren - von IBM produziert - ausgeliefert. Die aktuelle Spielekonsole PS3 von Sony enthält den Multi-Core-Prozessor Cell BE, der auf einem POWER5+-Kern (PPE) mit zweifacher In-Order-Pipeline und sieben Vektorprozessoren (SPE) basiert.

Die Xbox360 bezieht ihre Rechenleistung aus einem Triple-Core-PowerPC-Prozessor mit 2-Wege-SMT (Codename Xenon). Die CPU arbeitet mit 3,2 GHz Taktfrequenz, und pro Kern steht eine VMX-128 genannte AltiVec-Einheit mit 128 Vektorregistern anstelle der üblichen 32 zur Verfügung. Jeder Kern besitzt einen 32 KByte fassenden 4-Wege-L1-Daten-Cache sowie einen 32 KByte großen 2-Wege- L1-Befehls-Cache. Der ein MByte große L2-Cache wird von allen Kernen gemeinsam genutzt.

Anstelle der dreifach superskalaren Out-of-Order-Pipeline kommt nur eine 21-stufige zweifach superskalare In-Order-Pipeline zum Einsatz. Diese ist weniger komplex in Hardware zu realisieren und ermöglicht eine höhere Taktfrequenz. Der von IBM im 90-nm-SOI-Prozess hergestellte Triple-Core-Prozessor mit 165 Millionen Transistoren auf einer Die-Fläche von 168 mm² bringt es auf eine Rechenleistung von 45 GFLOPS. Daneben soll der von einer singapurischen Chipfabrik produzierte Chip Mitte 2007 auch in 65 nm gefertigt werden.

Der „Broadway“ getaufte Prozessor in der Wii-Konsole von Nintendo wird im 90-nm-SOI-Prozess auf 300-mm-Wafern von IBM gefertigt und taktet mit 729 MHz. Mit 512 MByte internem Flash-Speicher und einem aktuellen Grafikchip von ATI ist die Wii ihrem Vorgänger „Gekko“ im Gamecube (180-nm-Cu-Prozess) zwar technisch überlegen, im Vergleich zur Xbox360 und PS3 jedoch nicht sehr leistungsfähig.

Ausblick

Im Juni 2006 haben IBM und das Georgia Institute of Technology einen Chip im Rahmen einer Forschungsreihe auf Basis von Silizium-Germanium (SiGe) auf 4,5 Kelvin heruntergekühlt und damit eine Taktfrequenz von über 500 GHz erreichen können. Bei Zimmertemperatur sind es noch 350 GHz. Computersimulationen zeigen, dass SiGe-Transistoren sogar bis über 1 THz bei Zimmertemperatur funktionieren könnten.

Der kommende POWER6 mit voraussichtlich bis zu 5 GHz Taktfrequenz wird die Benchmark-Werte wieder in die Höhe treiben. IBM sollte damit als Chipdesigner weiterhin vorne im Prozessormarkt mitmischen können.

Rechenleistung ist heute anders als damals eine Frage der finanziellen Mittel und nicht der technischen Realisierbarkeit. Multikern-Multithread-Prozessoren mit Triple-Stage-Cache in Größen, die vor nicht allzu langer Zeit noch Festplatten vorbehalten waren, sind im Kommen und werden zum Alltag der nächsten Generation gehören. Doch Intelligenz misst sich nicht daran, wie schnell Ladung von einem Ort zum anderen fließt.

Das US-Forschungsprojekt rund um IBM Blue Gene/L mit 131.072 Prozessoren zeigt, was derzeit technisch möglich ist: Platz 1 der Top500-Liste mit einer Rechenleistung von 280,6 TFLOPS – bei einer Leistungsaufnahme von 1500 Kilowatt. (cvi)