AMD vs. Intel - Weblearn

Transcrição

AMD vs. Intel - Weblearn
AMD vs. Intel
- Ausarbeitung zur Präsentation -
Hochschule Bremen
Fachbereich Elektrotechnik und Informatik
Studiengang Technische Informatik
Rechnerstrukturen, Labor (RST-L)
Prof. Dr. Thomas Risse
Wintersemester 2007/ 08
Vorgelegt von:
20.12.2007, Bremen
Christoph Bartels,
Christian Dinter,
Martin Lange,
15 26 10
15 45 58
15 30 90
AMD vs. Intel
WS 2007/ 08
Inhaltsverzeichnis
Inhaltsverzeichnis .................................................................................................................................... 2
1.
2.
3.
4.
Einführung ....................................................................................................................................... 3
1.1.
Firmenbeschreibung (AMD) ................................................................................................... 3
1.2.
Firmenbeschreibung (Intel) ..................................................................................................... 4
Architekturbeschreibung ................................................................................................................. 6
2.1.
Beschreibung der K8 Architektur............................................................................................ 6
2.2.
Ausblick auf die K10 Architektur ........................................................................................... 8
2.3.
Core-Beschreibung .................................................................................................................. 9
2.4.
Ausblick auf die neue Core-Generation (Penrym) ................................................................ 12
Hauptspeicher (RAM)- und Chipsatz-Anbindung......................................................................... 13
3.1.
Speicher-Adressierung / -Verwaltung ................................................................................... 13
3.2.
AMD K8 (Athlon 64 X2) ...................................................................................................... 14
3.3.
Intel Core (Core 2 Duo)......................................................................................................... 15
3.4.
Gegenüberstellung ................................................................................................................. 16
Cache und TLBs ............................................................................................................................ 19
4.1.
Level 2 Cache ........................................................................................................................ 19
4.1.1.
5.
6.
Gegenüberstellung Level 2 Cache ................................................................................. 19
4.2.
Level 1 Cache ........................................................................................................................ 20
4.3.
Translation Lookaside Buffers (TLBs) ................................................................................. 21
Prefetching .................................................................................................................................... 22
5.1.
AMD K8 (Athlon 64 X2) ...................................................................................................... 22
5.2.
Intel Core (Core 2 Duo)......................................................................................................... 23
Benchmarks ................................................................................................................................... 24
6.1.
CPU-Performance: SPEC CPU 2000 .................................................................................... 25
6.2.
Speicher: Sciencemark .......................................................................................................... 28
6.3.
Analyse: SunGard ACR ........................................................................................................ 29
6.4.
Rendering: 3ds Max 8 ........................................................................................................... 30
6.5.
System-Performance: BAPCo Sysmark 2004 SE ................................................................. 32
6.6.
Energieverbrauch................................................................................................................... 34
6.7.
Ausblick in die Zukunft ......................................................................................................... 35
6.8.
Resümee ................................................................................................................................ 38
Quellenverzeichnis ................................................................................................................................ 40
Abbildungsverzeichnis .......................................................................................................................... 43
Tabellenverzeichnis ............................................................................................................................... 43
Bartels, Dinter, Lange
Seite 2 von 43
AMD vs. Intel
1.
WS 2007/ 08
Einführung
Diese Ausarbeitung vergleicht den Aufbau und im Besonderen die Speichertechnologien (Anbindung
und Schnittstellenaufbau) der jeweils aktuellen Mikroprozessorarchitektur von Intel und AMD. Die
beiden miteinander konkurrierenden Architekturen sind in diesem Fall die K8-Architektur von AMD
und die Core-Architektur von Intel. Diese Dokumentation gliedert sich in mehrere Teile, zunächst
werden die beiden Kontrahenten vorgestellt und der wesentliche Aufbau der beiden
Mikroprozessorarchitekturen erklärt, um die anschließende Detailerklärung der Speicheranbindung
und -technologie einordnen zu können. Außerdem wird auf die Änderungen der nachfolgenden
Architekturen bzw. Versionen eingegangen. Den Abschluss bilden einige Benchmarks, die deutlich
machen, welche Vor- und Nachteile die verschiedenen Ansätze mit sich bringen.
1.1.
Firmenbeschreibung (AMD)
Die Firma AMD (Advanced Micro Devices) wurde im Jahre 1969 gegründet und produzierte zunächst
Schieberegister, Speicherbausteine und Mikroprozessoren. 1979 erwarb AMD eine Lizenz von Intel
zur Herstellung von 8086- und 8088-Prozessoren. Infolgedessen produzierte AMD eigene Nachbauten
von Intel-Entwicklungen, so wurde beispielsweise ein 80286 Nachbau als Am286 von AMD
vertrieben. [vgl. AMD08, AMD07]
Im Jahre 1986 kündigte Intel den Vertrag, der diese Praxis erlaubte und AMD reagierte mit einer
Klage, aus der sich ein Rechtsstreit um die Lizensierung von Prozessormodellen entwickelte.
Aufgrund des schwebenden Verfahrens konnte AMD noch 80386 und 80486 Modelle entwickeln und
war erst nach Jahren in der Situation, eine eigene Prozessorlinie produzieren zu können.
[vgl. AMD08, AMD07]
Diese erste eigene moderne Mikroarchitektur war der K5, diese konnte allerdings erst 1996 vorgestellt
werden, da die Entwicklung einer Mikroarchitektur einiges an Ressourcen und Zeit kostet. So war der
K5 aufgrund der späten Markteinführung nie eine echte Konkurrenz für den Intel Pentium. Erst der
Nachfolger, die K6 Architektur (1997), brachte AMD einen Riesensprung nach vorn im Rennen um
den schnellsten x86 Prozessor. Diese neue Architektur basierte auf einem Model der kurz zuvor
übernommenen Firma NexGen, diese wurde zunächst um die MMX Befehle und in einem nächsten
Entwicklungsschritt (K6-2, 1998) um die eigene SIMD Erweiterung 3Dnow! erweitert.
[vgl. AMD08, AMD07]
1999 wurde eine weitere Variante des K6 entwickelt, der K6-III. Dieser bestand eigentlich nur aus
einem K6-2 mit einem integrierten 256KB L2-Cache. Zwar brachte dies einen großen
Geschwindigkeitsvorteil, jedoch wurde der Die extrem groß und somit sehr teuer in der Fertigung. Der
letzte Nachfolger als K6 basiert eben aus diesem Grund wieder auf dem K6-2 und wurde K6-2+
genannt, dieser wurde bereits in 0,18µm gefertigt. [vgl. AMD08, AMD07]
Der Nachfolger des K6 wurde der K7, dieser war erstmals dem Konkurrenten, Intels Pentium III
technisch überlegen und so konnte AMD den ersten x86-Prozessor veröffentlichen der die 1GHz
Marke durchbrach. Möglich wurde dies auch durch die neuen Fabriken in Dresden, denn hier konnte
erstmals ein AMD Prozessor ohne grössere Fertigungsprobleme gebaut werden.
[vgl. AMD08, AMD07]
Bartels, Dinter, Lange
Seite 3 von 43
AMD vs. Intel
WS 2007/ 08
Schließlich wurde 2003 der K8 veröffentlicht. Mit dieser neuen Architektur stellte AMD die erste vor,
die mit einer 64Bit Technologie arbeitet. Diese Architektur wird, in der neusten Ausprägung, in dieser
Ausarbeitung näher vorgestellt und mit Intels Core-Architektur verglichen. [vgl. AMD08, AMD07]
1.2.
Firmenbeschreibung (Intel)
Die Intel Corporation, 1968 gegründet, konzentrierte sich bis Anfang der 80er Jahre zunächst auf den
Markt der Speichertechnologien. Zwar entwickelte Intel bereits 1974 den 8080, einen der ersten
vollwertigen Mikroprozessor; der Speichermarkt, insbesondere DRAM, blieb jedoch bis zu einem
starken Umsatzeinbruch um 1983 das Kerngeschäft. [vgl. INT08, INT07d]
Hiernach wurden die Mikroprozessoren zu dem Standbein des Konzerns. Hier sticht insbesondere die
x86er Prozessorfamilie hervor, die durch eine geschickte Lizenz und Markenpolitik zu einer der am
weitesten verbreiteten Prozessorfamilien der Welt gehört und Intel eine marktbeherrschende Stellung
im PC-Prozessoren-Sektor verschaffte. Zwar wurden die x86 Prozessoren im Wesentlichen von Intel
entwickelt, jedoch auch von AMD vertrieben. Dies wurde ermöglicht durch eine von Intel vergebene
Lizenz, die 1986 gekündigt wurde. [vgl. INT08, INT07d]
Wichtige Vertreter waren 1985 der i386DX, der erste 32Bit Prozessor der Reihe und 1989 die
Weiterentwicklung i486DX mit integriertem L1-Cache und einem ebenfalls integriertem
mathematischen Coprozessor (FPU). Die beiden Serien liefen lange parallel, da die Kosten für einen
486er Prozessor bis zu 6000 US-Dollar betrugen und diese somit nicht für Privatanwender
erschwinglich waren. Im Laufe der Entwicklung wurden die Caches beider Reihen vergrößert und die
Taktraten erhöht. [vgl. INT08, INT07d]
Erst 1993 wurde mit dem Pentium eine grundlegend neue Architektur veröffentlicht. Diese gilt als
erste, superskalare CISC-Architektur der Welt und verfügte über eine echte, parallel arbeitende,
Pipeline. Trotz Startschwierigkeiten mit der 486er Konkurrenz im eigenen Haus hielt Intel an der
jungen Architektur fest und entwickelte sie konsequent weiter. So folgte 1994 eine
multiprozessorfähige Version und später der Pentium MMX. Letzterer verfügte als erster x86Prozessor über eine SIMD-Erweiterung zur Verarbeitung großer Integerdatenmengen, wie sie bei
Video/Audio oder Bild- Verarbeitung anfallen. [vgl. INT08, INT07d]
Am Ende der Pentium-1 Reihe stand Intel bei einer Taktrate von 233MHz (Desktop) bzw. 300MHz
(Mobil). Der nächste Entwicklungsschritt war der Pentium Pro (P6), er verfügt intern über 3 parallel
arbeitende RISC Pipelines und unterscheidet sich somit deutlich von seinem Vorgänger, dem Pentium.
Ein neues Konzept war zudem die „Out-of-Order“ Ausführung von Befehlen, die eine effizientere
Parallelisierung erlaubt. Trotz der deutlichen Leistungssteigung zum Pentium konnte sich der P6 nicht
am Markt durchsetzen, da Intel Probleme mit der Fertigung des On-Chip-Caches hatte und daher den
Preis nicht auf Marktniveau senken konnte. [vgl. INT08, INT07d]
Trotz dieser Probleme wurde die P6 Architektur zur Grundlage aller Nachfolgemodelle der PentiumSerien, allen voran dem Pentium II, der im Wesentlichen ein P6 mit getrenntem Cache und
hinzugefügtem MMX-Modul war (maximaler Takt: 450MHz). Außerdem wurde parallel zum Pentium
II ein Modell für den Low-Cost Sektor vermarktet, der Celeron. Dieser hatte die Einschränkungen
eines reduzierten L2 Caches sowie eines niedrigeren FSB-Taktes. [vgl. INT08, INT07d]
Bartels, Dinter, Lange
Seite 4 von 43
AMD vs. Intel
WS 2007/ 08
Die nächste Generation hieß folgerichtig Pentium III und verfügte nun endlich über den On-ChipCache sowie über die SSE Einheit, mit der Gleitkommaberechnungen stark beschleunigt wurden.
Außerdem plante Intel mit dieser Prozessorgeneration weltweit eindeutige und per Software
auslesbare IDs zu vergeben, musste dieses Vorhaben nach massiven Protesten von Datenschützern
jedoch wieder aufgeben. Die letzte Version des Pentium III lief mit einem Takt von 1133 MHz.
[vgl. INT08, INT07d]
Der Pentium 4 (Nov. 2000) arbeitete mit der NetBurst Architektur. Charakteristisch hierfür ist eine
extrem lange Pipeline (bis zu 31 Stufen), die mit einen sehr hohen Takt (bis 4 GHz) arbeitet. Hierzu
war es notwendig, die Sprungvorhersage zu verbessern und die einzelnen Stufen der Pipeline
möglichst klein und einfach zu halten. Intel plante diese Architektur durch einen ansteigenden Takt
längere Zeit betreiben zu können, jedoch machten Problem bei der Leistungsaufnahme und eine starke
Wärmeerzeugung einen Strich durch diese Pläne. [vgl. INT08, INT07d]
Abgelöst wurde die NetBurst Architektur auf dem Desktop-Sektor von der Core-Architektur, die
wieder mehr auf dem Pentium III, also auf der P6 Architektur, als dem Pentium 4 basiert. In dieser
Ausarbeitung wird die Core-Architektur näher beschrieben und mit AMDs letzter K8 Ausprägung
verglichen. [vgl. INT08, INT07d]
Bartels, Dinter, Lange
Seite 5 von 43
AMD vs. Intel
2.
WS 2007/ 08
Architekturbeschreibung
Im folgenden Abschnitt werden die beiden konkurrierenden Architekturen näher beschrieben. Die
dargestellten Schaublider zeigen Verarbeitungsblöcke, diese umfassen teilweise mehrere
Pipelinestufen.
2.1.
Beschreibung der K8 Architektur
Die etwas ältere K8 Architektur von AMD hat ein an den Athlon (K7) angelehntes Design. Die interne
Verarbeitung ähnelt hingegen der RISC Pipeline einer Alpha-CPU. Dies ist vermutlich auf den ChefEntwickler zurückzuführen, der auch den Alpha 21264 entwarf. Mit den 12 Stufen für IntegerBerechnung und 17 Stufen für die Floating-Point-Berechnungen ist die Pipeline der K8-Architektur in
etwa so lang wie die von Intels P6. Die K8 Architektur entspricht einem dreifach superskalaren
Design. Zusätzlich zu dem klassischem Aufbau der Architektur verfügt der K8 in der neusten Version
über eine Hardwareunterstützung für Virtualisierung, Pacifica genannt.
[vgl. AMD05, AMD07, CT06c, FOG07]
Die ersten Modelle der K8 Architektur wurden als Single-Core-CPUs verkauft, allerdings war die
Architektur von Anfang an auf den Dual-Core-Betrieb ausgelegt. Die ersten Dual-Core-Modelle der
K8 Architektur wurden ab 2005 verkauft. Dabei werden auf einem Die zwei Kerne integriert, die dann
über den Cross Bar Switch (XBAR) kommunizieren. [vgl. AMD05, AMD07, CT06c, FOG07]
Zunächst werden die x86 Befehle, die im L1 Instruction Cache liegen, in den Prefetch-Buffer, im Bild
„Fetch 2-transit“, geladen. Das Besondere hieran liegt in der Konstruktion des L1 Caches, er speichert
zusätzlich zu den reinen Instruktionen die sogenannten Predecoded Bits. Sie enthalten Informationen
über Sprünge und die Länge der Instruktionen. Da dies nicht mehr aus der Instruktion generiert
werden muss kann in der Pipeline Zeit gespart werden. Aus dem L1-Cache können bis zu 16 Bytes pro
Takt zur Pipeline transportiert werden. [vgl. AMD05, AMD07, CT06c, FOG07]
Aus dem Prefetch-Buffer gelangen die Instruktionen dann zu den drei Decodern, diese wandeln dann
parallel drei x86-Befehle in Mikrooperationen um. Nach der Umwandlung werden dann bis zu sechs
der entstandenen Mikrooperationen von den Packern in drei MacroOps zusammengefasst. Diese
MacroOps bestehen aus je zwei Befehlen, einem für die ALU und einem für die AGU. Sie gelangen
dann in die 72 Einträge umfassende Instruction Control Unit (ICU).
[vgl. AMD05, AMD07, CT06c, FOG07]
Hier werden die logischen Register des x86 Befehlssatzes auf die physikalischen Register der K8Architektur gelegt. Dies ist unter anderem deshalb nötig, weil so einige der Pseudo-Abhängigkeiten,
die die Out-of-Order- Ausführung hemmen, aufgelöst werden können. Um dies auch gewährleisten zu
können, sind mehr reale Register vorhanden, als der Befehlssatz vorsieht. Die Zuordnung geschieht in
der ICU. Nach dem Auflösen der Abhängigkeiten werden die MacroOps an die drei Integer- und den
Gleitkomma-Scheduler übergeben. [vgl. AMD05, AMD07, CT06c, FOG07]
Bartels, Dinter, Lange
Seite 6 von 43
AMD vs. Intel
WS 2007/ 08
In der folgenden Abbildung ist der grundlegende Aufbau der K8 Architektur dargestellt.
Abbildung 1: K8 Architektur im Überblick [CT07c]
Der oben beschriebene Aufbau der MacroOps erklärt sich, wenn man einen Blick auf die Konzeption
der Scheduler für die Ausführungseinheiten betrachtet. Jeder der drei Integer Scheduler ist in der Lage,
bis zu acht MacroOps zwischenzuspeichern und sie wieder in die einzelnen Operationen
aufzutrennen. Die Integer-Scheduler verfügen je über zwei Ausführungseinheiten, die parallel arbeiten
können. Die Gleitkomma-Schedulereinheit verfügt sogar über 36 Plätze und drei
Ausführungseinheiten. Insgesamt wäre es also möglich neun Mikrooperationen (Sechs Integer- und
drei Float-Operationen) parallel ausführen zu können. Dies gelingt sehr selten. Wenn es im Extremfall
doch möglich ist würde die 3-fach skalare Pipeline leerlaufen und müsste neu gefüllt werden. Dies
würde dazu führen das der Performancegewinn durch die schnelle Ausführung verloren geht.
[vgl. AMD05, AMD07, CT06c, FOG07]
Zusätzlich zu der Gleitkommaberechnung findet im FPU-Pfad auch die Ausführung der SSE
Berechnung statt. Hier liegt auch der Grund, aus dem der Zwischenspeicher der FPU wesentlich
grösser ist als der der Integer-Scheduler. Die K8-Architektur verfügt nur über einen 64 Bit breiten
Bus, über den es nicht möglich ist, die teilweise 128-bitigen SSE-Operationen in einem Stück
ausführen zu können. So müssen diese sogenannten Double-Dispatch-Operationen vorher von dem
Bartels, Dinter, Lange
Seite 7 von 43
AMD vs. Intel
WS 2007/ 08
FPU-Scheduler getrennt und anschließend hintereinander ausgeführt werden. Dies passiert jedoch
nicht ausschließlich bei SSE-Befehlen sondern kann auch bei einigen Gleitkomma-Berechnungen oder
Stack-Operationen notwendig werden. Dieses Vorgehen ermöglicht zwar die Ausführung solcher
Befehle, hemmt aber die effiziente Ausnutzung der Pipeline, da die Double-Dispatch-Operationen
zwei Ausführungsphasen im FPU-Zweig benötigen. [vgl. AMD05, AMD07, CT06c, FOG07]
Nach der Adressberechnung in den AGU-Ausführungseinheiten können in der Load/Store Queue
zwei, 64Bit Speicherzugriffe pro Takt ausgeführt werden. Die LSU (Load-Store-Unit) kann sowohl
auf den L1-Datencache, den L2-Cache als auch den Hauptspeicher zugreifen. Für die Zugriffe auf den
L1-Datencache stehen 12 Einträge, für den Zugriff auf den L2-Cache und den Hauptspeicher 32
Einträge in der Load/Store Queue zur Verfügung. Im Extremfall können also bis zu 11
Mikrooperationen (neun Mikrooperationen in den Ausführungseinheiten und zwei Load/Store
Operationen in der LSU) parallel ausgeführt werden. [vgl. AMD05, AMD07, CT06c, FOG07]
Eine weitere Besonderheit der K8-Architektur ist der Speichercontroller, der sich anders als bei Intels
Core-Architektur, auf dem Die des Prozessors befindet, also in diesen integriert ist. Die Vor- und
Nachteile dieser Lösung werden später in dieser Ausarbeitung ausführlich diskutiert. Dieser
Speichercontroller verfügt einen Crossbar-Switch mit angeschlossenen drei Hyper-Transport-Links
und einem Interfache für DDR2-Speicher. Der Crossbar-Switch ist außerdem auch bereits für die
Synchronisierung mit einem zweiten CPU-Kern ausgelegt. [vgl. AMD05, AMD07, CT06c, FOG07]
2.2.
Ausblick auf die K10 Architektur
Der Nachfolger der K8 Architektur ist die K10 Architektur, die aktuellste von AMD. Wie im
folgenden Schaubild zu erkennen ist, basiert sie stark auf ihrem Vorgänger, dem K8. Allerdings ist
diese Architektur von Anfang an für den Vierkernbetrieb ausgelegt worden. Alle vier Kerne, die auf
einem Die integriert sind, kommunizieren untereinander über die Cross Bar (XBAR). Der K10 wird
direkt in AMDs neuer 65nm Technologie gefertigt. [vgl. AMD07c, CT07c, RWT07b, TR07]
Möglich wird dieser Vierkernbetrieb durch den zusätzlichen Level 3 Cache der vorwiegend zum
auflösen der Kohärenz verwendet wird. Dieser L3 Cache wird also unter allen vier Kernen geteilt.
Um zusätzliche Performance aus der Architektur herauszuholen wurden viele der internen
Busssysteme verbreitert. So wurde zum Beispiel der Bus in der SSE Einheit auf 128Bit verbreitert.
Hier werden jetzt keine Double-Dispatch-Befehle mehr benötigt. Alle Befehle, bis 128Bit, können nun
in einem Schritt verarbeitet werden. [vgl. AMD07c, CT07c, RWT07b, TR07]
Außer den Bussen wurden auch die einzelnen Caches und Buffer vergrößert und die TLBs bekamen
mehr Einträge.
Als weiteres Feature wurde der SSE-Befehlssatz erweitert und zwar um ein Bündel von AMDspezifischen Befehlen. Diese SSE Version läuft unter der Bezeichnung SSE 4a. Einige der neuen
Befehle benutzen eine neue Ausführungseinheit, die ABM. In dieser können „Advanced Bit
Manipulation“- Befehle wie POPCNT oder LZCNT sehr effizient ausgeführt werden. POPCNT
beispielsweise zählt die Anzahl der gesetzten Bits eines Maschinenwortes, LZCNT zählt die
führenden Nullen. [vgl. AMD07c, CT07c, RWT07b, TR07]
Bartels, Dinter, Lange
Seite 8 von 43
AMD vs. Intel
WS 2007/ 08
Die K10 Architektur ist in der folgenden Abbildung dargestellt. Alle Änderungen zum K8 sind rot
markiert.
Abbildung 2: K10 Architektur im Überblick [CT07c]
2.3.
Core-Beschreibung
Der grobe Ablauf der Core Pipeline gleicht im Wesentlichen der im P6 und der Architektur für Mobile
Prozessoren Yonah. Allerdings wurden sämtliche Busse verbreitert und an fast allen Stufen
Verbesserungen vorgenommen. Das Zentrum der 14-stufigen Pipeline bildet die Reservation Station,
die die Mikrooperationen an die Ausführungseinheiten verteilt. Die Core Architektur entspricht einem
vierfach superskalaren Design. [vgl. CT06c, INT06, INT07d, INT07e, FOG07]
Bartels, Dinter, Lange
Seite 9 von 43
AMD vs. Intel
WS 2007/ 08
Bei der Core Architektur handelt es sich um eine vollwertige Dual-Core-Architektur. Die beiden
Kerne, die auf einem Die integriert sind, kommunizieren untereinander über den gemeinsamen L2
Cache. Bei den Vier-Kern-Modellen der Core Architektur handelt es sich im Grunde um zwei ZweiKern-Prozessoren, die in einem Chip integriert wurden. Die Kommunikation zwischen diesen muss
über den FSB (Front Side Bus) abgewickelt werden. [vgl. CT06c, INT06, INT07d, INT07e, FOG07]
Die Core Architektur ist in der folgenden Abbildung dargestellt (siehe Abbildung 3).
Abbildung 3: Core Architektur im Überblick [CT07c]
Die x86-Befehle werden aus dem Instruction Cache über einen 128Bit breiten Bus in einen kleinen
Zwischenspeicher (Instruction Streaming Buffer, 32Byte) geladen. Die Datenrate zu den Decodern
beträgt 16Bytes/Takt, also kann mindestens eine x86-Instruktion von maximal 15Byte Länge geladen
werden. Da die durchschnittliche Instruktionsgrösse innerhalb von Programmen 4Byte beträgt, können
im Schnitt 4 Instruktionen pro Takt geladen werden. [vgl. CT06c, INT06, INT07d, INT07e, FOG07]
Bartels, Dinter, Lange
Seite 10 von 43
AMD vs. Intel
WS 2007/ 08
Die Sprungvorhersage ist schon im Frontend der Pipeline platziert, hier konkurrieren zwei
verschiedene Verfahren um die bessere Vorhersage, ob gesprungen wird oder nicht; die mit der
besseren Trefferrate wird bevorzugt. Außerdem werden spezielle Vorhersagetechniken für Schleifen
und indirekte Sprünge verwendet. Zusätzlich dazu verfügt die Core-Architektur über einige
Vorhersagetechniken für Stackpointerberechnungen. Diese frühe Vorhersage ist wichtig, da bei einem
nicht vorhergesehenen Sprung die Pipeline gelöscht und von der Zieladresse an neu gefüllt werden
müsste. Das kostet eine Menge Zeit, einen Takt pro Stufe.
[vgl. CT06c, INT06, INT07d, INT07e, FOG07]
Auch die neuentwickelte MacroOp-Fusion spart eine Menge Taktzyklen, sie kann in einem fünf
Befehle umfassenden Fenster zwei präcodierte x86 Befehle zu einem verschmelzen. So kann ein
Vergleichs- und ein darauffolgender Sprungbefehl als ein x86-Befehl vom Complex Decoder in eine
einzige Mikrooperation übersetzt werden. Diese Methode erlaubt es, theoretisch fünf x86-Befehle mit
nur vier Decodern zu decodieren. Allerdings ist dies nur im 32Bit Modus möglich, im 64Bit Modus
sind die Befehle länger und das Instruktionsfenster somit zu klein.
[vgl. CT06c, INT06, INT07d, INT07e, FOG07]
Als Beispiel kann die Befehlsfolge in der folgenden Abbildung betrachtet werden. Der Programmfluss
in der Abbildung ist von unten nach oben zu betrachten. Die anschließende Decodierung in echte
Mikrooperationen ist in der Abbildung nicht mehr dargestellt, sie betrachtet ausschließlich die PräDecodierung. [vgl. CT06c, INT06, INT07d, INT07e, FOG07]
Abbildung 4: Beispiel zur MacroOp Fusion (Prä-Decodierung) [vgl. CT06c]
Einfache Instruktionen (Register-Move oder Integerberechnungen) übersetzen die Simple-Decoder
direkt in Mikrooperationen, komplexere werden von dem Complex-Decoder in mehrere
Mikrooperationen umgewandelt. Im Extremfall können dies über zehn Mikrooperationen sein. Aus
den Mikrooperationen kann der Complex-Decoder dann gleichzeitig bis zu vier Operationen
generieren. Die dekodierten Operationen aus dem Complex-Decode gelangen zusammen mit den drei
dekodierten Operationen aus den Simple-Decodern in die Decoded Instruction Queue.
[vgl. CT06c, INT06, INT07d, INT07e, FOG07]
An dieser Stelle setzt die zweite Stufe der Befehlsverschmelzungen an: in der MicroOp Fusion werden
passende Mikrooperationen gebündelt und gemeinsam verwaltet. Dies funktioniert allerdings nur
dann, wenn sich genügend ähnliche, d.h. zusammenfassbare, Operationen in der Decoded Instruction
Queue befinden. Dieses Vorgehen spart Zeit und Strom, denn je weniger Operationen vom ReorderBuffer und der Reservation Station verwaltet werden müssen, desto weniger Strom wird verbraucht.
[vgl. CT06c, INT06, INT07d, INT07e, FOG07]
Bartels, Dinter, Lange
Seite 11 von 43
AMD vs. Intel
WS 2007/ 08
Aus Performancegründen haben moderne Prozessoren weit mehr physikalische Register, als es der
ursprüngliche x86 Befehlssatz vorsieht. Damit dieser Vorteil zum Tragen kommen kann, müssen die
logischen Register des Befehlssatzes auf die physikalischen Register abgebildet werden. Durch diese
Vorgehensweise können außerdem viele Pseudo-Abhängigkeiten aufgelöst und so mehr Operationen
parallel ausgeführt werden. [vgl. CT06c, INT06, INT07d, INT07e, FOG07]
Um dies leisten zu können und um die Registerinhalte später wieder richtig zurückschreiben zu
können, werden die Abhängigkeiten der Register (logisch und physikalisch) im Retirement Register
File gespeichert; die Zuordnung werden in der Register Allocation Table vorgenommen.
So lassen sich allerdings nicht alle Abhängigkeiten auflösen. Um die Pipeline trotzdem optimal
auslasten zu können, werden die Befehle entsprechend für die Out-of-Order Ausführung umsortiert.
Diese Aufgabe wird vom Reorder-Buffer übernommen. Hier wird auch die ursprüngliche Reihenfolge
gespeichert, um diese im Fehlerfall oder bei Interrupts wiederherstellen zu können. Aus dem ReorderBuffer kommen bis zu vier unabhängige Mikrooperationen pro Takt in die Reservation Station, wo sie
auf eine freie Ausführungseinheit warten. [vgl. CT06c, INT06, INT07d, INT07e, FOG07]
Für die Abarbeitung sind sechs Ausführungseinheiten verfügbar, die theoretisch auch bis zu sechs
Mikrooperationen gleichzeitig verarbeiten können. Theoretisch deshalb, weil bei einem extrem selten
auftretenden Fall die 32 Plätze der Reservation-Station, und damit die Pipeline, leerlaufen kann. Das
passiert dann, wenn kontinuierlich mehr Befehle verarbeitet werden als von Reorder-Buffer geliefert
werden können. Die sechs Ausführungseinheiten bestehen aus drei ALUs, je einer Load/Store Einheit
für Adressen und einer Store Einheit für Daten. Außerdem kann in jeder der ALU-Einheiten, aber
nicht parallel zu diesen, auch ein MMX oder SSE Befehl verarbeitet werden. Im Unterschied zu
anderen Architekturen können hier echte 128Bit MMX/SSE Befehle verarbeitet werden.
[vgl. CT06c, INT06, INT07d, INT07e, FOG07]
Weitere Takte werden durch eine Verlagerung der AGU (Adress Generation Unit) direkt in die
Load/Store Einheiten gespart, dadurch müssen die Adressen nicht erst im Port 0 berechnet werden.
Dies ermöglicht es der Integer Ausführungseinheit im Port 0 zur gleichen Zeit eine andere Operation
auszuführen. [vgl. CT06c, INT06, INT07d, INT07e, FOG07]
Nach dem Berechnen in den Funktionseinheiten werden die Inhalte aus den physikalischen Registern
in die logischen Register des Befehlssatzes geschrieben. Hierzu wird wieder auf das Retirement
Register File zugegriffen. [vgl. CT06c, INT06, INT07d, INT07e, FOG07]
2.4.
Ausblick auf die neue Core-Generation (Penrym)
Mit der neuesten Generation der Core-Architektur, Codename Penrym, vollzieht Intel den Shrink auf
45nm. Außerdem werden bei diesem Generationswechsel einige Strukturverbesserungen
vorgenommen. So wurde z.B. der „shared“ L2 Cache auf 6MB vergrößert, die Integer- und FloatingPoint-Dividierer verbessert (ca. zwei bis drei mal schneller) und einige zusätzliche, Intel spezifische
SSE Befehle hinzugefügt (SSE 4.1). [vgl. CT07, RWT07]
Bartels, Dinter, Lange
Seite 12 von 43
AMD vs. Intel
WS 2007/ 08
3.
Hauptspeicher (RAM)- und Chipsatz-Anbindung
3.1.
Speicher-Adressierung / -Verwaltung
Um die Speicher-Adressierung und -Verwaltung der K8 und Core Prozessor-Architektur zu verstehen,
ist eine einführende Erklärung der grundlegenden Befehls-Architektur der beiden ProzessorArchitekturen nötig.
Grundlage aller x86 Prozessoren ist die von Intel entwickelte Intel Architektur-32 kurz IA-32, die
allgemein auch als x86 Architektur bezeichnet wird. Der 386er von Intel ist der erste Prozessor, der,
aus heutiger Sicht, die wichtigsten Funktionen dieser Architektur implementiert. Er ist ein 32 Bit
Prozessor, der im Protected Mode eine virtuelle Speicherverwaltung mittels Segmentation und/oder
Paging ermöglicht. Die IA-32 Architektur wird bis heute von Intel aber auch von anderen
Unternehmen, unter anderen AMD, weiter entwickelt.
AMD hat eine neue „Grundlagen“- Architektur für 64 Bit Prozessoren entwickelt. Diese basiert auf
der IA-32 Architektur und erweitert entsprechende Prozessoren um den 64 Bit Long Mode. AMD
bezeichnet diese Architektur als AMD64. Sie wurde erstmals mit den auf der K8 Architektur
basierenden Opterons 2003 eingeführt.
Intel ignorierte die AMD64 Architektur lange Zeit, da Intel eine eigene 64 Bit Architektur namens IA64 entwickelt hatte und diese auch bei den Itanium Server Prozessoren einsetzte. IA-64 ist jedoch nur
durch Emulation mit der IA-32 Architektur kompatibel. Aus Gründen des Marktdrucks (z.B.
Microsoft wollte nur ein 64 Bit Desktop-Betriebssystem entwickeln) und wegen zu hoher Kosten der
IA-64 im Desktop-Bereich führte Intel die 64 Bit Erweiterung von AMD in seine IA-32 Prozessoren
ein. Intel bezeichnete die Erweiterung erst als IA-32e (so steht es noch in aktuellen Dokumenten),
später dann als EM64T und jetzt als Intel 64.
IA-32 Prozessoren mit AMD64/Intel 64 Erweiterungen unterstützen folgende Betriebsmodi:
Tabelle 1: Betriebsmodi der IA-32 Prozessoren mit AMD64/Intel 64 Erweiterungen
Hauptmodi
Long
Mode
(AMD64/
Intel 64)
Legacy
Mode
(IA-32)
Untermodi
64-Bit
Mode
Compatibility
Mode
Protected
Mode
Virtual-8086
Mode
Real Mode
OS
64 Bit
32 Bit
16 Bit
Virtuelle Adr.
Bis zu 64 Bit
K8/K10/Core: 48 Bit
32 Bit
Physikalische Adr.
Bis zu 52 Bit
K8/K10: 40, Core: 36 Bit
32 Bit
32 Bit
32 Bit (mit PAE auch mehr
z.B. Core: 36 Bit)
Standard:
1 MByte mit 16 Bit
1 MByte mit 16 Bit
-----
Seitengrößen
4 KB, 2 MB
(K10: 1 GB)
4 KB, 2 MB,
(4 MB)
4 KB, 2 MB,
(4 MB)
-----
Im Legacy-Mode wird aktuell überwiegend der Protected Mode verwendet. Dieser Modus unterstützt
Segmentation mit oder ohne Paging. Bei aktiviertem Paging werden standardmäßig 4 KByte, unter
anderen Konfigurationen 2 MByte oder 4 MByte große Seiten, unterstützt.
Es lassen sich maximal 32 Bit (4 GByte adressierbar) virtuelle in 32 Bit physikalsche Adressen
umsetzen und verwalten. Die physikalischen Adressen lassen sich mit Hilfe von physical-address
extensions (PAE) erweitern (z.B. beim Core auf 36 Bit (64 GByte adressierbar)), was aber nur auf
Mainboards und Betriebssystemen für Server zufriedenstellend funktioniert.
Bartels, Dinter, Lange
Seite 13 von 43
AMD vs. Intel
WS 2007/ 08
Im Protected Mode bildet der Virtual-8086 Mode den alten Real Address Mode (Real Mode) nach, um
alte 16 Bit Programme unter einem 32 Bit Betriebssystem ausführen zu können.
Segmentation ist eine flexible aber auch sehr aufwendige Speicherverwaltung. Es wird aus
Performance und Ressourcen Gründen empfohlen, sie nicht zu nutzen, was auch die meisten heutigen
Systeme umsetzen. Dazu wird der Prozessor so konfiguriert, dass Segmentation größtenteils
umgangen wird (Segmentation lässt sich nicht abschalten). Zur Umsetzung dieses sogenannten Flat
Memory Modells wird die Segment Adresse (Segment Base Address) auf 0 und die Segment Größe
(Limit) auf 4 GByte (Größe des gesamten Speichers) gesetzt. In der Regel wird beim Flat Memory
Model Paging dazu verwendet virtuellen Speicher und Speicher-Schutzfunktionen zu nutzen.
[vgl. INT97, INT07e, AMD07]
Der Long Mode unterstützt im 64-Bit Mode alle neuen Erweiterungen der AMD64/Intel 64
Architektur. Dies sind im Bereich der Speicherverwaltung bis zu 64 Bit virtuelle Adressen (16
ExaBytes adressierbar) und bis zu 52 Bit physikalische Adressen (4 PetaByte adressierbar). Der
aktuelle Standard sieht aber erst mal „nur“ 48 Bit virtuelle Adressen (256 Terabyte adressierbar) vor.
Der physikalische Adressraum hängt von der Prozessor-Implementierung ab.
Um eine schnellere Speicherverwaltung zu ermöglichen, wird im Long Mode das Flat Memory Model
in Hardware umgesetzt. Das bedeutet hinsichtlich Segmentation, dass, bis auf wenige Ausnahmen, alle
Segment Base Adressen auf 0 gesetzt werden. Die Segment Limits und Attribute (Schutzfunktionen)
werden ignoriert. Paging und Physical Address Extensions (PAE) mit erweiterten Schutzfunktionen
sind fester Bestandteil der Speicherverwaltung. Unterstützt werden Seitengrößen von 4 KByte und 2
MByte. Es sind aber auch neuerdings Speicherseiten von 1 GByte vorgesehen. Diese werden zurzeit
allerdings nur vom K10 unterstützt.
Unter dem Long Mode bildet der Compatibility Mode einen Protected Mode nach, um 32 Bit
Programme unter einem 64 Bit Betriebssystem ausführen zu können. Im Compatibility Mode ist
Segmentation und Paging wie im Protected Mode möglich und es gelten die gleichen
Einschränkungen: 32 Bit virtuelle sowie 32 Bit physikalische Adressen und entsprechende
Seitengrößen. Der Virtual-8086 Mode wird unter dem Long Mode nicht mehr unterstützt und daher
auch keine Real Address Mode Programme.
[vgl. INT07e, AMD07, INT07b, INT07d]
3.2.
AMD K8 (Athlon 64 X2)
Der Speicher-Controller ist bei der AMD K8 Architektur in den Prozessor integriert („on die“). Dieser
arbeitet mit 128 Bit breiten Blöcken und teilt diese in zwei 64 Bit breite Speicherkanäle auf. Um den
zwei-kanaligen Betrieb zu gewährleisten, muss er mit Paaren gleicher Speicherriegel bestückt werden.
Ursprünglich hatte der K8 ein DDR1 Speicher-Controller. In der neusten Variante wurde er auf DDR2
umgestellt und kann daher maximal mit Paaren von PC2-6400 (DDR2-800, 400 MHz) Speicherriegeln
betrieben werden. Der Speicher-Controller ist mit 128 Bit am Cross Bar-Switch angebunden, der
wiederum über den System Request Queue (SRQ) an die jeweiligen Level 2 Caches der Kerne
angeschlossen ist. [vgl. CT06b, AMD07b, CT06c]
Im 64 Bit Modus (Long Mode) kann der K8 48 Bit virtuelle Adressen (256 Terabyte) in 40 Bit
physikalische Adressen (1 Terabyte) umsetzen und verwalten (siehe Abschnitt 3.1).
Bartels, Dinter, Lange
Seite 14 von 43
AMD vs. Intel
WS 2007/ 08
In der folgenden Abbildung ist ein Ausschnitt aus der K8 Architektur dargestellt:
Abbildung 5: Ausschnitt der K8 Architektur [CT07c]
Der K8 kommuniziert mit dem Chipsatz über einen seiner drei HyperTransport-Links. HyperTransport
ist ein offener Industriestandard, der vom HT-Konsortium vorangetrieben wird, in dem unter anderem
AMD Mitglied ist. Jeder Link besteht aus zwei seriellen Punkt-zu-Punkt-Verbindungen, je eine
Verbindung pro Richtung. Nach dem Standard 2c können die Punkt-zu-Punkt-Verbindungen alle 2er
Potenzen von 2 bis 32 Bit breit sein und mit 200 bis 1400 MHz betrieben werden. In der aktuellen
Version der K8 Architektur sind die Punkt-zu-Punkt-Verbindungen 16 Bit breit und werden mit 800
MHz (HT800) oder 1000 MHz (HT1000) betreiben. Theoretisch können somit pro Richtung 3,2
GByte/s (HT800) beziehungsweise 4 GByte/s (HT1000) übertragen werden. [vgl. AMD07b, CT06c]
HT-Links können auch dazu verwendet werden, um mehrere CPUs auf einem Mainboard direkt
miteinander zu verbinden. Für die Verbindung zweier CPUs werden allerdings kohärenzfähige HTLinks benötigt. [vgl. AMD07b, CT06c]
Der K10 unterstützt HT 3.0 und damit z.B. eine theoretische Link-Übertragungsrate von 20,8 GByte/s.
Die neue HyperTransport-Version ist aber nur mit neueren Sockeln kompatibel (AM2+). Außerdem
wurde beim K10 der Speichercontroller erweitert, so dass er z.B. zwei getrennte 64 Bit oder ein 128
Bit Speichertransfer abwickeln kann. [vgl. AMD07c]
3.3.
Intel Core (Core 2 Duo)
Der Speichercontroller beim Core ist, wie es früher auch schon üblich war, in den Chipsatz integriert.
Als Erklärungsbeispiel soll hier der X38 Express Chipsatz aus Intels aktueller 3er Serie dienen. Der
X38 hat wie der aktuelle K8 einen DDR2 Zweikanal-Speichercontroller (jeweils 64 Bit), der entweder
mit Paaren von maximal PC2-6400 (DDR2-800, 400 MHz) Speicherriegeln betrieben werden kann.
Der Zweikanal-Speichercontroller des X38 kann aber auch schon mit DDR3 betrieben werden.
Dadurch werden Paare von maximal PC3-10600 (DDR3-1333, 667 MHz) Speicherriegeln unterstützt.
[vgl. INT07f, CT06c]
Wie auch bei vorherigen Chipsätzen wirbt Intel mit Speicherbeschleunigungs-Technologien, im Fall
des 3er Serie „Fast Memory Access“ genannt. Dadurch werden z.B. Speicheroperationen umsortiert,
so dass zunächst alle Speicheroperationen auf die aktuell geöffnete Speicher-Seite erfolgen (in einem
begrenzten Zeitfenster), um die Zeit für das Öffnen und Schließen von Speicher-Seiten zu minimieren.
[vgl. INT07f, INT06b]
Bartels, Dinter, Lange
Seite 15 von 43
AMD vs. Intel
WS 2007/ 08
In der folgenden Abbildung ist die Anbindung des Prozessors an den Chipsatz dargestellt:
Abbildung 6: Anbindung CPU an den Chipsatz und Speicher (X38 Chipsatz)
Der X38 Memory Controller Hub (MCH), früher als Northbridge bezeichnet, ist über den Front Side
Bus (FSB) mit dem Prozessor verbunden. Der FSB arbeitet mit einem Quadruple Data Rate (QDR)
Verfahren, Intel vermarktet es als „quadpumped“. Es arbeitet also mit vier Datenworten pro Takt.
Die Ende 2007 schnellste Variante des FSB (1333FSB) wird mit 333 MHz betrieben und erreicht
somit eine theoretische Bandbreite von 10,6 GByte/s. Diese Bandbreite steht im Widerspruch zur
Bandbreite von einem Paar PC2-6400 (DDR2-800, 400 MHz) Speicherriegeln, die theoretisch 12,8
GByte/s übertragen können. Noch gravierender wird der Widerspruch, wenn die schnellst mögliche
Variante von DDR3 Speicher eingesetzt wird (PC3-10600 (DDR3-1333, 667 MHz)). Dieser erreicht
bereits im Einkanal-Betrieb die Bandbreite des FSB von 10,6 GByte/s, im Zweikanal-Betrieb sogar
21,2 GByte/s. Aus diesem Grund lohnt sich aktuell die Anschaffung von teureren DDR3 Speicher
nicht, denn von diesem Speicher ist keine Leistungssteigerung zu erwarten. [vgl. INT07f]
Im 64 Bit Modus (Long Mode) kann der Core 48 Bit virtuelle Adressen (256 Terabyte) in 36 Bit
physikalische Adressen (64 GByte) umsetzen und verwalten (siehe Abschnitt 3.1).
[vgl. INT07c, CT06c]
3.4.
Gegenüberstellung
Einer der größten Nachteile des externen Speichercontrollers der Core Architektur ist der durch den
FSB entstehende Flaschenhals zwischen Prozessor und Speichercontroller. Der Durchsatz des FSBs
ist, wie so oft, der theoretischen Bandbreite des Speichercontrollers im Chipsatz unterlegen (siehe
auch Abschnitt 3.3). Noch gravierender wird dieser Engpass durch die Tatsache, dass der FSB auch
die Kommunikation zwischen der Peripherie und dem Prozessor bewältigen muss.
Bartels, Dinter, Lange
Seite 16 von 43
AMD vs. Intel
WS 2007/ 08
Dadurch dass der Übertragungsweg im Verhältnis zum K8 länger ist und das Übertagungsprotokoll
beziehungsweise die Frequenz angepasst werden muss, wird die Zugriffszeit (Latenz) in die Höhe
getrieben. Das alles reduziert die maximale Speicherperformance. [vgl. CT03, CT06b, CT06c]
Beim K8 ist durch die direkte Anbindung an den jeweiligen Kern über den Cross Bar-Switch die
Latenz gering. Der Cross Bar sollte auch keinen Flaschenhals darstellen, da dieser, wie eigentlich
jeder Cross Bar Switch, laut AMD nicht blockierend arbeitet. Ein Cross Bar-Switch schaltet die
Kommunikations-Partner mit voller Bandbreite zusammen und ermöglicht in den meisten Fällen die
gleichzeitige Zusammenschaltung mehrerer unabhängiger Komponenten. Die dadurch entstehende
Steigerung der Speicherperformance stellt größten Vorteil und daher den Hauptgrund für den Einsatz
des internen Speichercontrollers dar.
Einen weiteren Vorteil bietet der interne Speichercontroller des K8 bei Systemen mit mehreren
Prozessoren auf einem Mainboard. Theoretisch addiert sich die Speicherperformance der einzelnen
Speichercontroller hier. In den nachfolgenden Beschreibungen wird beispielhaft von zwei Prozessoren
(zwei Sockel) auf einem Mainboard ausgegangen. In diesem Fall sind durch die in jedem Prozessor
vorhandenen Speichercontroller zwei Speicheroperationen gleichzeitig möglich. Im Idealfall wird
dadurch der Speicherdurchsatz verdoppelt. Voraussetzung ist aber, dass beide Controller mit Speicher
ausgestattet sind und ein Betriebssystem das ccNUMA (Cache Coherent Non Unified Memory
Access) unterstützt. Das Betriebssystem muss unter anderem die Verwaltung des physikalischen
Speichers auf die beiden Controller verteilen (ein gemeinsamer Adressraum). Außerdem muss das
Betriebssystem dafür sorgen, dass die Daten eines Programms auch im Speicher des Prozessors liegen,
auf dessen Kern es gerade ausgeführt wird. Ansonsten müssen die Daten erst über den kohärenten
HyperTransport-Link zwischen den Prozessoren ausgetauscht werden. Bei verteilten Daten zwischen
den Prozessoren ist zusätzlich auf (Cache-) Kohärenz zu achten.
[vgl. AMD06, AMD05 S.96ff, AMD07c S.179ff]
Beim Intel Core müssen sich alle Prozessoren auf einem Mainboard den zentralen Speichercontroller
im Chipsatz teilen. Bei geteilten Daten zwischen den Prozessoren ist hier das Kohärenz-Protokoll über
den langsamen und schon belasteten FSB abzuwickeln. Dieses führt bei Core-Multiprozessorsystemen
eher zu einem Einbruch der Speicherperformance. Intel versucht den Performance-Verlust bei ihren
Server-Chipsätzen z.B. mit Vierkanal-Speichercontrollern, die die Speicheroperationen flexibel
aufteilen können, zu beheben. Mit dem neuen Clarksboro-Chipsatz zeigt Intel ein Vorteil eines
zentralen Speichercontrollers auf. Dieser erledigt einen Großteil der Zeit- und Energie-aufwendigen
Snooping-Aufgabe der Prozessoren, indem er einen Snoop-Filter-Cache einsetzt. Unter Snooping
versteht man, dass Prozessoren am Bus auf Änderungen eigener Cachelines lauschen, um ihre Caches
kohärent zu halten. [vgl. CT07c]
Bei der K8 Architektur müssen DMA (Direct Memory Access) Zugriffe von anderen Komponenten
im PC auf den Speicher über den Chipsatz mittels HyperTransport-Link zum internen Speichercontroller geleitet werden. Dieses stellt insofern einen kleinen Nachteil da, als sich hierdurch der
Übertragungsweg verlängert und der Prozessor indirekt an den Zugriffen beteiligt ist.
Der externe Speichercontroller der Core Architektur hingegen kann DMA Zugriffe selbständig
erledigen, ohne den FSB und Prozessor damit zu belasten. Im Falle vieler DMA Zugriffe zeigt sich ein
kleiner Vorteil für eine leichte Überdimensionierung der Speicherbandbreite im Gegensatz zu der
FSB-Bandbreite (siehe Abschnitt 3.3).
Bartels, Dinter, Lange
Seite 17 von 43
AMD vs. Intel
WS 2007/ 08
Einen weiterer Nachteil ist, dass sich der internen Speichercontroller des K8s nur durch Überarbeiten
des Prozessors an neue Speicher-Technologien anpassen lässt. Auch wenn für ein Update, z.B. auf
DDR3-Speicher, nur der Speichercontroller überarbeitet werden müsste, wäre es auch nötig, die
Produktion des Prozessors zu überarbeiten und neu aufzulegen. Daher ist eine Aktualisierung nur bei
größeren Architektur-Refreshs wirtschaftlich; das ist aus Sicht des Marketings nachteilhaft. Der
aktuelle K8 kann die Bandbreite von DDR2-Speicher nicht einmal vollständig nutzen, da beim
Refresh von DDR1 zu 2 nicht alle internen Bandbreiten- und Buffer-Mängel beseitigt worden sind.
Diese wurden erst mit dem K10 erledigt.
Intel hingegen kann bei unveränderter Prozessorproduktion die Chipsätze und damit den Speichercontroller aktualisieren, wie zum Beispiel die gerade vollzogene Aktualisierung auf die Intel 3er Serie.
Daher können die Intel Core Prozessoren bereits jetzt mit DDR3 Speicher betrieben werden, auch
wenn eine Aktualisierung nicht immer Sinn ergibt (siehe Abschnitt 3.3).
Der größte Nachteil des K8s sind die höheren Entwicklungs- und Produktions-Kosten des internen
Speichercontrollers. Die Entwicklungs-Kosten erhöhen sich durch die Entwicklung des Speichercontrollers und den dadurch komplexer werdenden Prozessor. Da der Controller im Prozessor Platz
benötigt, wird das Die der zu produzierende Prozessoren größer und damit in der Produktion teurer.
Der Sockel wird ebenfalls in der Produktion teurer, da er durch die hinzukommenden Daten-, Adressund Steuer-Leitungen ebenfalls größer und komplexer wird.
Das Gegenteil ist beim Core der Fall. Dort fallen keine Zusatzkosten bei der Prozessor-Produktion für
den Speichercontroller an. Dafür ist natürlich der Chipsatz aufwendiger und teurer.
Bartels, Dinter, Lange
Seite 18 von 43
AMD vs. Intel
WS 2007/ 08
4.
Cache und TLBs
4.1.
Level 2 Cache
Es folgt eine Vergleichs-Tabelle und Erklärung, zu den wichtigsten Level 2 Cache Eckdaten, der K8
Architektur in neuester Ausführung mit zwei Kernen und der Core Architektur.
Tabelle 2: Eckdaten, L2 Cache
Größe:
Organisation:
Busbreite:
(zum L1)
Latenz:
(Zugriff)
AMD K8 (Athlon 64 X2)
2 x 1048 KB, split cache
Intel Core (Core 2 Duo)
1 x 4096 KB, shared cache
16-fach assoziativ, 64 Byte cache lines,
write back, exclusive
128 Bit
16-fach assoziativ, 64 Byte cache lines,
write back, non-inclusive
256 Bit
12 Takte
(laut Messung [CT07c] 12…13 Takte)
14 Takte
(laut Messung [CT07c] 14 Takte)
Der K8 verfügt in der neuesten Version über ein 1 MByte Level 2 Cache pro Kern. Dieser wird auch
als Split Cache bezeichnet. Die beiden Kerne des Cores hingegen teilen sich einen L2 Cache von 4
MByte (Shared Cache). Die Organisation ist in dieser Konstellation fast identisch. Beide sind 16-fach
assoziativ mit 64 Byte Cache Lines organisiert und arbeiten mit einer write back Schreibstrategie. Der
einzige Unterschied besteht darin, dass der K8 L2 Cache exklusiv arbeitet. Das bedeutet, dass die
Daten, die im Level 2 Cache stehen, nicht im Level 1 Cache stehen. Dadurch addieren sich die Level 1
und Level 2 Cache Größen, was zu einer höheren Gesamt-Cache-Größe führt. Ausnahmen gibt es
allerdings z.B. können beim Rückschreiben von Daten diese doppelt im Cache vorhanden sein.
Beim Core hingegen bezeichnet Intel die Organisation als nicht-inklusiv, was allerdings nicht
automatisch exklusiv bedeutet. Hierzu gibt es allerdings keine näheren Ausführungen seitens Intel. Es
handelt sich aufgrund des Shared Cache wahrscheinlich um eine Mischform zwischen inklusiv und
exklusiv.
Zum Auflösen möglicher Cache-Kohärenzen verwendet der AMD K8 das MOESI (modified, owned,
exclusive, shared, invalid) Protokoll, der Intel Core das MESI (modified, exclusive, shared, invalid)
Protokoll. [vgl. AMD07, INT07e]
Die Anbindung an den Level 1 Cache ist beim K8 mit 128 Bit nur halb so breit wie beim Core.
[vgl. AMD07b, AMD05 S.268ff, AMD07c S.235ff, INT07c S.39ff, INT07e S.447ff]
4.1.1. Gegenüberstellung Level 2 Cache
Da beim K8 jeder Kern seinen eigenen L2 Cache hat, kommen sich die Kerne bei L2 Cache-Zugriffen
nicht in die Quere. Daraus resultiert eine kürzere Zugriffszeit, allerdings nur solange die Daten beider
Prozessor-Kerne von einander unabhängig sind. Andernfalls müssen die Kerne die Daten in ihren
jeweiligen L2 Caches über ein aufwendiges Cache-Kohärenz-Protokoll abgleichen. Der Abgleich der
Daten kann zumindest über den schnellen Cross-Bar-Switch erfolgen.
Die zentrale L2 Cache-Verwaltung des Cores muss die Zugriffe beider Kerne auf den Shared Cache
serialisieren, wodurch sich die Zugriffszeit verlängert. Durch die zentrale Verwaltung entfällt die
Notwendigkeit für ein aufwendiges Cache-Kohärenz-Protokoll. Der größte Vorteil des Shared Cache
Bartels, Dinter, Lange
Seite 19 von 43
AMD vs. Intel
WS 2007/ 08
ist die dynamische und flexible Aufteilung des Caches auf die beiden Kerne. Dieses wirkt sich
besonders bei Single-Thread-Anwendungen aus, denn hier kann sich ein Kern schlafen legen, während
der Andere für die Aufgabe den gesamten L2 Cache nutzen kann.
Dieser Vorteil birgt aber auch einen Nachteil. Bei Multi-Thread-Anwendungen können die ProzessorKerne ihre Daten gegenseitig aus dem Cache verdrängen. Das schlägt sich in einer höheren CacheMiss-Rate nieder und drückt die Performance des Gesamtsystems.
Der K8 mit zwei Kernen hat im Vergleich zum Core nur 2 MByte L2 Cache. Durch den schnellen,
integrierten Speichercontroller muss der K8 mit seinem L2 Cache nicht so dringend die langsamen
Speicher-Zugriffe abfangen. Trotzdem würde ein größerer Cache der K8-Preformance bestimmt nicht
schaden. Da ein Level 2 Cache heutzutage über 50 Prozent der Chipfläche einnimmt, kann sich AMD,
vermutlich aufgrund mangelnder Produktionskapazität, keinen größeren Cache leisten. Das zeigt sich
auch beim neuen K10, der zwar einen Level 3 „Shared“ Cache von 2 MByte besitzt, die L2 Caches der
vier Kerne wurden aber auf 512 KByte pro Kern verkleinert.
Der Core hingegen muss mit seinem doppelt so großen L2 Cache die langen Zugriffzeiten auf den
Speicher ausgleichen, um die Kerne auslasten zu können. Wie es aussieht kann Intel sich einen
großen, produktionstechnisch teureren Cache gegenüber AMD leisten, denn die neue Core-Generation
(Penrym) enthält sogar schon einen 6 MByte Level 2 Shared Cache (24-fach assoziativ).
4.2.
Level 1 Cache
Im Folgenden werden die Eigenschaften der Level 1 Cache der beiden Architekturen verglichen.
Tabelle 3: Eckdaten, L1 Cache
I-Cache:
D-Cache:
D-Cache-Latenz:
(Zugriff)
I-Bus-Breite:
(zum Kern)
D-Bus-Breite:
(zum Kern)
AMD K8 (Athlon 64 X2)
64 KByte, 2-fach assoziativ,
64 Byte cache lines
64 KByte, 2-fach assoziativ,
64 Byte cache lines, write back
3 Takte
(laut Messung [CT07c] 3 Takte)
128 Bit
Intel Core (Core 2 Duo)
32 KByte, 8-fach assoziativ,
64 Byte cache lines
32 KByte , 8-fach assoziativ,
64 Byte cache lines, write back
3 Takte
(laut Messung [CT07c] 3 Takte)
128 Bit
2 x 64 Bit
pro Richtung 128 Bit
Dem K8 stehen jeweils für Instruktionen und Daten ein doppelt so großer Level 1 Cache (je 64 KByte)
gegenüber dem Core zur Verfügung. Dafür ist der 32 KByte große L1 Daten Cache des Cores,
gegenüber dem K8, mit 128 Bit pro Richtung doppelt so breit an den Kern angebunden. Diesen
Bandbreitenmangel hat AMD mit dem K10 ausgemerzt und die zwei 64 Bit breiten Ports auf 128 Bit
verbreitert. [vgl. AMD07b, AMD05 S.268ff, AMD07c S.235ff, INT07c S.39ff, INT07e S.447ff]
Bartels, Dinter, Lange
Seite 20 von 43
AMD vs. Intel
4.3.
WS 2007/ 08
Translation Lookaside Buffers (TLBs)
Translation Lookaside Buffers (TLBs) werden dazu eingesetzt, die Übersetzung von virtuellen zu
physikalischen Adressen zu cachen und dadurch zu beschleunigen. Beide hier behandelten
Architekturen verwenden eine zweistufige TLB-Hierarchie, um die Vorteile eines kleinen, schnellen
Cache und eines großen langsamen Cache zu kombinieren.
Der vom TLB adressierbare Speicher hängt sowohl von der Anzahl der TLB-Einträge, als auch von
der verwendeten Seitengröße ab. Bei großen Seiten werden weniger TLB-Einträge benötigt, um
denselben Speicher adressieren zu können als mit kleinen Seiten. Dadurch können bei großen
Speicherseiten die Anzahl der TLB-Einträge reduziert werden, um die Verwaltung und den Zugriff auf
den TLB zu beschleunigen.
Die TLB-Einträge der unterschiedlich großen Speicherseiten können sowohl in einer einzigen, als
auch in verschiedenen Tabellen gespeichert werden. Die von den Architekturen verwendete
Technologie konnte nicht zuverlässig bestimmt werden, da die einzelnen Quellen keine eindeutige
Aussage trafen.
[vgl. AMD07b, AMD05 S.268ff, AMD07c S.235ff, INT07c S.39ff, INT07e S.447ff, INT07b]
Es folgen Tabellen und Erklärungen zu den TLB-Eckdaten der jeweiligen Architekturen.
Tabelle 4: Eckdaten, TLB, AMD K8
AMD K8 (Athlon 64 X2)
L2 Cache
Stufe
L1 Cache
I-TLB Einträge
32 (4 KByte Seiten),
8 (2 MByte Seiten), voll assoziativ
32 (4 KByte Seiten),
8 (2 MByte Seiten), voll assoziativ
D-TLB Einträge
512 (4 KByte Seiten), 4-fach assoziativ
512 (4 KByte Seiten), 4-fach assoziativ
Beim AMD K8 sind die zwei Stufen jeweils an den Cache-Level Eins und Zwei gebunden. 4 MByte
Seiten brauchen in der Level 1 TLB-Stufe zwei Einträge der acht 2 MByte Seiten. AMD hat beim K10
unter anderem in der Level 1 Stufe die 2 MByte Instruktionen-Seiten-Einträge auf 16 verdoppelt und
die Daten-TLB-Einträge von 32 auf 48 erhöht. [vgl. AMD07b, AMD05 S.268ff, AMD07c S.235ff]
Tabelle 5: Eckdaten, TLB, Intel Core
Intel Core (Core 2 Duo)
TLB 1
Stufe
TLB 0
I-TLB Einträge
128 (4 KByte Seiten),
4 (large pages), 4-fach assoziativ
16 (4 KByte Seiten),
256 (4 KByte Seiten),
16 (large pages), 4-fach assoziativ
32 (large pages), 4-fach assoziativ
D-TLB Einträge
Der Intel Core besitzt keinen zweistufigen Instruktions-TLB. Auch sind die Stufen des Daten-TLBs
nicht wie beim AMD K8 an den Cache-Level gebunden. Es gibt im Gegensatz zum K8 erheblich
weniger TLB-Einträge. [vgl. INT07c S.39ff, INT07e S.447ff, INT07b]
Bartels, Dinter, Lange
Seite 21 von 43
AMD vs. Intel
5.
WS 2007/ 08
Prefetching
Traditionell implementierte Cache-Steuerungen laden Daten erst dann aus einer nächst tieferen
Speicher-Hierarchie-Stufe, wenn diese von einer höheren Stufe angefordert wurden und die Daten
nicht bereits im Cache liegen (Cache miss).
Um das zeitraubende Nachladen der Daten bei einem Cache-Miss zu minimieren, werden Prefetcher
eingesetzt. Es gibt dabei sowohl Software- als auch Hardware-Prefetcher. Die nachfolgenden
Beschreibungen beschränken sich auf die Hardware-Prefetcher, diese ergänzen entweder die CacheSteuerung oder sind als eigenständige Einheiten implementiert. Ihre Arbeitsweise ist ähnlich der
Arbeitsweise von Sprungvorhersage-Einheiten. Sie führen Statistiken über die Hit- und Miss-Raten
der letzten Zugriffe und deren Adressen, um daraus Zugriffsmuster zu erkennen. Wurden bestimmte
Zugriffsmuster erkannt, laden die Prefetcher bereits Daten in den Cache, die vermutlich in nächster
Zeit benötigt werden (z.B. Zugriffe auf Arrays). [vlg. CT06c, INT06, RWT07, RWT07b]
Beim Prefetching von Daten kann es allerdings vorkommen, dass Daten geladen werden, die nicht
benötigt werden. Um die geladenen Daten zu speichern, müssen andere Daten aus dem Cache
verdrängt werden. Dadurch kann es vorkommen, dass die Prefetcher kontraproduktiv arbeiten und die
Performance senken. Um die Effizienz der Hardware-Prefetcher zu steigern, können die meisten
Prefetcher in den hier behandelten Architekturen per Software beeinflusst werden. Außerdem sollten
sie nur aktiviert werden, wenn die benötigten Speicher und Lade-Einheiten sowie Busse gering bis
nicht belastet werden. Die meisten im nachfolgenden behandelten Prefetcher arbeiten nur mit 4 KByte
Seiten performance steigernd. [vlg. CT06c, INT06b, RWT07, RWT07b]
5.1.
AMD K8 (Athlon 64 X2)
Der AMD K8 verfügt in der Dual-Core-Version über drei Prefetcher-Einheiten.
Zum Einen steht ein einfacher L1 Instruktion Prefetcher zu Verfügung. Dieser lädt jeweils die nächste
auszuführende Instruktion vor. Dazu ist der L1 Instruktion Prefetcher mit der Sprungvorhersage verbunden. So ist es möglich, dass jeweils die beiden nächsten möglichen Anweisungen bei einer
Sprunganweisung geladen werden können. [vgl. AMD05]
Von der nächsten Prefetcher-Einheit stehen jedem Kern jeweils eine zur Verfügung. Hierbei handelt es
sich um einen einfachen L2 Adjacent Cacheline Prefetcher (Streaming Prefetcher). Dieser erkennt
wenn auf nebeneinander liegende Speicherplätze zugegriffen wird und lädt automatisch die
nachfolgenden Speicherplätze in den L2 Cache. Das funktioniert beim K8 aber nur, wenn keine
Cacheline ausgelassen wird. [vgl. AMD05]
AMD hat dem K10 weitere Prefetcher zur Verfügung gestellt, zum Beispiel dem Level 1 Daten Cache.
[vgl. AMD07c]
Bartels, Dinter, Lange
Seite 22 von 43
AMD vs. Intel
5.2.
WS 2007/ 08
Intel Core (Core 2 Duo)
Die Core Architektur verfügt über acht auf beide Kerne verteilte Prefetcher-Einheiten.
Jeder Kern hat wie beim K8 einen einfachen L1 Instruktion Prefetcher. Dieser lädt jeweils die nächste
auszuführende Instruktion vor. Dazu ist der L1 Instruktion Prefetcher mit der Sprungvorhersage verbunden. So ist es möglich, dass jeweils die beiden nächsten möglichen Anweisungen bei einer
Sprunganweisung geladen werden können. [vgl. INT07c]
Hinzu kommen zwei Level 1 Daten Prefetcher pro Kern. Den einen bezeichnet Intel als Data Cache
Unit (DCU) Prefetcher. Dies ist ein einfacher Streaming Prefetcher, der Zugriffe auf direkt
nebeneinander liegender Cachelines erkennt und die nachfolgenden Daten lädt. Das Prefetching wird
dabei fortgesetzt, bis die zuletzt vorgeladene Cacheline nicht mehr angefordert wird.
Der zweite Prefetcher wird als Instruction Pointer-Based (IP) Prefetcher bezeichnet. Dieser versucht,
anhand der Instruktionen wiederkehrende Ladeoperationen zu erkennen, die eine bestimmte
Speicherabschnitt überschreiten. Die letzen Adressen von Ladeoperationen und deren Schrittweite
werden dafür in einer History Table gespeichert. Wäre die Fensterbreite klein genug, könnte das
Prefetching vom Streaming Prefetcher übernommen werden. Ist dies nicht der Fall, springt der IP
Prefetcher ein. Dadurch ist es möglich, z.B. bei Matrix Operationen die Zeileniterationen über den
Streaming Prefetcher, die Spalteniterationen über den IP Prefetcher zu beschleunigen. [vgl. INT06b]
Der gemeinsame Level 2 Cache hat zwei weitere Prefetcher. Der eine wird von Intel als Data Prefetch
Logic (DPL) bezeichnet und ist ein etwas aufwendigerer Streaming Prefetcher für Daten. Der DPL
kann in zwei getrennten Tabellen 12 Upstreams und vier Downstreams verwalten und beobachten. Die
Erkennung von Streams funktioniert auch bei etwas komplexeren Strukturen, zum Beispiel wenn
Cachelines übersprungen werden. Steuern lässt sich der DPL unter anderem durch SoftwarePrefetcher-Befehle und Anfragen von der DCU.
Den zweite L2 Cache Prefetcher bezeichnet Intel als Streamer. Er ist darauf ausgelegt, Daten- oder
Befehls-Blöcke doppelter Cacheline-Größe (128 Byte) zu erkennen und zu laden. Beide L2 Prefetcher
beobachten die Busauslastung, um keine anderen wichtigere Transfers auszubremsen. [vgl. INT07c]
Bartels, Dinter, Lange
Seite 23 von 43
AMD vs. Intel
6.
WS 2007/ 08
Benchmarks
Im Folgenden werden die beiden Architekturen anhand einiger Benchmark-Ergebnisse verglichen. Bei
der Auswahl der beiden CPU-Modelle wurde darauf geachtet, dass diese überhaupt vergleichbar sind.
Dazu wurde besonders auf die folgenden Kriterien geachtet.


