Bericht - Weblearn

Transcription

Bericht - Weblearn
Bericht
Fachbereich Technische Informatik
Labor für Rechnerstruktur
Transmeta
Crusoe Prozessoren
1. Revision
Dozent:
Prof. Dr. Risse
Semester: I8I
Name:
Andre Ritterhoff
Ralf Ramaker
Datum:
18. März 2003
Labor Rechnerstruktur
Inhaltsverzeichnis
Inhaltsverzeichnis....................................................................................................................... 2
Einführung.................................................................................................................................. 3
Allgemeines................................................................................................................................ 3
Beziehung zwischen CMS und Prozessor.............................................................................. 4
Transmeta-Patente.................................................................................................................. 6
Hardware .................................................................................................................................... 7
Blockdiagramm des Crusoe Prozessors (Modell TM5400) ................................................... 7
Der 128-bittige VLIW -Kern des Crusoe-Prozessors (Modell TM5400) .............................. 8
Register................................................................................................................................... 9
Translation Lookaside Buffer (TLB) ................................................................................... 10
Alias Hardware..................................................................................................................... 11
Gated Store Buffer ............................................................................................................... 12
Prozessorübersicht................................................................................................................ 13
Benchmarks.......................................................................................................................... 14
LongRun-Technologie ............................................................................................................. 17
‘CoolRun’-Technologie ........................................................................................................... 19
Zukunftsvisionen der Transmeta-Ingenieure ........................................................................... 21
Weitere Zukunftsaussichten bei Transmeta:TM6000 .......................................................... 23
Code – Morphing – Software (CMS).................................................................................... 24
Literatur und Quellenangabe.................................................................................................... 28
Anhang A ................................................................................................................................. 29
Anhang B.................................................................................................................................. 31
Anhang C.................................................................................................................................. 33
Anhang D ................................................................................................................................. 34
Anhang E.................................................................................................................................. 37
Transmeta Shows New TM8000 Astro................................................................................ 37
Astro to propel Transmeta's comeback ................................................................................ 39
Andre Ritterhoff & Ralf Ramaker
2
Labor Rechnerstruktur
Einführung
Im Jahre 1995 wurde die Firma Transmeta von David Ditzel in Santa Clara im
Bundesstaat Kalifornien (USA) gegründet. Zur Herstellung der Prozessorfamilie
„Crusoe“ dient die Chipschmiede IBM. Zielmarkt der Crusoe – Prozessoren ist
das Mobilsegment, wie z.B. Notebooks, PDA, etc.
Im Januar 2000 stellte die Firma Transmeta erstmalig den Crusoe – Prozessor vor.
Der Crusoe – Prozessor besteht aus einer Hardware – CPU und aus einer
umgebenden Software – Schicht. Der Prozessorkern ist eine einfache 128 Bit very
long instruction word (VLIW) – CPU, die bis zu vier Operationen parallel in einem
Taktzyklus abarbeiten kann. Die Software – Schicht, auch genannt Code Morphing
Software (CMS), setzt komplexe x86 – Befehle in einfachere VLIW – Befehle um.
Diese Befehle besitzen keine Ähnlichkeit zum x86 – Code und sind Transmeta –
spezifisch.
Der Crusoe stellt einen verhältnismäßig schnellen und stromsparenden Prozessor
dar, der einem x86 – Programm, mit Hilfe der Code – Morphing – Software,
suggeriert, auf einem x86 – kompatiblen Plattform zu laufen. Die stromsparende
Eigenschaft basiert auf der Ersetzung / Reduzierung der Anzahl der Transistoren
durch Software.
Wie man aus den c’t – Berichten [1] und [2] und den veröffentlichen Transmeta –
Patenten [3] schließen kann, besteht der Crusoe nur etwa zu einem Viertel aus
Hardware und zu drei Vierteln aus Software.
Allgemeines
Die Code – Morphing – Software übersetzt zur Laufzeit komplexe x86 – Befehle in
einen Strom einfacher VLIW – Befehle (Atome), die in einem Translation – Buffer im
Speicher vorrätig gehalten werden. Um einen hohen Grad an Parallelisierung zu
erreichen, ist eine Bündelung der Atome in ein so genanntes long instruction word
(Molekül) notwendig. Ein Molekül kann aus zwei bzw. vier Atomen bestehen. Durch
die Aufbereitung per Code – Morphing – Software stehen die einzelnen Atome eines
Moleküls schon für die Ausführungseinheiten des Crusoe bereit. Das folgende Bild
zeigt den Idealfall der Parallelisierung. Vier Atome in einem 128 – Bit – Molekül
bedienen jeweils eine der Ausführungseinheiten des Crusoe, die in "echter"
Hardware gebaut sind. Der Prozessor besteht aus 5 Funktionseinheiten, zwei
Integer-, eine Floating Point - , eine Load/Store und eine Branch - Einheit, wobei zur
Laufzeit der Code – Morphing – Software maximal vier dieser Einheiten zur
Verfügung stehen.
Andre Ritterhoff & Ralf Ramaker
3
Labor Rechnerstruktur
Quelle: www.tecChannel.de
In der nachfolgenden Abbildung ist die Beziehung zwischen der Code – Morphing –
Software und dem Crusoe – Prozessor dargestellt. Nur die Code – Morphing –
Software selbst hat Zugriff auf den Prozessor.
Beziehung zwischen CMS und Prozessor
Quelle: Transmeta „The Technology behind Crusoe Processor“
Andre Ritterhoff & Ralf Ramaker
4
Labor Rechnerstruktur
Beim Einschalten des Geräts wird die Code – Morphing – Software von einem
Flash – ROM (512 KByte) ins RAM geladen und entpackt (2 MByte), zusätzlich
kommen noch 6 – 14 MByte Zwischenspeicher (Translation – Cache) für übersetzte
Sequenzen hinzu. Diese Bereiche sind schreibgeschützt. Erst danach kann das
Rechner – BIOS gestartet werden, es läuft bereits über die Prozessor-Emulation.
Während der Laufzeit wird das System immer schneller, da das Crusoe – Konzept
versucht, jede Befehlskette nur einmal zu übersetzen. Dazu dient der Translation –
Cache. Die Code – Morphing – Software unterteilt die x86 – Programme
selbstständig in funktionale Blöcke, die sich gut übersetzen und dabei optimieren
lassen.
Je nach Optimierungstiefe kann dann die Software bündelweise x86-Befehle
zusammenfassen und umorganisieren. So wird beim ersten Durchlauf eines
Programms lediglich nur übersetzt und bei späteren Durchläufen dann immer weiter
und filigraner optimiert (dynamisch). Transmeta belegt dies an einem Beispiel einer
typischen kleinen C-Schleife, die aus zehn komplexen x86 – Befehlen besteht. Nach
vielen Optimierungsschritten kann man sie auf vier einfache VLIW – Befehle
reduzieren. Im Abschnitt „Code – Morphing – Software“ wird näher auf dieses
Beispiel eingegangen.
Andre Ritterhoff & Ralf Ramaker
5
Labor Rechnerstruktur
Transmeta-Patente
US5958061/WO9903037
Host microprocessor with apparatus for temporarily holding target
processor state
US5926832/WO9813740
Method and apparatus for aliasing memory data in an advanced
microprocessor
US5905855/WO9838575 Method and apparatus for correcting errors in computer systems
US5832205
Memory controller for a microprocessor for detecting a failure of
speculation on the physical nature of a component being
addressed
WO9908188
A memory controller for detecting a failure of speculation of a
component being addressed
WO9838575
Method and apparatus for correcting errors in computer systems
WO9908191
Translated memory protection apparatus for an advanced
microprocessor
WO9859292
Improved microprocessor
WO9828689
A gated store buffer for an advanced microprocessor
US: USPTO, WO: PCT
[1] Andreas Stiller „Zu neuen Ufern“ c’t 3/2000 Seite:66 ff
[2] Andreas Stiller „Robinsons Patente“ c’t 25/1999 Seite: 26 ff
[3] PCT-Patent ( http://pctgazette.wipo.int/) sowie auf dem
IBM-Patentserver ( http://www.ibm.com/patents)
Andre Ritterhoff & Ralf Ramaker
6
Labor Rechnerstruktur
Hardware
Das nachstehende Blockdiagramm verdeutlicht schematisch den internen Aufbau
des Crusoe Prozessors (Modell TM5400), mit seinen verschiedenen Anbindungen an
den CPU – Kern (VLIW – Kern).
Es stehen jeweils 64 KByte L1 – Cache für Daten und für Instruktionen zur
Verfügung, sowie ein 256 KByte großer L2 – Cache. Der Translation Lookaside
Buffer ist mit 256KByte dimensioniert. Für die externe Speicheranbindung, etc. bietet
der Crusoe diverse Controller an, die über die Busschnittstelleneinheit (Bus
Interface) angeschlossen sind. Alle Caches und der Translation Lookaside Buffer
(TLB) sind satzassoziativ aufgebaut.
Blockdiagramm des Crusoe Prozessors (Modell TM5400)
Quelle: http://www.transmeta.com/technology/specifications/tm5400.html
Auf der nächsten Seite befindet sich eine detaillierte Übersicht des 128 bittigen
VLIW – Kerns des Crusoe – Prozessors (Modell TM5400). Auf den anknüpfenden
Seiten wird noch ausführlicher auf die Caches, den TLB und die Controller
eingegangen.
Andre Ritterhoff & Ralf Ramaker
7
Labor Rechnerstruktur
Der 128-bittige VLIW -Kern des Crusoe-Prozessors (Modell TM5400)
Quelle: c't 3/2000, S. 32: Prozessoren und c't 25/99, S. 66: Prozessoren
Oberhalb der rot gestrichelten Line ist der interne Aufbau des CPU – Kerns zu
sehen, unterhalb ist die Anbindung der verschiedenen Controller über die Bus
Interface Unit dargestellt.
Am oberen Bildrand des CPU – Kerns befinden sich die Register und die
„zusätzliche“ Hardware, die nachfolgend noch näher erklärt werden. Darunter sind
die fünf Funktionseinheiten angeordnet. Es gibt fünf verschieden Funktionseinheiten:
Da wären zum einen zwei ALU’s, welche die normalen (integer) Berechnungen
ausführen, dann eine Load-/Store-Einheit, welche für den Speicherzugriff zuständig
ist, eine Branch – Einheit für die Verzweigungen und eine Gleitkommazahlen –
Einheit, welche die Gleitkommazahlen berechnet, sich aber auch um die MMX –
Befehle(kein 3DNow, SSE oder SSE2) zu kümmern hat.
Die arithmetischen Einheiten (ALU0 und ALU1) besitzen jeweils eine 7 stufige
Pipeline. Für die Berechnung von Gleitkomma – Zahlen (FPU / Media) steht dem
Prozessor eine 10 stufige Pipeline zur Verfügung.
Andre Ritterhoff & Ralf Ramaker
8
Labor Rechnerstruktur
Für die Load / Store – Einheit musste ein Gated Store Buffer eingeführt werden,
damit Instruktionen spekulativ ausgeführt werden können, dazu später mehr.
Unterhalb der Funktionseinheiten befinden sich die diversen Caches, welche die
Daten und Instruktionen speichern. Ebenso sind dort Controller enthalten, die dafür
sorgen, die Daten und Instruktionen in die richtige Reihenfolge zu bringen.
Damit der Crusoe performancemäßig nicht zu stark einbricht, benötigt er große
Caches und zusätzlich lokalen Speicher im Kern. Transmeta hat ihn dazu mit
insgesamt 384 KByte (TM5400) Cache (64 KByte L1 Instruction Cache + 64 KByte
L1 Data Cache + 256 KByte L2 WB [Write Back soll laut Transmeta eine
Performance-Steigerung durch eine Verbesserung der effektiven Speicherbandbreite
bringen] Cache) versorgt, zu denen sich 8 KByte Local Data Memory (LDM) und 8
KByte Local Programm Memory (LPM) gesellen.
Am unteren Bildrand sind die verschiedenen Controller zu erkennen, die zwar noch
mit auf dem Prozessorchip integriert sind, aber nicht zum eigentlichen Kern gehören.
So verfügt der Prozessor über eine Northbridge, die für den PCI – Bus zuständig ist.
Diese besteht aber nicht nur aus Hardware, sondern auch zum Teil aus Software.
Des weiteren befinden sich Controller für den Arbeitsspeicher mit auf den Chip, diese
können SDR und DDR-SDRAM mit einer Frequenz von 100 oder 133 MHz
ansprechen.
Zu guter letzt ist dort auch das Powermanagement (LongRun wird später noch
erklärt) angesiedelt, welches eigentlich softwaremäßig gelöst wird.
Register
Die Register kann man noch einmal aufteilen in die Allzweck-Register (GPU) und die
Gleitkomma-Register (FPU), die aufgrund der Wirkungsweise der CrusoeProzessoren jeweils doppelt vorkommen (Schattenregister/Shadow-Register). Es
gibt 64 Allzweck-Register und 32 Gleitkomma-Register mit ihrem jeweiligen
Schattenregister. Die 64 Allzweckregister werden durch die Code Morphing Software
für verschiedene Aufgaben verwendet. So enthalten einige Register x86Statusinformationen, andere enthalten interne Systemstatusinformationen und
wiederum andere werden als temporäre Register benutzt. Der Zusammenhang
zwischen den sogenannten Working-Registern und den Schatten-Registern wird
später noch behandelt.
Andre Ritterhoff & Ralf Ramaker
9
Labor Rechnerstruktur
Translation Lookaside Buffer (TLB)
Einen wichtigen Anteil an der Arbeit übernimmt der Unified TLB (das Unified
bedeutet, dass dieser TLB die selben Protection Bits und das gleiche Address
Mapping benutzt wie TLB’s in x86-CPU’s). Er cacht nicht nur wie beim x86 die
Übersetzungstabelle von physischen zu linearen Adressen, sondern markiert auch
die Seiten, die bereits übersetzt wurden (T-Bit-Buffer) und gibt Auskunft über die
Speicherattribute, als ob es sich um normalen Speicher oder um eine als Speicher
angesprochene I/O-Komponente (Memory mapped I/O) handelt. Eine variable
(wahrscheinlich konfigurierbare) Optimierungsstrategie kann dafür sorgen, dass der
Code umso besser optimiert wird, je häufiger er benutzt wird. Beim ersten Durchlauf
wird er lediglich übersetzt und bei späteren Durchläufen dann immer weiter und
filigraner optimiert. (Beispiel siehe im Kapitel: Code – Morphing – Software).
Dieses Verfahren der Laufzeitoptimierung erinnert ein wenig an ‘intelligente’ BASICInterpreter (Um Missverständnissen vorzubeugen, muss anfügt werden, dass es
keine ‘intelligenten’ BASIC-Interpreter gibt. Dieser Begriff wurde vom Autor des
Artikels, Herrn A. Stiller, eingeführt, um das Prinzip der Befehlsabarbeitung mit einem
bereits bekannten Prinzip zu vergleichen. Ein Interpreter ist eine Art
Übersetzungsprogramm, welches nach der Methode der schrittweisen Übersetzung
arbeitet. Jeder eingegebene und übersetzte Befehl wird sofort ausgeführt. Ein
Interpreter analysiert jeden Befehl einzeln und wandelt ihn so um, dass er sofort
ausgeführt wird, wobei die Bereiche, in denen die verarbeiteten Daten untergebracht
werden, zusammen mit dem Befehl oder bereits davor beschrieben werden müssen.
Da anders als Compiler kein Objektprogramm, wo diese Bereiche fixiert sind,
entsteht. Taucht bei der Programmbearbeitung ein Programmteil auf, der zyklisch
immer wieder abgearbeitet werden muss, so muss die Übersetzung immer wieder
neu durchgeführt werden. Wenn der Interpreter allerdings ‘intelligent’ wäre, so würde
er bereits übersetzte Programmteile zwischenspeichern, wie es der Transmeta
Crusoe mit seinem Translation-Cache macht. Desweiteren würde er die bereits
übersetzten Programmteile im TLB markieren, wie beim Transmeta Crusoe mit dem
T-Bit-Buffer im TLB realisiert und könnte dann im Falle einer Wiederholung eines
Programmteiles auf die bereits übersetzten Befehle zurückgreifen.
Dies würde eine enorme Beschleunigung bei der Bearbeitung eines Programms
bedeuten, in dem zyklische Wiederholungen von Programmteilen vorkommen.).
Transmeta will das Verfahren auch keinesfalls auf x86-Emulation beschränkt sehen,
sondern erwähnt im Patent explizit andere mögliche Einsatzbereiche, etwa Pcode
oder Java.
Andre Ritterhoff & Ralf Ramaker
10
Labor Rechnerstruktur
Alias Hardware
Die Alias Hardware wird erforderlich, damit man bei der Bildung der Moleküle freier
mit den Atomen operieren kann. Denn es können bei der Bildung von Molekülen
Probleme beim Speicherzugriff entstehen. Wenn also ein Load-Befehl vor einem
Store-Befehl ausgeführt werden soll, so werden die Daten geladen und der
betreffende Bereich wird als geschützt markiert. Sollte dem Load – Befehl nun ein
Store-Befehl folgen und die Daten des Store-Befehls berühren den geschützten
Bereich des vorangegangenen Load – Befehls nicht, so passiert nichts. Sollte der
Store-Befehl aber auf den geschützen Bereich des vorangegangenen Load – Befehls
zugreifen wollen, so verwirft sie die spekulative Ausführung, lädt den zuletzt
abgesicherten x86-Registersatz und führt die Befehle ‘in order’ Stepp für Stepp aus.
Eine Ausnahme tritt dann an der richtigen Stelle auf, und der Speicher wird in der
originalen Reihenfolge adressiert.
Nachfolgend ein Beispiel:
ld %r30, [%x]
...
st %data, [%x]
ld %r31, [%x]
use %r31
// first load from location X
// might overwrite location X
// this accesses location X again
Wie in diesem Beispiel zu sehen ist kommt es zu einer Überlappung im Speicher
zwischen den Store – Befehl und den vorherigen Load – Befehl. Um dieses Problem
zu lösen wird mit Hilfe der Alias Hardware und der Code – Morphing– Software
gearbeitet. Dies geschieht durch Umkonvertierung der Atome. Dabei wird ein Load –
Befehl umgewandelt in ein load – and – protect – Befehl und ein Store – Befehl in ein
store– under – alias – mask – Befehl. Anschließend ist das übersetzte Beispiel zu
sehen.
ldp %r30, [%x]
...
stam %data, [%x]
use %r30
// load from X and protect it
// this store traps if it writes X
// can use data from first load
Da der zweite Load – Befehl (vorletzte Zeile im Ausgangsbeispiel) unnötig auf den
gleichen Speicherraum zugreifen möchte, wird dieser von der Code – Morphing –
Software automatisch eliminiert.
Programmierbeispiel aus „The Technology behind the Crusoe Processors“
Andre Ritterhoff & Ralf Ramaker
11
Labor Rechnerstruktur
Gated Store Buffer
Der Gated Store Buffer musste eingeführt werden, damit Instruktionen spekulativ
ausgeführt werden können. Es wird bei der Zusammenstellung der Atome zu einem
Molekül spekulativ gearbeitet, da die Code Morphing Software nur versucht, alle vier
Atome parallel in den fünf Funktionseinheiten (mehr dazu später) abarbeiten zu
lassen. Hierbei kann es vorkommen, dass eine falsche Kombination ausgewählt
wurde (siehe auch Alias Hardware). Deshalb werden alle Store – Operationen so
lange im Gated Store Buffer zwischengespeichert, bis sich die Spekulation als richtig
erwies. Jetzt werden alle zutreffenden Store – Operationen durch einen Commit –
Befehl in den Speicher geschrieben und das Shadow – Register wird ins Working
(Target) – Register geschrieben. Der Commit – Befehl wird parallel zu den VLIW –
Instruktionen ausgeführt. Sollten sich die Spekulationen als falsch herausstellen, so
werden alle Store – Operationen im Gated Store Buffer durch einen Rollback –
Befehl gelöscht und es wird der letzte richtige Übersetzungszustand aus dem
Working (Target) – Register ins Shadow – Register geschrieben.
Weiterführende Informationen zu den einzelnen Prozessoren findet man unter
folgenden Links:
http://www.transmeta.com/developers/crusoe_docs.html
http://www.transmeta.com/about/press/white_papers.html
Andre Ritterhoff & Ralf Ramaker
12
Labor Rechnerstruktur
Prozessorübersicht
Prozessor
TM3120
TM5400
TM5600
TM5500
TM5800
333-400
MHz
500-700 MHz
500-700 MHz
667-800 MHz
667-800 MHz
Taktrate
96 kByte
128 kByte
128 kByte
128 kByte
128 kByte
-
256 kByte
512 kByte
256 kByte
512 kByte
77 mm2
73 mm2
-
-
-
Leistungsaufnahme DVD
2,9 W
1,8 W
-
-
-
Leistungsaufnahme MP3
1,4 W
1,0 W
-
-
-
Leistungsaufnahme Tiefschlaf
0,015 W
0,03 W
-
-
-
Prozessortechnik
IBM 7S
0,22 µm
IBM
µm
0,18 µm
0,13 µm
0,13 µm
Integrierte
Hardware
Northbridge,
SDRAM,
PCI
Northbridge
SDRAM, DDRSDRAM, PCI,
Northbridge,
SDRAM, DDRSDRAM, PCI
Northbridge,
SDRAM, DDRSDRAM, PCI
Northbridge,
SDRAM, DDRSDRAM, PCI
L1-Cache
L2-Cache
Die-Größe
8S
0,18
Da bei der Veröffentlichung der oben stehenden Tabelle nicht alle Informationen zu
den jeweiligen Prozessoren bekannt waren, sind in einigen Feldern keine Angaben
gemacht worden. Neuere Gegenüberstellungen sind nicht verfügbar.
Diese Tabelle stammt von der Seite:
http://www.e-online.de/sites/com/0501171.htm
und sie zeigt alle CPUs, die bis heute auf dem Markt zu kaufen sind.
Eine ähnliche Auflistung findet man unter:
http://www.transmeta.com/technology/specifications/index.html
Andre Ritterhoff & Ralf Ramaker
13
Labor Rechnerstruktur
Benchmarks
Mobile Benchmarks
Quelle der nachfolgenden Tabellen, war die Transmeta-Homepage:
http://www.transmeta.com/technology/benchmarks/mobile_bench.html)
Diese Tabellen und noch ein paar weiterführende Informationen können unter dem
Link für die Testing Methodologie
[http://www.veritest.com/clients/reports/transmeta/tmbmk.pdf]
angeschaut werden.
Notebook
Processor
Battery
Mark
4.0.1
Score
Dell Latitude L400
Intel Pentium III 700MHz
1:50 hours
IBM X-Series ThinkPad X20
Intel Pentium III 600MHz
3:24 hours
IBM I-Series ThinkPad 1124
Intel Pentium III 500MHz
4:33 hours
NEC Versa UltraLite
Transmeta TM5600-600MHz
5:11 hours
NEC Versa DayLite
Transmeta TM5600-600MHz
6:45 hours
Table 1. Ziff Davis Batterymark 4.0.1 benchmark data between comparable notebook systems
¹ DVD Playback on the IBM ThinkPad X20 was plagued with dropped frames
Note:
² DVD Playback could not be accomplished on the IBM ThinkPad 1124.
Der BatteryMark mixt verschiedene Arbeitspakete und addiert periodisch Pausen
hinzu, die den tatsächlichen Arbeitsverlauf des Nutzers darstellen sollen. Das
Programm liefert eine Zeit in Stunden und Minuten, die anzeigt, wie lange das
Notebook laufen würde. Einen Auszug des Tests (in Englisch), der die
Testbedingungen näher und ausführlicher beschreibt ist im Anhang A zu finden.
Andre Ritterhoff & Ralf Ramaker
14
Labor Rechnerstruktur
Server Benchmarks
Quelle der nachfolgenden Tabellen, war die Transmeta - Homepage:
http://www.transmeta.com/technology/benchmarks/server_bench.html.
Es gibt leider kein Dokument, aus welchem die Testbedingungen hervorgehen.
RLX System
324
Cobalt 4i
Cobalt 4R
XTR
TM5600633MHz,
512MB
SDRAM,
IDE 10GB
HD,
Red Hat 6.2
AMD K6-2
450MHz,
128MB
SDRAM,
IDE 10GB HD,
Cobalt SW
Intel PIII
933MHz,
512MB
SDRAM,
IDE 3x30 GB,
RAID,
Cobalt SW
Number of Servers
254
42
42
42
Watts Per Server
15.7
33.9
72.0
76.4
Pages/Sec Per Server
(ZD WebBench, peak
request load)
1,466
208
916
1706
372,364
8,736
38,472
71,652
Server Configuration
Pages/Sec per Rack
Compaq
DL320
Intel PIII
800MHz,
512MB
SDRAM,
18GB Ultra
SCSI3HD,
Red Hat 6.2
Competitive data based on 5,000 Watts per standard 42U server rack*
(*Calculations based on 80% of max power = 4,000 Watts)
Bei diesem Benchmark soll gezeigt werden, dass das RLX System den drei anderen
Systemen gegenüber überlegen ist. Hierzu wird angegeben, wie viele Server in
einem Rack (’Serverschrank’) enthalten sind, wie viel Leistung pro Server verbraucht
wird und wie viele Seiten ein einzelner Server pro Sekunde verarbeiten kann. Nimmt
man jetzt die Anzahl der einzelnen Server pro Rack und die Anzahl der von jedem
einzelnen Server verarbeiteten Seiten, so kann man ausrechnen wie viele Seiten das
Rack in einer Sekunde verarbeiten kann. Und wie man in dem Bild oben sehen kann
liegt das RLX System weit vorne. Nimmt man jetzt auch noch den
Leistungsverbrauch pro Server hinzu und multipliziert sie mit der Anzahl der Server
pro Rack und dividiert diese Zahl dann wieder durch die Anzahl der Seiten/Sekunde
für das jeweilige Rack, so liegt das RLX System uneinholbar auf dem ersten Platz,
was den Energieverbrauch pro verarbeitete Seite angeht.
Andre Ritterhoff & Ralf Ramaker
15
Labor Rechnerstruktur
Es ergeben sich folgende Werte:
Für das RLX System 324:
Server
Watt
∗ 15,7
Watt
Rack
Server
= 10,709
 Seiten 
 Seiten 




Server
Sekunde 
Sekunde 


254
∗ 1,466
Rack
Server
254
Für das Cobalt 4i System:
Server
Watt
∗ 33,9
Rack
Server = 162,981 Watt
 Seiten 
 Seiten 




Server
Sekunde 
Sekunde 


42
∗ 208
Rack
Server
42
Für das Cobalt 4R XTR System:
Server
Watt
∗ 72
Watt
Rack
Server
= 78,603
 Seiten 
 Seiten 




Server
Sekunde 
Sekunde 


42
∗ 916
Rack
Server
42
Für das Compaq DL320 System:
Server
Watt
∗ 76,4
Watt
Rack
Server = 44,783
 Seiten 
 Seiten 




Server
Sekunde 
Sekunde 


42
∗ 1706
Rack
Server
42
So schön diese Angaben auch sind, sollte man immer im Hinterkopf behalten, dass
jede Firma sein Produkt als bestes erscheinen lassen will. So sollte man immer auch
darauf achten, dass die untersuchten Systeme nahezu identisch ausgestattet sind.
Wie man im Falle der Server Benchmarks jedoch sehen kann ist die Ausstattung der
einzelnen Systeme doch ziemlich unterschiedlich, weshalb auch das Benchmark –
Ergebnis mit Vorsicht zu genießen ist.
Unter den nachfolgenden Links kann man sich über RLX-System 324 informieren:
http://www.transmeta.com/everywhere/products/servers/rlxtechnologies/rlxtechnologi
es_system324.html
http://www.rlx.com/product/
Andre Ritterhoff & Ralf Ramaker
16
Labor Rechnerstruktur
LongRun-Technologie
Quelle : http://www.transmeta.com/technology/architecture/longrun.html
Einen Auszug aus der oben genannten Quelle finden Sie auch im Anhang B.
Wie schon beim Thema Benchmarks erwähnt, sollte man aufpassen, dass die
Ausstattung der Systeme identisch ist, und das man vergleichbare Systeme
gegenüberstellt und nicht wie hier geschehen einen normalen Pentium III mit einer
Transmata CPU, die für den mobilen Einsatz konzipiert wurde.
DVD idle.
PIII Average=2.309 Watts; Crusoe Average=0.326 Watts.
DVD bootup (~5 seconds).
PIII Average=5.242 Watts; Crusoe Average=1.375 Watts.
Andre Ritterhoff & Ralf Ramaker
17
Labor Rechnerstruktur
LongRun launched. DVD running at normal speed.
PIII Average=6.199 Watts; Crusoe Average=1.257 Watts.
Nachfolgend ein kurzer Auszug aus der c't 6/2000, S. 38: Prozessoren von
Andreas Stiller zur LongRun-Technologie:
Von der Wirkung der Stromspartechnik LongRun konnte mich der auch für die
virtuelle Northbridge verantwortliche Entwicklungsleiter Marc Fleischmann, übrigens
ein Deutscher, im Transmeta-Lab überzeugen. Ein zwischen 266 und 600 MHz in
fünf Schritten (die minimale Abstufung ist 33 MHz) und zwischen 1,1 und 1,6 V
regelnder TM5400-Crusoe verbrauchte im Spitzenbereich zwar auch mal 6 W, blieb
im Schnitt bei üblicher Software aber bei rund 1 W und wurde - ohne Kühlkörper –
gerade mal handwarm. LongRun benötigt Idle-Zustände für seine Regelarbeit. Ohne
APM unter DOS arbeitet LongRun nicht und der 600-MHz-TM5400 schluckt dann,
etwa beim Doom-Spiel, konstant 5 W, was den Prozessor aber auch nur auf 43 °C
aufheizte. In diese Verbrauchswerte ist die zu Intels BX teilweise kompatible
Northbridge mit einbezogen, die ja beim Crusoe bereits im Prozessor integriert ist
beziehungsweise von der CMS virtualisiert wird. Zum Vergleich: die Original-BXNorthbridge allein verbraucht gut 2 W - und kennt weder PC133 noch gar ein zweites
DRAM-Interface für DDR-266 wie der TM5400.
Da CMS auch Herr über die Northbridge ist, kann es nicht nur den Prozessor,
sondern auch den Speicher bei Bedarf langsamer fahren, was zusätzliches
Einsparpotenzial liefert.
Andre Ritterhoff & Ralf Ramaker
18
Labor Rechnerstruktur
‘CoolRun’-Technologie
(Quelle: http://www.transmeta.com/technology/advantages/cooler.html)
Nachfolgend wird ein zweiter Vorteil der LongRun-Technologie aufgezeigt, denn man
kann mit Hilfe dieser Technologie nicht nur den Energieverbrauch für jede
Anwendung optimal einstellen, sondern durch die Verwendung von LongRun kann
auch die Prozessortemperatur entsprechend geregelt werden. Es muss somit nicht
auf andere Techniken zurückgegriffen werden, bei denen der Prozessor in einen
Wartezustand geschaltet wird um ihn abkühlen zu lassen.
Weiterer Informationen zum Thema Thermal Management (in Englisch) finden Sie im
Anhang C.
Der Crusoe hat eine völlig andere Architektur als andere Prozessoren. Er wurde
dafür entwickelt, weniger Energie zu verbrauchen und damit im Betrieb kühler zu
laufen. Die nachfolgenden Bilder (mit einer Wärmebildkamera aufgenommen) sollen
dies demonstrieren.
Pentium III 500MHz, 1.6 Volt versus Crusoe TM5600 600MHz, 1.6 Volt
Pentium III / Crusoe processor bootup.
Processors heating up (elapsed time = 10 sec.).
Andre Ritterhoff & Ralf Ramaker
19
Labor Rechnerstruktur
Peak temperature (elapsed time = 25 sec.).
Das letzte Bild noch einmal als Großaufnahme.
Die beiden nachfolgenden Links beschäftigen sich ebenfalls mit dem Thema
Hitzeentstehung im Prozessor.
http://www.transmeta.com/why/everyday/cooler.html
http://www.transmeta.com/technology/advantages/cooler.html
Andre Ritterhoff & Ralf Ramaker
20
Labor Rechnerstruktur
Zukunftsvisionen der Transmeta-Ingenieure
Neuigkeiten über Transmeta befinden sich auf folgender Adresse:
http://www.transmeta.com/about/press/news_headlines.html
(Quelle der nachfolgenden Abbildungen, war die Transmeta – Homepage:
http://www.transmeta.com/technology/benchmarks/future_direct.html)
Auf dem obigen Bild sollte die Zeitachse für die Einführung der neuen Code
Morphing Software dargestellt werden, aber die Einführungstermine konnten nicht
eingehalten werden (aus welchen Gründen auch immer?), denn die momentan
aktuellste Version ist die Version 4.2. Wann die Version 4.3 eingeführt wird ist zur
Zeit nicht bekannt. Auch ist zum heutigen Zeitpunkt nicht bekannt, welche
Neuerungen die Version 4.3 beinhaltet.
Auf dem unteren Bild wurden die Einsparungspotentiale der 4.2 Version im
Gegensatz zur 4.1 Version dargestellt. Welche Testumgebung beim Ermitteln dieser
Werte benutzt wurde ist nicht bekannt.
Andre Ritterhoff & Ralf Ramaker
21
Labor Rechnerstruktur
Im Normal-Modus läuft der Prozessor wie gewohnt und arbeitet normal. Der Auto
HALT – Modus ist ein Energiespar – Modus, in den bei einer HLT Anweisung
gesprungen wird. Dieser Modus wird in Folge einer Interrupt – Anforderung oder
eines Reset – Befehls verlassen. In den Quick Start-Modus wird gesprungen, wenn
der Prozessor ein STPCLK – Eingangssignal bekommt. Der Quick Start Modus ist
ebenfalls ein Energiespar – Modus, der aber nur dadurch beendet werden kann, in
dem das STPCLK – Eingangssignal wieder zurückgenommen wird. Der Deep Sleep Modus ist der Energiespar – Modus, bei dem das System den niedrigsten
Energieverbrauch hat, ohne den Prozessorstatus zu verlieren. In diesen Modus kann
nur gewechselt werden, wenn man vorher im Quick Start-Modus war.
Für nähere Informationen siehe Anhang D.
Andre Ritterhoff & Ralf Ramaker
22
Labor Rechnerstruktur
Weitere Zukunftsaussichten bei Transmeta:TM6000
(Quelle: http://www.e-media.at/home/meldung.asp?ID=1257#top)
Bei Recherchen, die sich ebenfalls mit einer Neuerscheinung aus dem Hause
Transmeta beschäftigen sind im Anhang E zu sehen.
Sicher, das es sich dabei um den selben Prozessor handeln könnte, ist man nicht, da
er einige Gemeinsamkeiten mit dem TM6000 aufweist (nur das er den Namen
TM8000 Astro trägt).
Transmeta kündigt Prozessor mit integrierter Grafik an
Transmeta hat auf dem Microprocessor Forum einen neuen Prozessor angekündigt,
der die Vision von einem "System-on-a-Chip" verwirklichen soll. Der "Crusoe TM
6000" werde wesentlich mehr Systemfunktion integrieren als die bisherigen Crusoes.
Die Basis für den TM 6000 bietet die Crusoe- 5000-Serie mit bis zu einem Gigahertz
Taktfrequenz. Eingebunden in den Chip ist nun nicht nur die South- sondern auch die
Northbridge sowie 2D-Grafik.
Dazu gibt es 512 Kilobyte Level-2-Cache, Unterstützung für DDR-333Speichermodule sowie Schnittstellen für USB, PCI-Bus, Audio- und Modem,
allgemeine I/O-Komponenten und herkömmliche Peripherie. Laut TransmetaTechnologiechef David Ditzel lassen sich damit beispielsweise Festplatten,
Keyboard, Maus und selbst ein Monitor direkt an den Prozessor anbinden.
Ergebnis der Integration von Systemeinheiten ist laut Ditzel ein platzsparendes
System, das im Vergleich zu einem Crusoe TM 5600 etwa 44 Prozent an Strom
einsparen kann. Die Fläche eines TM 6000 beträgt 784 Quadratmillimeter, ein TM
5600 auf einem Board mit den Komponenten des 6000 benötigt dagegen etwa 2.500
Quadratmillimeter.
Transmeta zielt mit dem TM 6000 auf PC mit kleinen Rechnergehäusen, rackbasierte
Server sowie integrierte Rechner mit statischen Einsatzgebieten. 3D-Grafik sei in
diesen Zielmärkten "nicht zu rechtfertigen gewesen", so Ditzel. Zudem besitze der
TM6000 eine Schnittstelle, über den der Chip extern mit 3D-Grafik erweitert werden
könne.
Der neue Prozessor soll im zweiten Halbjahr in Stückzahlen auf den Markt kommen.
Ditzel kündigte an, den Chip mit einer "aggressiven Preisgestaltung" in den Markt
drücken zu wollen.
Vor dem TM 6000 wird Transmeta die Taktfrequenz des TM 5800, der in den
kommenden Wochen ausgeliefert werden soll, von 800 auf 1.000 Megahertz
anheben. Parallel zum TM 6000 soll 2002 die nächste Crusoe-Generation vorgestellt
werden.
Der Chip werde eine neue Version der "Code-Morphing-Software" (CMS) sowie eine
256-Bit-VLIW-Engine enthalten und damit bis zu drei Mal leistungsfähiger sein als
heutige Crusoes. (Welche CMS aber gemeint ist, ist bis jetzt nicht bekannt. Auch wie
die neue VLIW-Engine arbeitet ist nicht näher bekannt [ob nun 4 * 64 Bit breite
Wörter verarbeitet werden oder aber 8 * 32 Bit breite Wörter?].)
Andre Ritterhoff & Ralf Ramaker
23
Labor Rechnerstruktur
Code – Morphing – Software (CMS)
Die Code – Morphing – Software übersetzt dynamisch zur Laufzeit Blockweise
komplexe x86 – Befehle in einfachere VLIW – Befehle, sogenannte Atome. Bis zu
vier unabhängige Befehle a 32 Bit können in ein Molekül verpackt werden. Das
Konzept ähnelt den µops, wie Intel das Aufteilen von x86 – Code in kleinere RISC –
ähnliche Häppchen nennt. Das Verfahren ist in der folgender Grafik zu sehen.
Quelle: www.tecChannel.de
Die blau hinterlegten Funktionen einer x86 – CPU erledigt Crusoe per Software.
Durch die Aufbereitung per CMS stehen die Atome für die Ausführungseinheiten zur
Verfügung. Bis zu vier Atome (1. Molekül) können parallel, jeweils einer
Funktionseinheit zugewiesen werden. Diese Zuweisung der Einheiten vereinfacht die
Decode – / Dispatch – Phase. Ein etwas gewagter Vergleich lässt sich damit
zwischen dem Crusoe und Intels erstem 64-Bit-Prozessor Merced ziehen. Intel gab
nämlich auf dem letzten Microprocessor Forum auch schon an, dass Merced ganz
massiv auf die Unterstützung eines Compilers angewiesen ist, der die
Parallelisierung vornehmen soll. Bei Crusoe übernimmt diese Funktion die Code –
Morphing – Software. Im folgendem Bild ist der Idealfall der Parallelisierung
dargestellt.
Quelle: www.tecChannel.de
Andre Ritterhoff & Ralf Ramaker
24
Labor Rechnerstruktur
Jede Funktionseinheit ist in „echter“ Hardware aufgebaut. Für die Ausführung
spekulativer Befehle stehen der Software 64 Allzweck – und 32 FPU – Register zur
Verfügung. Zu jedem Register bietet die Hardware zusätzlich ein sogenanntes
Schattenregister, ebenfalls doppelt vorhanden sind Register die x86
Statusinformationen beinhalten.
Alle spekulativ ausgeführten Befehle wirken zunächst nur auf die Schattenregister.
Wenn sich die Spekulationen als wahr erweisen, sorgt ein Commit – Befehl dafür,
dass die Werte in die offiziellen Target – Register übertragen werden. Der Commit –
Befehl wird parallel zu den VLIW – Befehlen ohne Zeitverlust im Hintergrund
ausgeführt. Binnen eines Taktes kann der Crusoe parallel zu anderen Operationen
sämtliche Daten zwischen den beiden Registersätzen hin- und herschieben.
Der Crusoe kann aufeinander folgende x86 – Befehle bündeln und dynamisch
optimieren, d.h. das die ausgeführten Befehle (Befehlsketten) im Translation – Cache
gespeichert werden und während der Laufzeit ein dynamisches Feedback
(Erkennung), bezüglich der Blockausführungshäufigkeit, Verzweigungshistorie,
Optimierungsgrad etc. erstellt wird. So wird beim ersten Durchlauf eines Programms
lediglich nur übersetzt und bei späteren Durchläufen dann immer weiter und filigraner
optimiert (dynamisch). Dadurch wird das System während der Laufzeit immer
schneller.
Eine Schwierigkeit bei der Entwicklung des Crusoe Prozessors war die Anforderung
der Bitkompatibilität. Besonders bei Ausnahmeinterrupts muss exakt der x86 Zustand
hergestellt werden, damit das Betriebssystem die Behandlung übernehmen kann.
Die durch die Architektur geschaffenen Veränderungen des Codes können durch
sogenannte Rollback – Befehle rückgängig gemacht werden. Diese speichern den
letzten Zustand der Statusregister und Informationen über die ausgeführten
Speicherzugriffe.
Die Arbeitsweise der Code – Morphing – Software ist in drei Schritten gegliedert.
1. Übersetzung in Atome
- Transformation der x86 – Befehle in VLIW – Befehle, es entsteht eine
Sequenz von VLIW – Atomen
2. Optimierung
- Verbesserung des Codes durch z.B. Eliminierung redundanter Atome
3. Scheduling
- Anordnung / Gruppierung der Atome in Moleküle
Andre Ritterhoff & Ralf Ramaker
25
Labor Rechnerstruktur
Anhand eines einfachen Beispieles demonstriert Transmeta in ihren Whitepapers
(http://www.transmeta.com/about/press/white_papers.html) wie die Übersetzung
eines kleinen Vierzeilers vonstatten geht. Als Grundlage dient folgender C – Code:
A.
B.
C.
D.
addl
addl
movl
subl
%eax,(%esp)
%ebx,(%esp)
%esi,(%ebp)
%ecx,5
//
//
//
//
load data from stack, add to %eax
ditto, for %ebx
load %esi from memory
subtract 5 from %ecx register
Im ersten Schritt dekodiert die Code – Morphing – Software die x86 – Befehle in
VLIW – Befehle um. Als Demonstration dient der erste x86 – Befehl der in zwei
Crusoe – Atome übersetzt wird.
x86 Code
addl %eax, (%esp)
// lade von Stack, add zu AX
¯
⇓
Crusoe Atom
ld %r30, [%esp]
add.c %eax, %eax, %r30
// lade von Stack nach tmp
// addiere zu AX und setze Condition Codes
Nach der Transformation aller x86 – Befehle, in einem Block, entsteht ein Strom von
VLIW – Instruktionen.
ld %r30,[%esp]
add.c %eax,%eax,%r30
ld %r31,[%esp]
add.c %ebx,%ebx,%r31
ld %esi,[%ebp]
sub.c %ecx,%ecx,5
// load from stack, into temporary
// add to %eax, set condition codes.
Im nächstem Schritt wird optimiert. Das heißt, das z.B. redundante Atome eliminiert
werden, unnötiger Condition Code gelöscht wird usw.
Die rot dargestellten Anweisungen symbolisieren überflüssigen (redundanten) Code.
ld %r30, [%esp]
add.c %eax, %eax, %r30
ld %r31, [%esp]
add.c %ebx, %ebx, %r31
ld %esi, [%ebp]
sub.c %ecx, %ecx, 5
Andre Ritterhoff & Ralf Ramaker
// Wiederverwendung bereits
// geladener Register und Eliminierung
// nutzlosem Condition Code
26
Labor Rechnerstruktur
Nach der Optimierung bittet sich folgendes Bild.
ld
%r30, [%esp]
add %eax, %eax, %r30
add %ebx, %ebx, %r30
ld
%esi, [%ebp]
sub.c %ecx, %ecx, 5
Im letzten Schritt, werden die Atome zu einem Molekül zusammen gesetzt und
parallel von der VLIW – CPU ausgeführt. Folgende Anordnung für das Beispiel
entstehen:
1. Molekül:
ld
%r30, [%esp]; sub.c %ecx, %ecx, 5
2. Molekül:
ld
%esi, [%ebp]; add %eax, %eax, %r30; add
%ebx, %ebx, %r30
Im Gegensatz zu vier x86 – Befehlen wandelt der Crusoe sie in zwei Moleküle um.
Ein Grund für die Effizient der CMS ist die Tatsache, dass x86 – Code viel
Redundanz auf historischen Gründen und wegen einer besseren Wartbarkeit enthält.
Diese Redundanz wird entfernt und die Emulation arbeitet effizienter.
Manch komplexe x86 – Routine mit beispielsweise zehn Befehlen vermag die
Software nach mehreren Optimierungsstufen auf nur vier VLIW – Moleküle zu
reduzieren, ähnlich wie ein moderner Mehr – Pass – Compiler.
Eine Achillesferse des Prozessors ist der Speicherbedarf, zwar benötigt die CMS 2
MByte (expandiert) hinzu kommt aber noch der Zwischenspeicher für übersetzte
Sequenzen (Translation Cache) von 6 bis 14 MByte, welches dem x86 – Anwender
entzogen wird.
...“Für die übersetzten x86 – Befehle verbraucht CMS rund sechsmal mehr Speicher
und bläht so sowohl Speicherbedarf als auch die benötigte Speicherbandbreite
reichlich auf. Letzteres ist relevant für die Performance, denn hier entsteht ein neuer
Flaschenhals, den die anderen Prozessoren nicht kennen, da sie das „Aufblähen“
des Codes zur Laufzeit nur im Prozessorkern selbst vornehmen.“...1
1
Andreas Stiller „Zu neuen Ufern“ c’t 3/2000
Andre Ritterhoff & Ralf Ramaker
27
Labor Rechnerstruktur
Literatur und Quellenangabe
•
http://www.transmeta.com
•
Transmeta „Whitepapers
http://www.transmeta.com/about/press/white_papers.html
•
Transmeta Documents
http://www.transmeta.com/developers/crusoe_docs.html
•
Andreas Stiller „Zu neuen Ufern“, c’t 3/2000 Seite 66 ff
•
Andreas Stiller „Robinsons Patente“ c’t 25/1999 Seite 26 ff
•
http://www.tecChannel.de
Andre Ritterhoff & Ralf Ramaker
28
Labor Rechnerstruktur
Anhang A
Testing methodology (Quelle:
http://www.veritest.com/clients/reports/transmeta/tmbmk.pdf)
(Dies ist nur ein kleiner Auszug aus dem oben genannten Dokument und soll dazu
dienen, sich selber ein Bild über die Aussagekraft der vorangestellten Tabellen zu
machen)
Test System Configuration
Transmeta™ Corporation commissioned eTesting Labs to perform competitive
benchmark tests on five notebook computers. After we received the laptops, we
formatted all hard drives, installed Windows 2000 SP1, and turned the brightness
level of the active matrix displays to the lowest setting to level set these units.
We made no changes to the BIOS. The Intel® SpeedStep™ setting was set to
“Automatic” in the BIOS’ of the IBM and Dell systems when we received them and we
left that setting unchanged. We installed WinBench 99 Version 1.1 and BatteryMark
4.0.1 on each laptop. At Transmeta’s™ request we performed all runs on battery
power.
BatteryMark 4.0.1
BatteryMark measures a notebook computer's battery life and workload potential by
exercising three different 32-bit software workload engines--one each for processor,
disk, and graphics tasks. BatteryMark mixes these workloads together and adds
periodic think times, or breaks, that reflect the way users pause while working.
It then returns a score, in hours and minutes, that is a straightforward reporting of
how long the notebook's battery took to run the life test. Larger scores mean the
battery lasted longer.
The conditioning phase and a life test make up a complete BatteryMark test run.
BatteryMark's conditioning phase drains the battery completely and rapidly two or
more times, as preparation for the life test. This drain and- recharge cycle ensures
the battery is returning consistent power levels, which is a necessity before you start
a life test. Conditioning the battery eliminates any battery memory effects on test
results. (Conditioning doesn't harm computer batteries that don't ordinarily develop
memory effects.) The result of consecutive conditioning runs also tells you whether
the battery is returning a consistent amount of power. When the difference between
two consecutive conditioning run times is 5% or less, BatteryMark considers the
conditioning phase complete and recommends running the life test. For an
inconsistently charged battery, BatteryMark recommends more conditioning runs.
From the BatteryMark Status window, you can override BatteryMark's
recommendation, if you wish, and choose to run the life test anyway.
Depending on the battery's initial power state, you can expect to perform two to three
conditioning runs.
Andre Ritterhoff & Ralf Ramaker
29
Labor Rechnerstruktur
Test Methodology
1. After building Windows 2000 Service Pack 1 standard test images, completely
drain all batteries.
2. Fully re-charge all batteries.
3. Defragment hard disks.
4. Unplug test systems from AC Power.
5. Reboot.
6. Run CPUmark 99.
7. Completely drain all batteries.
8. Fully re-charge batteries.
9. Defragment hard disks.
10. Reboot.
11. Run BatteryMark 4.0.1 Conditioning Run.
12. Repeat steps 2 through 11.
a. If the two CPUmark 99 scores are within 5% of each other discontinue
running CPUmark 99. Otherwise, perform additional runs until there is less
than 5% variance.
b. If the two BatteryMark Conditioning Runs are within 5% of each other, move
to step 13.
Otherwise, perform additional Conditioning runs until there is less than 5%
variance.
13. Completely drain batteries.
14. Fully re-charge batteries.
15. Defragment hard disks.
16. Reboot.
17. Run BatteryMark 4.0.1 Life Run.
18. Repeat steps 13 through 17 until two Life Runs fall within 5% variance.
Test results
The five notebooks we tested were similar in design and features, ranging from the
3.1 lb IBM X20 to the 3.4 lb Dell Latitude. All had similar dimensions, approximately
1”x7”x10”. All but the Versa DayLite, which had a backlit display, had active matrix
displays (thin film transistor), and all but the ThinkPad 1124 had 4MB ATI Rage
Mobility-M graphics adapters. The ThinkPad 1124 had a Lynx EM+.
Andre Ritterhoff & Ralf Ramaker
30
Labor Rechnerstruktur
Anhang B
LongRun® Power Management Technology
In addition to the Crusoe processor’s inherently energy efficient design, the Code
Morphing software allows further reductions in power consumption by utilizing
capabilities available only in the Crusoe hardware. One of these features is
implemented in Transmeta’s LongRun Power Management technology. The
LongRun technology provides Code Morphing software with the ability to adjust
Crusoe’s voltage and clock frequency on the fly depending on the demands placed
on the Crusoe processor by software. Because power varies linearly with clock
speed and by the square of voltage1, adjusting both can produce cubic reductions in
power consumption, whereas conventional CPUs can adjust power only linearly (by
only adjusting the frequency).
The LongRun policies are implemented within the Code Morphing software and it
continuously scales both the frequency and voltage of the Crusoe processor
according to the instantaneous demands of the computer system. It can detect
different scenarios based on runtime performance information and then exploit these
by adapting its power usage accordingly. All LongRun adjustments are seamless and
transparent to the user.
LongRun is designed to provide just enough performance for the processor workload
at hand. This allows it to deliver performance when necessary and conserves power
when processor demand is low, thereby eliminating performance and energy
wastage.
1
Power=(Total Capacitance x Frequency x Voltage2) /2.
How does LongRun work?
LongRun operates by configuring the Crusoe processor to run at a number of
different frequency and voltage points. The LongRun algorithm in the Code Morphing
software monitors the Crusoe processor and dynamically switches between these
points as runtime conditions change Idle time is monitored and LongRun finds a
frequency/voltage point that minimizes the idle time for the current workload.
Although the heuristics employed are complex, the LongRun policies can be
abstracted to the following points:
• If no idle time is detected during a workload, the frequency/voltage point is
incremented (if possible).
• If idle time is detected, LongRun may decide that performance is being wasted
and decrement the frequency/voltage level.
LongRun also works in conjunction with the industry standard ACPI (Advanced
Configuration and Power Interface) specification — when the frequency and voltage
scaling hits microarchitecture boundaries, Crusoe transparently switches over to
traditional power models allowing policies such as ACPI to handle power
management.
Andre Ritterhoff & Ralf Ramaker
31
Labor Rechnerstruktur
How is LongRun different?
The following table illustrates some of the differences between LongRun and other
conventional power management techniques.
Power Management Technologies
Legacy Power Management technology
Intel’s SpeedStep technology
Transmeta’s LongRun technology
Attributes
Employs primitive techniques such as Clock
Throttling to deliver only linear reductions
in power. Clock Throttling chokes processor
performance by alternating the processor
between running at full-speed and being
effectively turned off.
Power source based approach consisting of
just two operating points. Provides a lower
granularity of control and misses
opportunities for further power gains.
Adjusts both processor frequency and
voltage in multiple steps based on processor
activity. Allows a significant cubic power
reduction relative to the drop in frequency.
Anhand der oben stehenden Auflistung soll gezeigt werden, wie sich die LongRun
Technologie von den anderen (heute gebräuchlichen) Energie-Spar-Technologien
unterscheidet.
Bei der Legacy Power Management technology wird dadurch Energie eingespart,
dass der Prozessortakt heruntergefahren wird. Dies erlaubt (laut Transmeta) nur eine
lineare Einsparung von Energie und nicht wie bei LongRun ähnlich einer e-Funktion,
da sowohl die Versorgungsspannung als auch die CPU-Frequenz verändert werden
kann.
Bei Intel’s SpeedStep technologie gibt es (wenn ich das richtig verstanden habe) nur
zwei verschiedene Spannungsstufen, über die die Energieeinsparung geregelt wird
und nicht wie bei Transmeta’s LongRun mehrere.
Andre Ritterhoff & Ralf Ramaker
32
Labor Rechnerstruktur
Anhang C
Thermal Management
(Quelle: http://www.transmeta.com/technology/architecture/longrun.html)
The management of how a device will dispose of heat is an integral part of
microprocessor design. Operating temperature rises as heat collects in a device,
potentially causing damage and affecting performance. Designers are careful to
incorporate thermal solutions in their designs that allow their products to operate
within a safe temperature range. Conventional processors typically use Thermal
Throttling for CPU thermal management. Thermal throttling regulates the thermal
environment by alternating between running the processor at full speed and placing
the processor in a sleep state whenever the upper limits of the thermal envelope are
reached. Performance is delivered in discrete bursts that tend to be unfavorable for
applications processing smooth multimedia content, such as software DVD and MP3
playback.
By integrating a thermal model into the software algorithm, LongRun manages the
Crusoe processor’s thermal environment by using frequency/voltage shifts as a
substitute for thermal throttling. In contrast to conventional thermal management
techniques, the LongRun thermal extensions deliver higher performance at the
same die temperature or the same performance at a lower die temperature,
essentially expanding the thermal budget of the CPU. The LongRun thermal
extensions allow the possible elimination of active cooling solutions, which reduces
system weight and time-to-market as there is no need for explicit CPU thermal
management.
With LongRun, Transmeta delivers superior performance for a given thermal
envelope.
Andre Ritterhoff & Ralf Ramaker
33
Labor Rechnerstruktur
Anhang D
Nachfolgend wird eine Tabelle gezeigt, welche die vier Zustände der obigen Grafik
erklären soll. Es wird der Unterschied des normalen Zustandes im Vergleich zum
Auto Halt-, Quick Start- oder Deep Sleep-Zustand erklärt. (Quelle:
http://www.transmeta.com/pdf/white_papers/paper_mfleischmann_17jan01.pdf).
Das nachfolgende Diagramm zeigt wie zwischen den einzelnen Prozessorzuständen
hin- und hergewechselt werden kann. Das Diagramm wurde aus dem Datenblatt des
TM5800 entnommen. Ich nehme an, dass der Zustandswechsel des Prozessors
beim TM5400 genau so oder aber doch ziemlich ähnlich aussieht.
(Quelle: http://www.transmeta.com/crusoe_docs/TM5800_DataBook_6-26-02.pdf)
Andre Ritterhoff & Ralf Ramaker
34
Labor Rechnerstruktur
Andre Ritterhoff & Ralf Ramaker
35
Labor Rechnerstruktur
Nachfolgende Tabelle zeigt die typische Leistungsaufnahme bei den verschiedenen
Aufgaben im Zusammenhang mit dem jeweiligen Prozessorzustand an. (Quelle:
http://www.transmeta.com/technology/specifications/tm5400.html)
Nachfolgen sind noch einmal alle Zustände, die das System annehmen kann,
aufgelistet. (Quelle:
http://www.transmeta.com/technology/specifications/tm5400.html)
Die Unterschiede zwischen den drei Zuständen (G1/S4, G2/S5 und G3) liegen in der
unterschiedlichen Ausschaltung des Systems.
Andre Ritterhoff & Ralf Ramaker
36
Labor Rechnerstruktur
Anhang E
Transmeta Shows New TM8000 Astro
(Quelle:
http://www.mdronline.com/watch/watch_abstract.asp?Volname=Issue%20%23158&S
ID=577&on=1&SourceID=00000377000000000000)
Tom R. Halfhill - Senior Editor {01/06/2003}
Transmeta is showing customers first samples of its next-generation mobile PC
processor, promising to deliver production quantities by 3Q03. Although Transmeta is
withholding most architectural details about the new TM8000 Astro until it’s closer to
release, the company says the processor will offer higher performance and additional
power-management features.
The biggest difference between the TM8000 and current TM5800 Crusoe processors
is a much wider VLIW core. The TM8000 has 256-bit-wide instruction words that can
issue up to eight 32-bit operations in parallel, compared with the TM5800’s 128-bitwide instruction words containing four 32-bit operations. Although the common
wisdom is that typical PC applications yield little instruction-level parallelism beyond
four-way execution, it’s possible that the TM8000 can do better. Its “code-morphing
software” dynamically translates x86 instructions into native VLIW instructions, often
reducing complex x86 instructions into two or more simpler operations suitable for
parallel execution. (See MPR 2/14/00-01, “Transmeta Breaks x86 Low-Power
Barrier.”)
In addition to wider instruction words, the TM8000 has many new instructions,
instruction types, addressing modes, and registers; it’s virtually a new architecture.
Transmeta has the freedom to overhaul the processor’s architecture so extensively
because the VLIW core is invisible to x86 software, which runs atop the emulation
layer. The native VLIW architecture is visible to only Transmeta’s system
programmers, who wrote a new version of the code-morphing software for the
TM8000.
Transmeta won’t publicly discuss whether the TM8000 will support the latest x86
media-processing extensions, such as Intel’s SSE and SSE2. (The TM5800 doesn’t.)
However, Transmeta CTO David Ditzel says the TM8000 will have “significantly
enhanced” floating-point performance, which is a notable feature of SSE2. Because
the TM8000 will hit the market in 3Q03, about the same time MPR expects Intel to
roll out SSE3, it will be unfortunate if Transmeta doesn’t support at least the x86
extensions introduced to date. State-of-the-art media processing isn’t critical for the
TM8000, which is designed primarily for mobile computers and business
applications, but that situation may change as more users follow the trend of
replacing desktop PCs with laptops as their primary system.
Andre Ritterhoff & Ralf Ramaker
37
Labor Rechnerstruktur
Ditzel says Transmeta will announce the TM8000’s clock speeds when the chip is
closer to introduction. For now, he says only that the TM8000 will exceed 1GHz, a
clock frequency already attained by the TM5800. Transmeta’s foundry, TSMC, will
manufacture the first TM8000 chips in a 0.13-micron process—the same process
TSMC uses for the TM5800.
Although mobile PC users are generally less obsessed with clock frequencies than
desktop users are, mobile processors that run at gigahertz speeds command higher
prices and compete more effectively with Intel’s fast mobile Pentium 4 and Pentium
III. It will be interesting to see how Transmeta and Intel tune their marketing strategy
after Intel’s 1H03 introduction of Banias, a new mobile-PC processor. Banias will run
at lower clock frequencies than the mobile Pentium 4 does, yet it will deliver strong
performance. Intel, like Transmeta, may downplay clock speeds in favor of promoting
low power consumption and longer battery life. (See MPR 11/25/02-01, “Intel Spills
the Beans About Banias.”) There will almost certainly be a war of words and
benchmarks as the two companies try to establish which mobile processor delivers
the better balance of power consumption and performance.
Blade servers are a potential growth market for Transmeta’s cool-running chips. In
rack-mounted blades, high processing density and low heat dissipation are more
important than maximum performance. Transmeta is already branching out in this
direction. Earlier this month, RLX Technologies introduced its new ServerBlade
1000t, which uses a 1GHz TM5800 to replace an older 667MHz version of the chip.
Los Alamos National Laboratory is using a 480-processor cluster of ServerBlade
1000t boards.
Transmeta is also trying to enter the embedded market, where low power is definitely
a virtue. The relatively large memory requirements of Transmeta’s code-morphing
software and translation cache will rule out many embedded applications, but
lucrative opportunities still exist for an x86-compatible processor that runs at 1GHz
and sips only a few watts of power. Examples might be set-top boxes, personal video
recorders, and other consumer appliances in which fanless operation is a plus.
To find out more about Microprocessor Report, please visit: www.mdronline.com.
Andre Ritterhoff & Ralf Ramaker
38
Labor Rechnerstruktur
Astro to propel Transmeta's comeback
(Quelle: http://news.com.com/2100-1040-966315.html)
By Michael Kanellos
Staff Writer, CNET News.com
November 18, 2002, 10:56 PM PT
LAS VEGAS--Transmeta, which has suffered through a difficult year and a half,
is gearing up for a comeback with Astro, a newly designed microprocessor due
out in 2003.
Astro, which is being shown off for the first time in a hotel suite at the Bellagio Hotel
during Comdex Fall 2002, is the company's second-generation Crusoe processor, an
energy-efficient chip for notebooks. It will consume less power than the company's
first Crusoe chips, the TM 5000 series, but offer substantially more performance, said
Chief Technical Officer David Ditzel.
"The TM 5000 was designed in my basement," he said. "We looked at what we did
right and what we did wrong and figured out how to do it all over."
The chip differs from its predecessors in that it can issue eight instructions per clock
cycle. Current Transmeta chips, and other competing chips, issue only four
instructions per cycle, the company said. As a result, more work can be
accomplished per clock cycle. Increasing the work per clock cycle also lowers energy
consumption, which increases battery power.
Astro will come out toward the middle of 2003 and be manufactured on the 130nanometer process. Officially, it will kick off the TM 8000 family of Crusoe chips.
Additionally, Astro is fairly small, which means that the chip will likely cost little to
produce, an important factor in the current notebook environment. Although notebook
sales continue to grow, more manufacturers are touting sub-$1,000 PCs, a price that
requires an inexpensive processor.
The chip will compete directly against Banias, a low-power chip coming from Intel in
the first quarter that will effectively become the company's primarily mobile chip and
replace the Pentium 4 in notebooks. Transmeta executives, though, indicated that
the company would beat Banias in price.
"You're not going to get more than $120" for a notebook chip, said Matthew Perry,
Transmeta's CEO. Intel's Pentium 4 mobile chips sell for between $171 and $348,
although mobile Celeron chips float around the $100 level.
The chip comes out at a challenging time for the company. Although it racked up a
series of impressive design wins with major manufacturers in 2000 and 2001, several
product delays and the decline in the PC market decimated the company's revenue.
Andre Ritterhoff & Ralf Ramaker
39
Labor Rechnerstruktur
Recently, however, the company has landed some high-profile wins. HewlettPackard uses a Crusoe in its tablet PC, which came out earlier this month.
Sharp also uses the chip in its Muramasa notebook, a full-fledged Windows XP
notebook that weighs a little more than 2 pounds, making it one of the lightest
notebooks ever, if not the lightest. Sharp has started to sell the Muramasa in Japan,
and it will likely come to the United States next year, sources said.
Andre Ritterhoff & Ralf Ramaker
40

Documents pareils