Die beiden CPUs sollten nach Möglichkeit zum gleichen Preis zu bekommen sein.
Die für die Messungen verwendeten PC-Systeme sollten nach Möglichkeit identisch
konfiguriert sein.
Die Auswahl fiel auf die beiden folgenden CPU-Modelle:
Tabelle 6: CPU Modelle für die Benchmarks
Takt:
L1 Cache:
L2 Cache:
Arbeitsspeicher:
Strukturbreite:
Straßenpreis:
AMD Athlon 64 X2 6000+
„Windsor“
2 x 3.00 GHz
2 x 128 KB
2 x 1024 KB
DDR2-800
90 nm
ca. 140 €
Intel Core 2 Duo E6400
„Allendale“
2 x 2.13 GHz
64 KB
2048 KB
DDR2-800
65 nm
ca. 140 €
Obwohl beiden Modelle ungefähr zum selben Preis erhältlich sind, handelt es sich beim Athlon 64 X2
6000+ bereits um das Topmodell von AMD für den Desktop-Bereich. [vgl. TC07]
Während dessen handelt es sich beim Core 2 Duo E6400 um ein Mainstream-Modell von Intel. Diese
Variante ist wahrscheinlich in einigen Wochen nicht mehr erhältlich. Außerdem handelt es sich beim
Core 2 Duo E6400 nicht um einen vollwertigen Vertreter der Core Architektur mit Codenamen
„Conroe“ sondern um eine Version mit reduzierten L2-Cache und einem langsameren FSB (Front Side
Bus) mit Codenamen „Allendale“.
Die Auswahl der Benchmark-Programme fiel auf die Folgenden:






SPEC CPU 2000
Sciencemark
SunGard ACR
Rendering: 3ds max 8
BAPCo Sysmark 2004 SE
Energieverbrauch
Die Benchmarks wurden unter Windows XP Professional SP 2 durchgeführt. Die Intel Core 2 Duo
CPU wurde in einem Intel-Desktop-Board D975XBX Mainboard mit Intel 975X Chipsatz, die AMD
CPU in einem Asus M2N32-SLI Deluxe Mainboard mit NVidia nForce-590-SLI Chipsatz getestet.
Um gleiche Testbedingungen zu gewährleisten, wurden alle Testsysteme mit 1 GByte DualChannelDDR2-800 Speicher bestückt. Einheitlichkeit herrschte ebenfalls bei der Grafikkarte, einer ATI
Radeon X1900XTX in der PCI-Express-x16 Variante, 512 MByte Grafikspeicher, dem CatalystTreiber 6.4 sowie DirectX 9.0c, und der Festplatte, der Serial-ATA-II Festplatte Maxtor MaxLine III
mit 250 GByte Kapazität. [vgl. TC07]
Bartels, Dinter, Lange
Seite 24 von 43
AMD vs. Intel
WS 2007/ 08
Die verwendeten Benchmarks sind dafür ausgelegt immer ein bestimmtes Leistungsgebiet der CPU
oder des Testsystems zu messen. So ist beispielsweise der SPECfp aus der SPEC CPU 2000
Benchmarks-Suite auf das Messen der Gleitpunkt-Leistung ausgelegt. Durch die Programmstruktur
der Benchmarks fallen aber auch immer wieder, das Messergebnis störende, Instruktionen an. Dies
sind zum Beispiel Load/Store-Operationen, die zum Laden der Instruktionen oder der zu
Verarbeitenden Daten benötigt werden. Diese Operationen beeinflussen das Benchmark-Ergebnis.
Die genaue Verteilung der Integer-, Gleitpunkt- oder Load/Store-Operationen innerhalb der
Benchmarks lässt sich nicht genau bestimmen, da hierüber keine Statistiken veröffentlicht wurden.
6.1.
CPU-Performance: SPEC CPU 2000
Der SPEC CPU 2000 Benchmark misst die Leistung des Prozessors, der Speicherhierarchie und des
Compilers eines Computersystems. CPU 2000 benutzt dazu die CINT2000 Tests bestehend aus 12 C
und C++ Programmen, um die Festkommaeinheit zu messen, und die CFP2000 Tests bestehend aus 17
C, C++ und FORTRAN Programme, um die Gleitkommaeinheit zu messen. [vgl. SP07]
SPEC CPU 2000 wurde von der Open Systems Group (OSG) der SPEC (Standard Performance
Evaluation Corporation) entwickelt. Ziel der SPEC ist die Entwicklung von Benchmarks, um
vergleichbare Messungen von Computersystemleistungen mit einem gut bekannten, rechenintensiven
Workload durchzuführen. Um die Benchmarks auf verschiedenen Plattformen durchführen zu können,
wird der Benchmark als Quellcode kostenpflichtig von der SPEC zur Verfügung gestellt. [vgl. SP07]
Obwohl das Benchmark Programm oft nur als Prozessorbenchmark bezeichnet wird, misst es
eigentlich den Prozessor, die Speicherhierarchie und den Compiler eines Computersystems. Der
Benchmark wurde nicht entwickelt, um andere Komponenten, wie zum Beispiel Grafik, Netzwerk
oder I/O, zu testen. Um diese Komponenten zu testen, stehen anderen SPEC Benchmarks zur
Verfügung.
Nachdem die Messungen durchgeführt wurden, wird ein Quotient aus der Laufzeit des Programms auf
dem zu testenden System und einer, von der SPEC ermittelten Referenzzeit gebildet. Aus diesen
Quotienten werden die folgenden Kennzahlen berechnet. [vgl. SP07]
CINT2000 (zum Messen der Integer-Performance) [vgl. SP07]
SPECint2000
SPECint_base2000
SPECint_rate2000
Bartels, Dinter, Lange
Das geometrische Mittel von zwölf normalisierten Quotienten –
einen für jeden Integer-Benchmark. Die Compiler-Einstellungen
zum Kompilieren der Benchmarks können bei dieser Kennzahl
beliebig optimiert werden. Zum Messen der Laufzeit der
Programme wird jeweils nur eine Programminstanz gestartet.
Das geometrische Mittel von zwölf normalisierten Quotienten –
einen für jeden Integer-Benchmark. Zum Kompilieren der
Benchmarks müssen bei dieser Kennzahl dieselben, von der SPEC
vorgegebenen Einstellungen verwendet werden. Zum Messen der
Laufzeit der Programme wird jeweils nur eine Instanz gestartet.
Das geometrische Mittel von zwölf normalisierten Quotienten –
einen für jeden Integer-Benchmark. Die Compiler-Einstellungen
zum Kompilieren der Benchmarks können bei dieser Kennzahl
beliebig optimiert werden. Zum Messen der Laufzeit der
Programme werden mehrere Instanzen gleichzeitig gestartet.
Seite 25 von 43
AMD vs. Intel
SPECint_rate_base2000
WS 2007/ 08
Das geometrische Mittel von zwölf normalisierten Quotienten –
einen für jeden Integer-Benchmark. Zum Kompilieren der
Benchmarks müssen bei dieser Kennzahl dieselben, von der SPEC
vorgegebenen Einstellungen verwendet werden. Zum Messen der
Laufzeit der Programme werden mehrere Instanzen gleichzeitig
gestartet.
CFP2000 (zum Messen der Gleichkomma-Performance) [vgl. SP07]
SPECfp2000
SPECfp_base2000
SPECfp_rate2000
SPECfp_rate_base2000
Das geometrische Mittel von 17 normalisierten Quotienten – einen
für jeden Gleitkomma-Benchmark. Die Compiler-Einstellungen
zum Kompilieren der Benchmarks können bei dieser Kennzahl
beliebig optimiert werden. Zum Messen der Laufzeit der
Programme wird jeweils nur eine Programminstanz gestartet.
Das geometrische Mittel von 17 normalisierten Quotienten – einen
für jeden Gleitkomma-Benchmark. Zum Kompilieren der
Benchmarks müssen bei dieser Kennzahl dieselben, von der SPEC
vorgegebenen Einstellungen verwendet werden. Zum Messen der
Laufzeit der Programme wird jeweils nur eine Instanz gestartet.
Das geometrische Mittel von 17 normalisierten Quotienten – einen
für jeden Gleitkomma-Benchmark. Die Compiler-Einstellungen
zum Kompilieren der Benchmarks können bei dieser Kennzahl
beliebig optimiert werden. Zum Messen der Laufzeit der
Programme werden mehrere Instanzen gleichzeitig gestartet.
Das geometrische Mittel von 17 normalisierten Quotienten – einen
für jeden Gleitkomma-Benchmark. Zum Kompilieren der
Benchmarks müssen bei dieser Kennzahl dieselben, von der SPEC
vorgegebenen Einstellungen verwendet werden. Zum Messen der
Laufzeit der Programme werden mehrere Instanzen gleichzeitig
gestartet.
Welche dieser Kennzahlen für den Vergleich zweier Computersysteme genutzt werden sollten, hängt
von den jeweiligen Anforderungen ab. Ein Benutzer, der lediglich ein Programm mit intensiven
Integer-Berechnungen ausführt, wäre wahrscheinlich eher an den SPECint2000 oder
SPECint_base2000 Werten interessiert. Auf der anderen Seite wären Benutzer, die auf einem System
gleichzeitig, verschiedene, mathematische Berechnungen ausführen möchte, wahrscheinlich eher an
den SPECfp_rate2000 oder SPECfp_rate_base2000 Kennzahlen interessiert. [vgl. SP07]
Die Ergebnisse der SPEC Benchmarks für diesen Vergleich zweier CPUs von AMD und Intel werden
in den folgenden Abbildungen dargestellt. Für die Messungen der Intel-CPU wurde der Benchmark
mit dem Intel C++ 9.1 oder dem Intel Fortran 9.1 Kompiler kompiliert, bei der AMD-CPU wurde der
PGI-6.0 Kompiler verwendet. [vgl. TC07]
Bartels, Dinter, Lange
Seite 26 von 43
AMD vs. Intel
WS 2007/ 08
Das erste Diagramm zeigt die Ergebnisse der Integer-Performance, single-threaded.
SPECint_base2000 [Punkte], Win XP SP2
AMD Athlon 64 X2 6000+
1 GB, Dual DDR2-800
1895
Intel Core 2 Duo E6400
1 GB, Dual DDR2-800
2169
0
500
1000
1500
2000
Abbildung 7: Ergebnisse, SPECint_base2000
Bei der Integer-Performance erzielt der Intel Core 2 Duo E6400 mit 2169 im Vergleich zum AMD
Athlon 64 X2 6000+ mit 1895 eine um 14% bessere Leistung. Die hier ermittelten Werte gelten als
Indiz für die Integer Performance der Prozessoren. Im Bereich der Integer Performance deklassiert
Intel seit langem die Konkurrenz von AMD. Dieses Bild zeigt sich auch in diesem Vergleich.
Das nächste Diagramm zeigt die Ergebnisse der Integer-Performance, multi-threaded.
SPECint_rate_base2000 [Punkte], Win XP SP2
AMD Athlon 64 X2 6000+
1 GB, Dual DDR2-800
41,9
Intel Core 2 Duo E6400
1 GB, Dual DDR2-800
43,2
0
5
10
15
20
25
30
35
40
Abbildung 8: Ergebnisse, SPECint_rate_base2000
Auch in der multi-threaded Variante des SPECint Benchmarks liegt die Intel CPU vor dem Modell
von AMD. Allerdings kann AMD mit 41,9 zu 43,2 zur Intel CPU aufschließen und den Vorsprung auf
knapp 3% reduzieren.
In diesem Vergleich nutzt der SPECint Benchmark alle vorhandenen Prozessorkerne. Dies kommt der
AMD CPU zu Gute. Die K8 Architektur skaliert besser, und kann den zweiten Prozessorkern besser in
Leistung umsetzen. Aufgrund dessen kann der Vorsprung von 14% in der single-threaded Variante auf
lediglich 3% in der mutli-threaded Variante des SPECint Benchmarks reduziert werden.
Bartels, Dinter, Lange
Seite 27 von 43
AMD vs. Intel
WS 2007/ 08
Die nächten Ergebnisse befassen sich mit der Floating-Point-Performance. Das erste Diagramm stellt
die Ergebnisse des SPECfp Benchmark in der single-threaded Variante dar.
SPECfp_base2000 [Punkte], Win XP SP2
AMD Athlon 64 X2 6000+
1 GB, Dual DDR2-800
1800
Intel Core 2 Duo E6400
1 GB, Dual DDR2-800
2227
0
500
1000
1500
2000
Abbildung 9: Ergebnisse, SPECfp_base2000
Auch diesen Vergleich kann die Intel CPU mit einer um 24% besseren Leistung für sich entscheiden.
Vor Einführung der Core-Architektur im Juni 2006 erzielte AMD mit dem Athlon 64 gegen den Intel
Pentium 4 die deutlich besseren Ergebnisse im Bereich der Gleitkommaoperationen. Aufgrund dessen
hat Intel bei der Entwicklung der Core-Architektur besonderes Augenmerk auf die Gleitkommafähigkeiten gelegt. Dies ist Intel offensichtlich gut gelungen, so dass in diesem Vergleich der Intel
Core 2 Duo E6400 den Athlon 64 X2 6000+ übertrumpft.
Das nächste Diagramm zeigt die Ergebnisse des SPECfp Benchmark, multi-threaded.
SPECfp_rate_base2000 [Punkte], Win XP SP2
AMD Athlon 64 X2 6000+
1 GB, Dual DDR2-800
32,9
Intel Core 2 Duo E6400
1 GB, Dual DDR2-800
38,5
0
5
10
15
20
25
30
35
Abbildung 10: Ergebnisse, SPECfp_rate_base2000
Hier zeigt sich dasselbe Bild, das auch schon bei der Integer-Performance festgestellt werden konnte.
Der Athlon 64 X2 6000+ skaliert bei mehreren Prozessorkernen besser. Der Vorsprung kann von 24%
in der single-threaded Variante auf 17% in der multi-threaded Variante des SPECfp Benchmarks
reduziert werden. Um zur Intel CPU aufzuschließen, reicht dieses allerdings nicht aus.
6.2.
Speicher: Sciencemark
Beim Sciencemark handelt es sich um einen synthetischen Benchmark zum Messen der


Cache- / Speicher-Zugriffzeiten und der
Cache- / Speicher-Transferraten.
Bartels, Dinter, Lange
Seite 28 von 43
AMD vs. Intel
WS 2007/ 08
Über die Art der Messungen lassen sich bei diesem Benchmark keine genauen Aussagen treffen, da
hierrüber keine näheren Informationen veröffentlicht wurden. [vgl. ZD07, CB07]
Entwickelt wurde dieser Benchmark von den drei Herren



Alexander Goodrich, B.S. (Computer Science),
Tim Wilkens, B.S., M.S., Ph.D. (Physics) und
Sean Stanek, B.S. (Computer Science).
Dieser Benchmark wurde früher auf einer offiziellen Webseite zur Verfügung gestellt. Inzwischen
(Stand 2007) ist diese Webseite offline, der Benchmark ist allerdings noch über diverse
Downloadportale im Internet verfügbar (z.B. unter [WF08]).
Der Benchmark wurde auf die Messungen der Speichertransferrate beschränkt. Die Ergebnisse werden
in der folgenden Abbildung dargestellt. [vgl. ZD07, CB07]
Speichertransferrate [MByte/s], Win XP SP2
AMD Athlon 64 X2 6000+
2 GB, Dual DDR2-800
8028
Intel Core 2 Duo E6400
2 GB, Dual DDR2-800
5139
0
1000
2000
3000
4000
5000
6000
7000
8000
Abbildung 11: Ergebnisse, Sciencemark (Speichertransferrate)
Anders als der Athlon 64 X2 6000+, der über einen integrierten Speicher-Controller verfügt, muss die
Intel CPU beim Zugriff auf den Speicher den Umweg über die Northbridge gehen. Das macht sich
negativ bei der Speichertransferrate bemerkbar.
Die AMD CPU erreicht bei diesem Benchmark mit 8028 MByte/s im Vergleich zu den 5139 MByte/s
des Intel Core 2 Duo E6400 eine Mehrleistung von ca. 56%. Diese Mehrleistung kommt AMD
besonders bei Speicherintensiven Anwendungen zu Gute.
6.3.
Analyse: SunGard ACR
Adaptiv Credit Risk (ACR) ist ein von SunGard entwickeltes Analysetool für den Finanzbereich. Das
Programm versucht auf Basis einer modifizierten Monte-Carlo-Simulation den künftigen Wert einer
Anlage auf Basis vorhandener Marktdaten zu berechnen. Das Programm wird direkt vom Hersteller
vertrieben. [vgl. SG08, TC07]
SunGards Adaptiv Credit Risk wurde in C# für die Microsoft .NET Umgebung programmiert.
Spezielle Mathematik-Bibliotheken wie Intels Math Kernel Library (MKL) oder AMDs Core Math
Library (ACML) werden dabei nicht verwendet. Das Programm arbeitet multi-threaded und unterstützt
Multiprozessor-Systeme optimal. SunGards ACR rechnet dabei überwiegen mit Integer-Operationen.
Die Speicherzugriffe halten sich bei Adaptiv Credit Risk in Grenzen. [vgl. SG08, TC07]
Bartels, Dinter, Lange
Seite 29 von 43
AMD vs. Intel
WS 2007/ 08
Beim Benchmark wird die Berechnungszeit für ein vorgegebenes Problem gemessen. Die Ergebnisse
für diesen Vergleich werden im folgenden Diagramm dargestellt. [vgl. TC07]
Calculation Time [sek.], Win XP SP2
AMD Athlon 64 X2 6000+
1 GB, Dual DDR2-800
1012
Intel Core 2 Duo E6400
1 GB, Dual DDR2-800
1355
0
200
400
600
800
1000
1200
1400
Abbildung 12: Ergebnisse, SunGard ACR (Calculation Time)
Diesen Vergleich kann der AMD Athlon 64 X2 6000+ mit einer Berechnungszeit von 1012 Sekunden
gegen den Intel Core 2 Duo E6400 mit einer Zeit von 1355 Sekunden klar für sich entscheiden.
AMD kann einen Vorsprung von ca. 25% herausholen, obwohl der Intel Core 2 Duo E6400 beim
Benchmark der Integer-Performance noch vor der CPU von AMD lag. Dies lässt sich auf mehrere
Faktoren zurückführen.


6.4.
Der Benchmark nutzt Multiprozessor-Systeme optimal aus. Wie bereits an den vorherigen
Ergebnissen zu erkennen war, skaliert die AMD CPU bei mehreren Kernen besser als die
Konkurrenz aus dem Intel-Lager.
Beim Zugriff auf die zur Berechnung notwendigen Marktdaten sind Speicherzugriffe
notwendig. Auch hier kann, wie bereits in vorherigen Benchmarks festgestellt werden konnte,
AMD eine bessere Leistung erzielen.
Rendering: 3ds Max 8
Autodesk bietet mit 3ds Max 8 eine umfassend anpassbare und skalierbare Lösung für 3D-Animation,
Modellierung und Rendering für Spiele, Film, Fernsehen und Entwurfsvisualisierung an. Diese
Software wird in diesem Vergleich für einen Rendering-Benchmark herangezogen.
Rendern bezeichnet den Rechenprozess, der für die zweidimensionale Darstellung eines 3D-Modells
oder einer 3D-Szene erforderlich ist. Dieser Prozess kann nach mehreren Berechnungsarten mit
unterschiedlichem Rechenaufwand und unterschiedlicher Qualität des Ergebnisses durchgeführt
werden. Dabei werden in ein vorhandenes 3D-Modell oder in einer vorhandene 3D-Szene diverse
Lichtquellen positioniert sowie Farben bzw. Texturen und jede Menge Effekte eingefügt.
Bei den Render-Vorgängen nutzt 3ds Max 8 Multiprocessing voll aus. Die Dual- und Quad-Coresowie Hyper-Threading-Technologien wirken somit beschleunigend. Die verwendeten Render-Szenen
basieren auf der Benchmark-Suite SPECapc for 3ds Max 7 von SPEC.org. Die GrafikkartenPerformance spielt beim Rendering keine Rolle. [vgl. TC07]
Bartels, Dinter, Lange
Seite 30 von 43
AMD vs. Intel
WS 2007/ 08
SPECapc (SPEC/GWPG's Application Performance Characterization Group) ist ein, der SPEC
zugeordnete, Arbeitsgruppe. Die SPECapc hat sich zum Ziel gemacht, standardisierte Benchmark zum
Ermitteln der Grafik- und Workstation-Performance zu erstellen. Dafür hat die SPECapc unter
Anderem einen Benchmark für 3ds max 8 erstellt, der in diesem Vergleich verwendet wird. Diese
Benchmark wird auf der Homepage der SPECapc zum Download zur Verfügung gestellt. [vgl. SP07b]
Die erste Abbildung zeigt die Benchmark-Ergebnisse beim Rendering der ersten Szene („Radiosity“)
mit 3ds Max 8. [vgl. TC07]
Szene 1, Rendering Time [sek.], ATI X1900XTX, 1280x1024x32, Win XP SP2
AMD Athlon 64 X2 6000+
1 GB, Dual DDR2-800
61
Intel Core 2 Duo E6400
1 GB, Dual DDR2-800
72
0
10
20
30
40
50
60
70
Abbildung 13: Ergebnisse, 3ds Max 8 ( Rendering Time, Szene 1 „Radiosity“)
Die zweite Abbildung zeigt die Benchmark-Ergebnisse beim Rendering der zweiten Szene
(„Underwater“) mit 3ds Max 8. [vgl. TC07]
Szene 2, Rendering Time [sek.], ATI X1900XTX, 1280x1024x32, Win XP SP2
AMD Athlon 64 X2 6000+
1 GB, Dual DDR2-800
100
Intel Core 2 Duo E6400
1 GB, Dual DDR2-800
128
0
20
40
60
80
100
120
Abbildung 14: Ergebnisse, 3ds Max 8 (Rendering Time, Szene 2 „Underwater“)
Beide Szenen rendert der AMD Athlon 64 X2 6000+ schneller als der Konkurrent von Intel. Bei der
ersten Szene benötigt der Intel Core 2 Duo E6400 11 Sekunden oder 18% länger, bei der zweiten
Szene 28 Sekunden oder 28%.
Der Vorsprung der AMD CPU lässt sich zum Einen an den besseren Multiprocessing-Fähigkeiten der
K8 Architektur festmachen. Diese skaliert, wie bereits in vorherigen Benchmarks festgestellt werden
konnte, besser bei der Nutzung mehrerer Kerne.
Zum Anderen kommt dem Athlon 64 X2 6000+ die bessere Speicheranbindung zu Gute. Eine gute
Speicheranbindung ist notwendig, um die zu rendernden 3D-Modelle, Texturen und weitere
Informationen zu laden. Durch die bessere Speicheranbindung kann der AMD Athlon 64 X2 6000+
seinen Vorsprung vor den Intel Core 2 Duo E6400 von 18% bei der ersten, kleineren Szene auf 28%
bei der zweiten, größeren Szene steigern.
Bartels, Dinter, Lange
Seite 31 von 43
AMD vs. Intel
6.5.
WS 2007/ 08
System-Performance: BAPCo Sysmark 2004 SE
Bei Sysmark 2004 SE handelt es sich um eine Benchmark-Suite, die aus diversen Einzelanwendungen
besteht, die zu zwei Obergruppen zusammengefasst wurden.
Zur Gruppe Internet Content Creation (ICC) gehören die Anwendungen:









Adobe After Effects 5.5
Adobe Photoshop 7.01
Adobe Premiere 6.5
Discreet/ Autodesk 3ds Max 5.1
Macromedia Dreamweaver MX
Macromedia Flash MX
Microsoft Windows Media Encode 9 Series
Network Associates McAfee Virus Scan 7.0
WinZip Computing WinZip 8.1
Zur Gruppe Office Productivity (OP) gehören die Anwendungen:










Adobe Acrobat 5.0.5
Microsoft Access 2002
Microsoft Excel 2002
Microsoft Internet Explorer 6
Microsoft Outlook 2002
Microsoft PowerPoint 2002
Microsoft Word 2002
Network Associates McAfee Virus Scan 7.0
ScanSoft Dragon NaturallySpeaking 6 Preferred
WinZip Computing WinZip 8.1
Der Benchmark wird direkt vom Hersteller über dessen Homepage vertrieben. [vgl. BAP08]
Das Ergebnis der Internet Content Creation und Office Productivity Benchmarks beruht wiederum aus
den unter drei verschiedenen Aspekten zusammengefassten Einzeltests. Beim Internet Content
Creation sind dies die drei Aspekte 3D Creation (3DC), 2D Creation (2DC) und Web Publishing
(WP), beim Office Productivity die drei Aspekte Communication (C), Document Creation (DC) und
Data Analysis (DA). [vgl. BAP05]
Das Sysmark 2004 Gesamtergebnis ist jeweils der gerundete Durchschnitt der Einzelergebnisse. Als
Basis-System dient ein 2,0 GHz Intel Pentium 4 mit Intel-i845-Chipsatz, 512 MB DDR266-Speicher
(CL2.5), Creative Labs Soundblaster Audigy PCI, ATI-Radeon 9700 Pro Grafikkarte mit 64 MB und
einer 80 GB IBM Festplatte. Dieses System erreicht eine Wertung von 100 Punkten. Erreicht ein
anderes System 200 Punkte im Sysmark 2004, so ist dieses doppelt so schnell wie das Basis-System.
[vgl. BAP05]
Bartels, Dinter, Lange
Seite 32 von 43
AMD vs. Intel
WS 2007/ 08
Die Ergebnisse der Gesamtwertung für diesen Vergleich werden im folgenden Diagramm dargestellt.
[vgl. TC07]
Gesamtwertung [Punkte], ATI X1900XTX, 1280x1024x32, Win XP SP2
AMD Athlon 64 X2 6000+
1 GB, Dual DDR2-800
290
Intel Core 2 Duo E6400
1 GB, Dual DDR2-800
289
0
50
100
150
200
250
300
Abbildung 15: Ergebnisse, BAPCo Sysmark 2004 SE (Gesamtwertung)
Bei der Gesamtwertung liegen beide Systeme ungefähr auf demselben Niveau. Die Intel CPU liegt
lediglich einen Punkt oder ungefähr 0,3 % hinter der Konkurrenz von AMD.
Beim Internet Content Creation Szenario wird eine produktbezogene Webseite für ein via Breit- und
Schmalband angebundenes Publikum erstellt. Dazu wird ein 3D-Modell in ein Bitmap gerendert.
Währenddessen wird mit einem Publishing Tool eine Webseite erstellt, der Benutzer öffnet eine
Videobearbeitungs-Software, erstellt ein Video aus mehreren Quellen, schneidet den Film und
zugehörige Audiosequenzen und startet den Export des Videos. Solange das Video exportiert wird,
wird das gerenderte Bitmap mit einem Bildbearbeitung-Programm geöffnet, bearbeitet und die
Änderungen werden gespeichert. Zurück in der 3D-Modelling-Software wird das 3D-Modell
modifiziert und als Vektorgrafik exportiert. Nachdem das Video exportiert wurde, wird dieses erneut
bearbeitet und mit Spezialeffekten versehen. Währenddessen werden Dateien aus einem Archiv
entpackt und eine Animation aus der vorher erstellten Vektorgrafik erstellt. Anschließend wird das
fertige, mit Spezialeffekten versehene Video komprimiert, finale Anpassungen an der Webseite
werden vorgenommen und das System wird nach Viren gescannt. Die Ergebnisse für diesen Vergleich
werden im folgenden Diagramm dargestellt. [vgl. BAP05, TC07]
Internet Content Creation [Punkte], ATI X1900XTX, 1280x1024x32, Win XP SP2
AMD Athlon 64 X2 6000+
1 GB, Dual DDR2-800
380
Intel Core 2 Duo E6400
1 GB, Dual DDR2-800
259
0
50
100
150
200
250
300
350
Abbildung 16: Ergebnisse, BAPCo Sysmark 2004 SE (Internet Content Creation)
Die Ergebnisse im Bereich Internet Content Creation wird besonders durch eine Erhöhung der
Taktfrequenz und durch eine bessere Speicherausstattung bzw. Speicheranbindung beeinflusst. In
beiden Bereichen kann der AMD Athlon 64 X2 6000+ Punkten. Dieser kann seine höhere
Taktfrequenz und seine bessere Speicheranbindung in ein besseres Ergebnis umsetzen. Die AMD CPU
erzielt im Vergleich mit dem Intel Core 2 Duo E6400 ein um 121 Punkte oder ca. 5% besseres
Ergebnis.
Bartels, Dinter, Lange
Seite 33 von 43
AMD vs. Intel
WS 2007/ 08
Im Office Productivity Szenario werden eine Marketing-Präsentation und verschiedene Dokumente für
ein neues Produkt erstellt. Dazu werden im ersten Schritt E-Mails empfangen, die eine Sammlung von
Dokumenten in einem Archiv enthalten. Die E-Mails werden betrachtet, der Kalender aktualisiert,
während das System nach Viren gescannt wird. Die Unternehmens-Webseite wird betrachtet und das
System beginnt mit dem Erstellen diverser Dokumente. Außerdem wird auf eine Datenbank
zugegriffen und einige Abfragen werden gesendet. Die erstellten Dokumente werden komprimiert, die
Abfrageergebnisse in einer Tabellenkalkulation importiert und ein Diagramm aus diesen Daten
generiert. Anschließend werden einige Elemente zu einer Präsentation hinzugefügt und bearbeitet.
Zum Abschluss wird die erstellte Präsentation und die erstellten Dokumente mit einem Webbrowser
betrachtet. Die Ergebnisse für diesen Vergleich werden im folgenden Diagramm dargestellt.
[vgl. BAP05, TC07]
Office Productivity [Punkte], ATI X1900XTX, 1280x1024x32, Win XP SP2
AMD Athlon 64 X2 6000+
1 GB, Dual DDR2-800
222
Intel Core 2 Duo E6400
1 GB, Dual DDR2-800
232
0
50
100
150
200
Abbildung 17: Ergebnisse, BAPCo Sysmark 2004 SE (Office Productivity)
Die beiden Punkte, die den Ausschlag beim Internet Content Creation gegeben haben, die höhere
Taktfrequenz und die bessere Speicheranbindung, wirken sich beim Office Productivity Ergebnis
weniger stark aus. Aufgrund dessen hat die reine CPU-Performance einen größeren Anteil am
Gesamtergebnis. In diesem Bereich konnte die Intel CPU bereits in vorherigen Benchmarks punkten.
Aufgrund dessen kann der Intel Core 2 Duo E6400 auch diesen Vergleich gegen die AMD CPU mit
10 Punkten oder ungefähr 5% mehr für sich entscheiden.
6.6.
Energieverbrauch
AMD und Intel spezifizieren den Energiebedarf ihrer Prozessoren mit der Thermal Design Power
(TDP). Dieser Wert gibt den theoretisch, maximalen Energiebedarf an – in der Praxis liegt dieser aber
selbst bei hoher Auslastung darunter. Die TDP-Werte sind allerdings für die Dimensionierung der
CPU-Kühler relevant. [vgl. HO08]
Interessanter ist allerdings der reale Energiebedarf des kompletten Systems (ohne Monitor). Die
verwendeten Testplattformen unterscheiden sich lediglich beim Mainboard und natürlich der CPU.
Alle anderen Komponenten, Grafikkarte, Netzteil, Festplatte, Soundkarte und die Speicherausstattung,
sind identisch. So lassen sich praxisnahe Aussagen über den tatsächlichen Energieverbrauch der
Systeme treffen. [vgl. HO08]
Bartels, Dinter, Lange
Seite 34 von 43
AMD vs. Intel
WS 2007/ 08
Die Verbrauchswerte des Gesamtsystems unter Volllast sind im folgenden Diagramm dargestellt.
[vgl. TC07]
Energieverbrauch (Gesamtsystem/ Volllast) [W], Win XP SP2
AMD Athlon 64 X2 6000+
1 GB, Dual DDR2-800
326
Intel Core 2 Duo E6400
1 GB, Dual DDR2-800
257
0
50
100
150
200
250
300
Abbildung 18: Ergebnisse, Energieverbrauch (Gesamtsystem, Volllast)
Im folgenden Diagramm wird der Energieverbrauch unter Windows im „Leerlauf“ ohne aktivierten
Energiesparmodus dargestellt.
Energieverbrauch (Gesamtsystem/ Leerlauf) [W], Win XP SP2
AMD Athlon 64 X2 6000+
1 GB, Dual DDR2-800
148
Intel Core 2 Duo E6400
1 GB, Dual DDR2-800
124
0
20
40
60
80
100
120
140
Abbildung 19: Ergebnisse, Energieverbrauch (Gesamtsystem, Leerlauf)
Den Vergleich des Energieverbrauchs kann der Intel Core 2 Duo E6400 klar für sich entscheiden.
Unter Volllast verbraucht das System mit dem AMD Athlon 64 X2 6000+ 69 Watt oder ungefähr
26%, im Leerlauf immerhin noch 24 W oder ungefähr 19% mehr.
Vor Einführung der Core-Architektur war der deutlich geringere Energieverbrauch des Athlon 64 im
Vergleich mit dem Pentium 4 eines der wichtigsten Verkaufsargumente von AMD. Zu dieser Zeit
lagen die Vorteile klar auf der Seite von AMD, deren Prozessoren teilweise dieselbe Leistung beim
halben Energieverbrauch erzielen könnten. Aufgrund dessen sah sich Intel gerade in diesem Bereich
zum handeln gezwungen. Dies ist ihnen bei der Entwicklung der Core-Architektur offenbar gut
gelungen, so dass der Intel Core 2 Duo E6400 diesen Vergleich für sich entscheiden kann.
6.7.
Ausblick in die Zukunft
Zum Abschluss der Betrachtungen soll noch ein Blick in die nahe Zukunft geworfen werden. AMD
bietet bereits die ersten Quad-Core-Opterons an. Dies sind die ersten Vertreter der neuen K10
Architektur. Ab Anfang 2008 wird Intel wahrscheinlich die ersten Prozessoren aus der 45nm
Fertigung ausliefern. Dieser Vergleich soll zeigen, wie sich die neue Architektur von AMD gegen die
verbesserten Intel CPUs der Core Architektur schlägt.
Bartels, Dinter, Lange
Seite 35 von 43
AMD vs. Intel
WS 2007/ 08
Die für diesen Vergleich genutzten CPU Modelle sind in der folgenden Tabelle aufgeführt.
Tabelle 7: CPU Modelle für den Ausblick in die Zukunft
Kerne:
Takt:
L1 Cache:
L2 Cache:
L3 Cache:
Arbeitsspeicher:
Strukturbreite:
AMD Opteron 2350 (SE)
„Barcelona“
4
4 x 2,0 GHz (4 x 2,5 GHz)
4 x 128 KB
4 x 512 KB
2 MB
16 GB
65 nm
Intel Xeon E5472
„Harpertown“
4
4 x 3,0 GHz
4 x 32 KB
2 x 6 MB
--16 GB
45 nm
Intel Xeon X5365
„Clovertown“
4
4 x 3,0 GHz
4 x 32 KB
2 x 4 MB
--16 GB
65 nm
Beim Opteron 2350 bzw. Opteron 2350 SE (Codename „Barcelona“) handelt es sich um zwei Modelle
der neuen K10 Architektur von AMD. Diese können von den bereits oben beschriebenen
Verbesserungen profitieren (siehe Abschnitt 2.2).
Der Intel Xeon E5472 (Codename „Harpertown“) gehört zur neuen Generation der Quad-Core-Xeons.
Diese entstehen bereits in der 45nm Fertigungstechnik. Durch die neue Fertigungstechnik kann Intel
mehr Transistoren auf kleineren Chips unterbringen und so die Fertigungskosten senken. Außerdem
werden dadurch auch schnellere und sparsamere Prozessoren ermöglicht. Intel ist hier also bestens für
den Preiskampf mit AMD gerüstet. Die weiteren Verbesserungen der neuen Core-Generation werden
bereits oben beschrieben (siehe Abschnitt 2.4). Die hier aufgeführten Messergebnisse stehen allerdings
unter Vorbehalt, da es sich bei der getesteten CPU um ein Vorserienmodell handelt.
[vgl. CT07, 3DC07]
Des Weiteren vergleichen wir die Ergebnisse des AMD Opteron 2350 (SE) mit dem Intel Xeon X5356
(Codename „Clovertown“). Dabei handel es sich um ein Quad-Core-Xeon der aktuellen Generation in
65nm. Dieses Modell dient zum Einen dem Vergleich der Opterons mit der aktuellen XeonGeneration, zum Anderen, um die Verbesserungen der neuen Xeon-Generation zu beurteilen.
[vgl. CT07]
Für den Vergleich der CPU-Performance wurde die SPEC CPU 2006 Benchmark-Suite verwendet.
Die ersten aufgeführten Ergebnisse zeigen die Integer-Performance, single-threaded [vgl. CT07]
SPEC CPU 2006, SPECint_base_2006 [Punkte], x64
2 x AMD Opteron 2350
SLES10, PGI7
10,2
2 x Intel Xeon X5365
RHEL5, INTC10
15,7
2 x Intel Xeon E5472
RHEL5, INTC10
16,9
0
5
10
15
Abbildung 20: Ergebnisse, SPECint_base_2006
Bartels, Dinter, Lange
Seite 36 von 43
AMD vs. Intel
WS 2007/ 08
Im Bereich der Integer-Performance, Einzelkern kommt der Vertreter der neuen K10 Architektur,
AMD Opteron 2350 nicht an die Leistung der beiden Konkurrenten von Intel heran. Sowohl die
aktuelle als auch die neue Generation der Xeon-CPUs liegen vor dem AMD Opteron 2350. Beim
aktuellen Intel Xeon X5365 beträgt der Vorsprung 5,5 Punkte oder ungefähr 54%, beim neuen Intel
Xeon E5472 sind dies 6,7 Punkte oder ungefähr 66%. Die Strukturverbesserungen für die neue XeonGeneration bescheren dieser einen Mehrleistung von 1,2 Punkten oder ungefähr 8%.
Die zweiten Ergebnisse zeigen die Floating-Point-Performance, single-threaded [vgl. CT07]
SPEC CPU 2006, SPECfp_base_2006 [Punkte], x64
2 x AMD Opteron 2350
SLES10, PGI7
11,6
2 x Intel Xeon X5365
RHEL5, INTC10
15,8
2 x Intel Xeon E5472
RHEL5, INTC10
16,9
0
5
10
15
Abbildung 21: Ergebnisse, SPECfp_base_2006
Im Bereich der Floating-Point-Performance, Einzelkern zeigt sich ein ähnliches Bild wie bei der
Integer-Performance. Auch hier reichen die Verbesserungen der neuen K10 Architektur nicht aus, um
an die Leistung der Xeon-CPUs heran zu kommen. Das alte Modell, der Intel Xeon E5365 erreicht
eine um 4,2 Punkte oder ungefähr 36% bessere Leistung, das neue Modell erreicht eine um 5,3 Punkte
oder ungefähr 46% bessere Leistung. Auch hier resultieren die Strukturverbesserungen der neuen
Xeon-Generation in einer Mehrleistung. Diese beträgt hier 1,1 Punkte oder ca. 7% mehr.
Die nächsten Ergebnisse zeigen die Integer-Performance, multi-threaded [vgl. CT07]
SPEC CPU 2006, SPECint_rate_base_2006 [Punkte], x64
2 x AMD Opteron 2350 SE
SLES10, PGI7
88,2
2 x Intel Xeon X5365
RHEL5, INTC10
72,5
2 x Intel Xeon E5472
RHEL5, INTC10
83,9
0
20
40
60
80
Abbildung 22: Ergebnisse, SPECint_rate_base_2006
Bartels, Dinter, Lange
Seite 37 von 43
AMD vs. Intel
WS 2007/ 08
Die Integer-Performance bei der Durchsatz-Messung aller Kerne im System zeigt ein anderes Bild als
die Einzelkern-Performance. Hier kann die neue K10 Architektur von AMD überzeugen. Es zeigt sich,
dass auch die K10 Architektur, ähnlich der K8 Architektur bei mehreren Kernen besser skaliert.
Dadurch erreicht der AMD Opteron 2350 SE eine um ca. 21% bessere Leistung als der aktuelle Intel
Xeon X5365 und eine um ca. 5% bessere Leistung als der neue Intel Xeon E5472. Die neue XeonGeneration von Intel skaliert ebenfalls besser als die alte Xeon-Generation. Die Ergebnisse konnten
hier durch die Strukturverbesserungen um ca. 16% gesteigert werden.
Die letzen Ergebnisse zeigen die Floating-Point-Performance, multi-threaded [vgl. CT07]
SPEC CPU 2006, SPECfp_rate_base_2006 [Punkte], x64
2 x AMD Opteron 2350 SE
SLES10, PGI7
80,6
2 x Intel Xeon X5365
RHEL5, INTC10
61,9
2 x Intel Xeon E5472
RHEL5, INTC10
74
0
20
40
60
80
Abbildung 23: Ergebnisse, SPECfp_rate_base_2006
Auch bei der Floating-Point-Performance skaliert der AMD Opteron 2350 SE besser als die
Konkurrenz von Intel. Dieser erreicht eine um ungefähr 30% bessere Leistung als der aktuelle Intel
Xeon E5365 und eine um ungefähr 9% bessere Leistung als der neue Intel Xeon E5472.
6.8.
Resümee
Bei einer Betrachtung der reinen CPU-Performance ist der Intel Core 2 Duo E6400 der klare Sieger
vor dem AMD Athlon 64 X2 6000+. Der Intel Prozessor kann den Konkurrenten von AMD sowohl
bei der Integer-Performance als auch bei der Floating-Point-Performance klar übertrumpfen (siehe
Abschnitt 6.1).
Der AMD Athlon 64 X2 6000+ verfügt seinerseits über die bessere Speicheranbindung. Dies konnte
durch Messungen der Speicherbandbreite belegt werden. Auch skaliert der AMD Prozessor besser, so
dass dieser eher von multi-threaded Anwendung profitiert (siehe Abschnitt 6.2 ff.).
Bei der Auswahl zwischen den beiden verglichenen Modellen sollte die Entscheidung nach dem
vorgesehenen Anwendungszwecke getroffen werden. Allerdings handelt es sich beim Modell von
AMD bereits um das aktuelle Topmodell für den Desktop-Bereich. Der Intel Core 2 Duo E6400 ist
dagegen ein Mainstream-Modell, das wahrscheinlich in einigen Wochen nicht mehr erhältlich sein
wird. Von Intel sind bereits für einen geringen Aufpreis weitere Modelle erhältlich, die im Vergleich
mit dem Core 2 Duo E6400 (teilweise deutlich) besser abschneiden. Diese konnten allerdings nicht in
diesen Vergleich aufgenommen werden, da keine passenden Benchmark-Ergebnisse verfügbar waren.
Bartels, Dinter, Lange
Seite 38 von 43
AMD vs. Intel
WS 2007/ 08
Auch ein Vergleich der beiden kommenden Generationen, des, auf der K10 Architektur basierenden
AMD Opteron 2350 und der neuen Quad-Core-Xeon Generation zeigt ein ähnliches Bild. Die
Prozessoren von Intel können sich bei der reinen CPU-Performance gegen die Konkurrenz behaupten.
Der neue AMD Opteron 2350 muss sich hier sogar der aktuellen Xeon-Generation, dem Intel Xeon
5365, geschlagen geben.
Ähnlich der K8 Architektur skalieren die Prozessoren der K10 Architektur besser. Bei den DurchsatzMessungen aller Kerne im System kann der AMD Opteron 2350 SE die Konkurrenz von Intel hinter
sich lassen. Aber auch die neue Quad-Core-Xeon Generation skaliert im Vergleich zum Vorgänger
besser. Die von Intel vorgenommenen Verbesserungen reichen allerdings nicht aus, um sich gegen den
AMD Opteron 2350 SE zu behaupten (siehe Abschnitt 6.7).
Intel hat hier allerdings den Vorteil, dass die neuen Prozessoren bereits in 45nm gefertigt werden.
Dadurch können mehr Transistoren auf kleineren Chips untergebracht und die Fertigungskosten
gesenkt werden. Die Prozessoren können günstiger angeboten werden. Auch können durch die
Strukturverkleinerungen schnellere und sparsamere CPUs gefertigt werden.
Im Vergleich für den Ausblick in die Zukunft lag das Intel-Testsystem unter Volllast bei einem
Verbrauch von 375 Watt ungefähr gleich auf mit dem AMD-Barcelona Testsystem mit dem Opteron
2350. Diese CPU läuft allerdings langsamer als der Intel Xeon E5472. Einzig der AMD Opteron 2350
SE schafft es, den Intel Xeon zu schlagen, schluckt aber auch mehr als der Opteron 2350. Intel hat also
noch Raum für höhere Taktfrequenzen. Erste Benchmark-Werte für 120-Watt-Harpertowns mit 3,2
GHz und 3,4 GHz hat Intel bereits veröffentlich – erwartungsgemäß sind diese Prozessoren demnach
schneller als zwei Opteron 2350 SE. [vgl. CT07]
Um gegen Intels zukünftige Quad-Core-Xeon Generation bestehen zu können, müsste AMD dringend
die Taktraten ihrer Prozessoren erhöhen. Dies resultiert allerdings wiederum in einem höheren
Energieverbrauch. Zu der anderen Alternative, den Fertigungsprozess auf 45nm umzustellen, ist AMD
derzeit technisch noch nicht in der Lage. Hierzu werden sie wahrscheinlich noch ca. 12 Monate
benötigen.
Bartels, Dinter, Lange
Seite 39 von 43
AMD vs. Intel
WS 2007/ 08
Quellenverzeichnis
[3DC07]
3Dcenter, Intel Core 2: Allendale vs. Conroe und FSB266 vs. FSB333, 28.10.2007,
http://www.3dcenter.org/artikel/2007/10-28_a.php, 01.12.2007
[AMD05]
Advanced Micro Devices (AMD), Software Optimization Guide for AMD64
Processor, September 2005, http://www.amd.com/us-en/assets/content_type
/white_papers_and_tech_docs/25112.PDF, 01.12.2007
[AMD06]
Advanced Micro Devices (AMD), Performance Guidelines for AMD Athlon 64 and
AMD Opteron ccNUMA Multiprocessor Systems, Juni 2006, http://www.amd.com/
us-en/assets/content_type/white_papers_and_tech_docs/25112.PDF, 01.12.2007
[AMD07]
Advanced Micro Devices (AMD), AMD64 Architecture Programmer’s Manual –
Volume 2: System Programming, September 2007, http://www.amd.com/us-en
/assets/content_type/white_papers_and_tech_docs/24593.pdf, 01.12.2007
[AMD07b]
Advanced Micro Devices (AMD), AMD Athlon 64 X2 Dual-Core Processor Product
Data Sheet, Januar 2007, http://www.amd.com/us-en/assets/content_type/
white_papers_and_tech_docs/33425.pdf, 01.12.2007
[AMD07c]
Advanced Micro Devices (AMD), Software Optimization Guide for AMD Family
10h Processors, September 2007, http://www.amd.com/us-en/assets/content_type/
white_papers_and_tech_docs/40546.pdf, 01.12.2007
[AMD08]
Advanced Micro Devices (AMD), Die AMD Story, 2008, http://www.amd.com/dede/Weblets/0,,7832_10554,00.html, 04.03.2008
[ARS06]
Jon Stokes, Into Intel Core: Intel’s next-generation microarchitecture, ars technical,
05.04.2006, http://arstechnica.com/articles/paedia/cpu/core.ars, 01.12.2007
[BAP05]
BAPCo (Business Application Performance Corporation), SYSmark 2004 SE – An
overview of SYSmark 2004 SE, Version 1.0, Juni 2005, http://www.bapco.com/
techdocs/SYSmark2004SEWhitePaper.pdf, 01.12.2007
[BAP08]
BAPCo (Business Application Performance Corporation), BAPCo – Real World,
Real Benchmarks, http://www.bapco.com, 04.03.2008
[CB07]
Thomas Hübner, Test: Intel Core 2 Extreme QX6800 – Schnelle Osterüberraschung,
ComputerBase,
09.04.2007,
http://www.computerbase.de/artikel/hardware/
prozessoren/2007/test_intel_core_2_extreme_qx6800/, 01.12.2007
[CT03]
Christof Windeck, Stufe vier – AMD Athlon 64, Apple PowerMac G5, FX und die
Konkurrenz, c’t-Artikel, Heft 20/2003, Seite 112 ff.
[CT03b]
Christof Windeck, Kraftsportler – Der Doppelkern-Prozessor Athlon 64 X2, c’tArtikel, Heft 11/2005, Seite 34 ff.
[CT06]
Andrea Trinkwalder, Zweispänner – Wie Anwendungen von Dual-Core-Systemen
profitieren, c’t-Artikel, Heft 4/2006, Seite 132 ff.
[CT06b]
Benjamin Benz, Nachschlag – AMD rüstet sich mit DDR2-Speicher für die nächste
Runde im CPU-Wettstreit, c’t-Artikel, Heft 13/2006, Seite 114 ff.
Bartels, Dinter, Lange
Seite 40 von 43
AMD vs. Intel
WS 2007/ 08
[CT06c]
Benjamin Benz, Ausreißer – Intel Core 2 Duo kontra AMD Athlon 64 X2, c’tArtikel, Heft 16/2006, Seite 106 ff.
[CT06d]
Christof Windeck, Vierspänner – Der erste Prozessor mit vier x86-Kernen, c’tArtikel, Heft 24/2006, Seite 92 ff.
[CT07]
Christof Windeck, Schneller oder sparsamer – Intels erste 45-NanometerProzessoren, c’t-Artikel, Heft 21/2007 ,Seite 26
[CT07b]
Benjamin Benz, Stelldichein – Wegweiser durch den x86-Prozessordschungel, c’tArtikel, Heft 6/2007, Seite 156 ff.
[CT07c]
Christof Windeck, Vier gegen vier – AMDs Vierkern-Serverprozessoren
„Barcelona“, c’t-Artikel, Heft 20/2007, Seite 164 ff.
[FOG07]
Agner Fox, The microarchitecture of Intel and AMD CPU’s – An optimization guide
for assembly programmers and compiler makers, Copenhagen University College of
Engineering, 29.07.2007, http://www.agner.org/optimize/microarchitecture.pdf,
01.12.2007
[HO08]
heise online, Glossar – Thermal Design Power (TDP), http://www.heise.de/glossar/
entry/6abd9bb2ddff7eb3, 04.03.2008
[INT97]
Steve Gorman, Programming with the Intel architecture in the flat memory model,
Intel
Corporation,
1997,
http://download.intel.com/design/intarch/papers/
esc_ia_p.pdf, 01.12.2007
[INT06]
Ofri Wechsler, Inside Intel Core Microarchitecture – Setting New Standards for
Energy-Efficient Performance (White Paper), Intel Corporation, 2006,
http://download.intel.com/technology/architecture/new_architecture_06.pdf,
01.12.2007
[INT06b]
Jack Doweck, Inside Intel Core Microarchitecture and Smart Memory Access – An
In-Depth Look at Intel Innovations for Acceleration Execution of Memory-Related
Instructions (White Paper), Intel Corporation, 2006, http://download.intel.com/
technology/architecture/sma.pdf, 01.12.2007
[INT07]
Intel Corporation, Intel 64 Architecture Memory Ordering White Paper, August
2007, http://www.intel.com/products/processor/manuals/318147.pdf, 01.12.2007
[INT07b]
Intel Corporation, TLBs, Paging-Structure Caches, and Their Invalidation
(Application Note), April 2007, http://www.intel.com/design/processor/applnots/
317080.pdf, 01.12.2007
[INT07c]
Intel Corporation, Intel 64 and IA-32 Architectures Optimization Reference Manual,
November
2007,
http://www.intel.com/design/processor/manuals/248966.pdf,
01.12.2007
[INT07d]
Intel Corporation, Intel 64 and IA-32 Architectures Software Developer’s Manual –
Volume 1: Basic Architecture, November 2007, http://www.intel.com/design/
processor/manuals/253665.pdf, 01.12.2007
[INT07e]
Intel Corporation, Intel 64 and IA-32 Architectures Software Developer’s Manual –
Volume 3A: System Programming Guide, Part 1, November 2007,
http://www.intel.com/design/processor/manuals/253668.pdf, 01.12.2007
Bartels, Dinter, Lange
Seite 41 von 43
AMD vs. Intel
WS 2007/ 08
[INT07f]
Intel Corporation, Intel X38 Express Chipset Memory Technology and
Configuration Guide (White Paper), October 2007, http://download.intel.com/
design/chipsets/applnots/31846901.pdf, 01.12.2007
[INT08]
Intel Corporation, Intel Corporate Archives, 2008, http://www.intel.com/museum/
archives/index.htm, 04.03.2008
[RWT07]
David Kanter, Intel’s Next Generation Microarchitecture Unveiled, Real World
Technologie,
03.09.2007,
http://www.realworldtech.com/page.cfm?ArticleID=
RWT030906143144, 01.12.2007
[RWT07b]
David Kanter, Inside Barcelona: AMD’s Next Generation, Real World Technologie,
05.16.2007,
http://www.realworldtech.com/page.cfm?ArticleID=RWT05160
7033728, 01.12.2007
[SG08]
SunGard, SunGard Homepage, http://www.sungard.com/sungard/, 04.03.2008
[SP07]
SPEC, Homepage der SPEC – Standard Performance Evaluation Corporation,
www.spec.org, 01.12.2007
[SP07b]
SPECapc, Homepage der SPECapc project group, 03.08.2007, http://www.spec.org/
gwpg/apc.static/apc_overview.html, 04.03.2008
[TC06]
Christian Vilsbeck, Volle Performance – halber Preis: Athlon 64 X2 fordert Cure 2
Duo, tecchannel.de, 15.08.2006, http://www.tecchannel.de/pc_mobile/prozessoren/
445604/, 01.12.2007
[TC07]
Christian Vilsbeck, Dual-Core-Test: Neuer Athlon 64 X2 6000+ mit 3,0 GHz,
tecchannel.de,
20.02.2007,
http://www.tecchannel.de/pc_mobile/prozessoren/
462108/, 01.12.2007
[TR07]
Scott Wasson, AMD’s quad-core Opteron 2300 processors – An exclusive first look
at how ‘Barcelona’ measures up, The Tech Report, 10.09.2007, http://
techreport.com/articles.x/13176/1, 01.12.2007
[WF08]
Winfuture.de, Winfuture Download-Center - Sciencemark 2.0, http://winfuture.de
/downloadstart,1204802604,78.html, 04.03.2008
[ZD07]
Kai Schmerer, AMD Athlon 64 X2 6000+ mit 3 GHz im Benchmarktest, ZDnet,
20.02.2007, http://www.zdnet.de/enterprise/client/0,39023248,39151789-1,00.htm,
01.12.2007
Bartels, Dinter, Lange
Seite 42 von 43
AMD vs. Intel
WS 2007/ 08
Abbildungsverzeichnis
Abbildung 1: K8 Architektur im Überblick [CT07c] .............................................................................. 7
Abbildung 2: K10 Architektur im Überblick [CT07c] ............................................................................ 9
Abbildung 3: Core Architektur im Überblick [CT07c] ......................................................................... 10
Abbildung 4: Ausschnitt der K8 Architektur [CT07c] .......................................................................... 15
Abbildung 5: Anbindung CPU an den Chipsatz und Speicher (X38 Chipsatz) .................................... 16
Abbildung 6: Ergebnisse, SPECint_base2000 ...................................................................................... 27
Abbildung 7: Ergebnisse, SPECint_rate_base2000 .............................................................................. 27
Abbildung 8: Ergebnisse, SPECfp_base2000 ....................................................................................... 28
Abbildung 9: Ergebnisse, SPECfp_rate_base2000 ............................................................................... 28
Abbildung 10: Ergebnisse, Sciencemark (Speichertransferrate) ........................................................... 29
Abbildung 11: Ergebnisse, SunGard ACR (Calculation Time) ............................................................ 30
Abbildung 12: Ergebnisse, 3ds Max 8 ( Rendering Time, Szene 1 „Radiosity“) ................................. 31
Abbildung 13: Ergebnisse, 3ds Max 8 (Rendering Time, Szene 2 „Underwater“) ............................... 31
Abbildung 14: Ergebnisse, BAPCo Sysmark 2004 SE (Gesamtwertung) ............................................ 33
Abbildung 15: Ergebnisse, BAPCo Sysmark 2004 SE (Internet Content Creation) ............................. 33
Abbildung 16: Ergebnisse, BAPCo Sysmark 2004 SE (Office Productivity) ....................................... 34
Abbildung 17: Ergebnisse, Energieverbrauch (Gesamtsystem, Volllast) ............................................. 35
Abbildung 18: Ergebnisse, Energieverbrauch (Gesamtsystem, Leerlauf) ............................................ 35
Abbildung 19: Ergebnisse, SPECint_base_2006 .................................................................................. 36
Abbildung 20: Ergebnisse, SPECfp_base_2006 ................................................................................... 37
Abbildung 21: Ergebnisse, SPECint_rate_base_2006 .......................................................................... 37
Abbildung 22: Ergebnisse, SPECfp_rate_base_2006 ........................................................................... 38
Tabellenverzeichnis
Tabelle 1: Betriebsmodi der IA-32 Prozessoren mit AMD64/Intel 64 Erweiterungen ......................... 13
Tabelle 2: Eckdaten, L2 Cache.............................................................................................................. 19
Tabelle 3: Eckdaten, L1 Cache.............................................................................................................. 20
Tabelle 4: Eckdaten, TLB, AMD K8 .................................................................................................... 21
Tabelle 5: Eckdaten, TLB, Intel Core ................................................................................................... 21
Tabelle 6: CPU Modelle für die Benchmarks ....................................................................................... 24
Tabelle 7: CPU Modelle für den Ausblick in die Zukunft .................................................................... 36
Bartels, Dinter, Lange
Seite 43 von 43

Documentos relacionados