Opteron 280: Test mit Windows, Linux & VMware

26.09.2005 von Christian Vilsbeck
AMD spendiert seinen Dual-Core-Modellen mit dem Opteron 280 mehr Performance. Der Leistungszuwachs unter Windows sollte stimmen. Aber überzeugt die CPU auch unter 64-Bit-Linux und was leistet sie in einer virtualisierten Umgebung?

In unserem Test des ersten Opteron 275 setzte die Dual-Core-CPU bei grafiklastigen Workstation-Anwendungen eindrucksvoll den Maßstab. Zwei 3,60-GHz-Xeons streiten sich bereits mit einem Dual-Core-Opteron um die Plätze. Nimmt ein zweiter Opteron 275 im System Platz, so ist die Konkurrenz bei multithreaded-programmierten Anwendungen chancenlos.

Jetzt legt AMD mit dem beschleunigten Opteron 280 für den Einsatz in Servern und Workstations nach. Der Prozessor für 2-Sockel-Systeme arbeitet mit 2,4 GHz Taktfrequenz – 200 MHz mehr als beim Vorgänger. Bei Intel markiert weiterhin der Xeon 3,60 GHz mit 2 MByte L2-Cache die Spitze für Systeme mit zwei CPUs. Bei AMDs Single-Core-Opterons gibt es mit dem Modell 254 inzwischen eine Variante mit 2,8 GHz Taktfrequenz als Top-Modell.

Im tecCHANNEL-Testlabor müssen sich die Prozessoren nun in Server-Szenarien bewähren. Neben der „puren“ Performance bei Integer- und Floating-Point-Berechnungen, die wir unter Windows Server 2003 und SUSE Linux 10 überprüfen, interessiert die Leistungsfähigkeit in virtualisierten Umgebungen. Bei der Virtualisierungslösung VMware ESX Server müssen die Prozessoren ihre Ressourcen auf mehrere Betriebssysteme verteilen. Dies gelingt den Probanten unterschiedlich gut.

Außerdem überprüfen wir die Performance der CPUs bei der multithreaded programmierten Open-Source-Datenbank MySQL. Im Server-Umfeld ist Linux sehr beliebt, für die MySQL-Benchmarks setzen wir deshalb auf SUSE Linux 10 RC1 in der 64-Bit-Version.

Details zum Opteron

AMD bietet die Dual-Core-Opteron-CPUs als Modelle 265, 270, 275 und 280 für 2-Wege-Systeme an. Für Server und Workstations mit maximal acht CPUs gibt es die entsprechenden Modelle Opteron 8xx. Die Prozessoren für den Socket 940 arbeiten mit Taktfrequenzen von 1,8 (x65) bis 2,4 GHz (x80). Jeder Prozessorkern besitzt bei den Dual-Core-Opterons einen 1 MByte großen L2-Cache.

Mit den Opterons 260 HE und 265 HE sowie 860 HE und 865 HE produziert AMD stromsparende Varianten des Dual-Core-Opterons. Den TDP-Wert spezifiziert der Hersteller auf 55 Watt. Die Standard-Dual-Core-Opterons gibt AMD mit 95 Watt TDP an. Die Fertigung aller Doppelkern-Opterons erfolgt in einem 90-nm-Prozess mit SOI-Technik.

Für 1-Sockel-Systeme bietet AMD seit August 2005 die Dual-Core-Opterons 165 bis 175 an – ein Modell 180 ist ab Ende Oktober 2005 verfügbar. Diese CPUs nehmen ausschließlich im Socket 939 der Athlon-64-Prozessoren Platz. Bei allen Opterons-Serien erfolgt die Kommunikation zwischen den CPUs sowie zur Peripherie über HyperTransport-Schnittstellen mit 1000 MHz Taktfrequenz. Beim Speicher adressieren die 200er und 800er Opterons Dual-Channel-DDR400-Module in gepufferter Ausführung. Die Opteron-100-Modelle für den Socket 939 steuern ungepufferte DIMMs an.

In der Tabelle haben wir für Sie alle Single- und Dual-Core-Opteron-Modelle zusammengefasst.

Die Tabelle zeigt die Opteron-Modellpalette mit ihrer tatsächlichen Taktfrequenz

Prozessor

Taktfrequenz [MHz]

Architektur

Multiprocessing

Opteron 140 EE

1400

Single-Core

nein

Opteron 144

1800

Single-Core

nein

Opteron 146

2000

Single-Core

nein

Opteron 146 HE

2000

Single-Core

nein

Opteron 148

2200

Single-Core

nein

Opteron 148 HE

2200

Single-Core

nein

Opteron 150

2400

Single-Core

nein

Opteron 152

2600

Single-Core

nein

Opteron 165

1800

Dual-Core

nein

Opteron 170

2000

Dual-Core

nein

Opteron 175

2200

Dual-Core

nein

Opteron 180

2400

Dual-Core

nein

Opteron 240 EE

1400

Single-Core

2 CPUs

Opteron 242

1600

Single-Core

2 CPUs

Opteron 244

1800

Single-Core

2 CPUs

Opteron 246

2000

Single-Core

2 CPUs

Opteron 246 HE

2000

Single-Core

2 CPUs

Opteron 248

2200

Single-Core

2 CPUs

Opteron 248 HE

2200

Single-Core

2 CPUs

Opteron 250

2400

Single-Core

2 CPUs

Opteron 250 HE

2400

Single-Core

2 CPUs

Opteron 252

2600

Single-Core

2 CPUs

Opteron 254

2800

Single-Core

2 CPUs

Opteron 260 HE

1600

Dual-Core

2 CPUs

Opteron 265

1800

Dual-Core

2 CPUs

Opteron 265 HE

1800

Dual-Core

2 CPUs

Opteron 270

2000

Dual-Core

2 CPUs

Opteron 275

2200

Dual-Core

2 CPUs

Opteron 280

2400

Dual-Core

2 CPUs

Opteron 840 EE

1400

Single-Core

8 CPUs

Opteron 842

1600

Single-Core

8 CPUs

Opteron 844

1800

Single-Core

8 CPUs

Opteron 846

2000

Single-Core

8 CPUs

Opteron 846 HE

2000

Single-Core

8 CPUs

Opteron 848

2200

Single-Core

8 CPUs

Opteron 848 HE

2200

Single-Core

8 CPUs

Opteron 850

2400

Single-Core

8 CPUs

Opteron 850 HE

2400

Single-Core

8 CPUs

Opteron 852

2600

Single-Core

8 CPUs

Opteron 854

2800

Single-Core

8 CPUs

Opteron 860 HE

1600

Dual-Core

8 CPUs

Opteron 865

1800

Dual-Core

8 CPUs

Opteron 865 HE

1800

Dual-Core

8 CPUs

Opteron 870

2000

Dual-Core

8 CPUs

Opteron 875

2200

Dual-Core

8 CPUs

Opteron 880

2400

Dual-Core

8 CPUs

Ausführliche Grundlagen über die AMD64-Architektur des Opteron können Sie ebenfalls bei tecCHANNEL nachlesen.

Details zum Xeon

Intel bietet den Xeon DP auf Irwindale-Basis mit vier Modellen von 3,00 bis 3,60 GHz Taktfrequenz an. Der L1-Daten-Cache mit 16 KByte bleibt gegenüber dem Vorgänger „Nocona“ unverändert, der L2-Cache verdoppelte sich von 1 auf 2 MByte. Die Irwindale-Xeons sind durch ein an die Taktfrequenz angehängtes „E“ in der Modellbezeichung zu erkennen.

Auf einen L3-Cache müssen die Irwindale-CPUs weiterhin verzichten. Der Prozessorbus arbeitet unverändert zum Nocona mit 800 MHz. Die Fertigung des Irwindale erfolgt in einem 90-nm-Prozess. Allen Xeon-DP-Prozessoren gemeinsam ist die Hyper-Threading-Technologie sowie der Socket 604.

Die Xeon-Modelle mit Irwindale- und Nocona-Core werden für eine Übergangszeit parallel von Intel angeboten. Bei den Nocona-Xeons mit 2,80, 3,00 und 3,20 GHz fügt Intel noch ein „D“ an die Taktfrequenz an. Dies soll die Unterscheidung zu den früheren Gallatin-Xeons erleichtern, die es ebenfalls mit diesen Taktfrequenzen gab.

In der Tabelle finden Sie alle von Intel angebotenen Xeon-CPUs für 2-Sockel-Systeme im Überblick.

Intels Xeon-DP-Modelle im Überblick

Prozessor

Cache

FSB

Core

EM64T

SpeedStep

Xeon 3,60E GHz

2M L2

800 MHz

Irwindale

ja

ja

Xeon 3,40E GHz

2M L2

800 MHz

Irwindale

ja

ja

Xeon 3,20E GHz

2M L2

800 MHz

Irwindale

ja

ja

Xeon 3,00E GHz

2M L2

800 MHz

Irwindale

ja

ja

Xeon 3,60 GHz

1M L2

800 MHz

Nocona

ja

ja

Xeon 3,40 GHz

1M L2

800 MHz

Nocona

ja

ja

Xeon 3,20D GHz

1M L2

800 MHz

Nocona

ja

ja

Xeon 3,00D GHz

1M L2

800 MHz

Nocona

ja

ja

Xeon 2,80D GHz

1M L2

800 MHz

Nocona

ja

nein

LV Xeon 2,80 GHz

1M L2

800 MHz

Nocona

ja

nein

Windows 32 Bit: SPECint_base2000

Wir setzen die SPEC-Benchmarks unter Windows Server 2003 praxisnah ein und kompilieren sie für das Base-Rating. Dazu verwenden wir Intel C++ 9.0 und MS Visual Studio .NET für alle Integer-Tests. Für alle Prozessoren finden Sie die bei den Benchmarks verwendeten CPU2000-Config-Files im Artikel SPEC CPU2000 Config-Files.

Der SPECint_base2000-Benchmark arbeitet singlethreaded und nutzt die Vorteile von Hyper-Threading und Dual-Core nicht. Die ermittelten Werte gelten als Indiz für die Integer-Performance der Prozessoren.

In der Tabelle finden Sie die Einzelergebnisse des SPEC-CPU2000-Integer-Benchmarks der wichtigsten Prozessoren im Vergleich:

SPECint_base2000: Official Run

Prozessor

Opteron 254

Opteron 280

Xeon 3,60 GHz 1M

Xeon 3,60 GHz 2M

Taktfrequenz

2,8 GHz

2,4 GHz

3,60 GHz

3,60 GHz

Sockel

S940

S940

S604

S604

Core

AMD64

AMD64

Nocona

Irwindale

Speichertyp

Reg. DDR400 CL3

Reg. DDR400 CL3

DDR2-400 CL3

DDR2-400 CL3

Chipsatz

NF Prof.

NF Prof.

E7525

E7525

Compiler

-QxW

-QxW

-fast

-fast

Test

164.gzip

1548

1333

1185

1188

175.vpr

1531

1365

958

1178

176.gcc

1450

1261

1861

2019

181.mcf

1234

1183

1107

1799

186.crafty

1988

1718

1320

1332

197.parser

1754

1539

1342

1473

252.eon

2491

2143

2254

2244

253.perlbmk

2061

1788

1842

1899

254.gap

2026

1771

1899

1918

255.vortex

2738

2410

2516

2775

256.bzip2

1451

1290

1068

1291

300.twolf

1890

1665

1356

1834

Gesamt

1800

1585

1489

1688

Windows 32 Bit: SPECint_rate_base2000

Bei den Integer-Berechnungen von SPECint_rate_base2000 ermittelt die Benchmark-Suite den maximalen Durchsatz durch Verwendung mehrerer Tasks. Dabei arbeiten multiple Kopien des Benchmarks parallel. Typischerweise entspricht die Anzahl der Tasks/Kopien der Anzahl der - virtuellen - Prozessoren des Systems.

So läuft SPECint_rate_base2000 beim Opteron 254 mit einer Kopie, beim Opteron 280 (Dual-Core) und Xeon (Hyper-Threading) mit zwei Kopien. Bei zwei Opteron 280 (insgesamt 4 Cores) und zwei Xeons (jeweils zwei virtuelle CPUs durch HT) sind vier Kopien im Einsatz. Bei diesem Test wird der Vorteil von Dual-Core und einem zweiten Prozessor ausgenutzt. Bei Single-Core-Prozessoren wie dem Opteron 254 führen SPECint_rate_base2000-Tests mit einer und zwei Kopien zum gleichen Ergebnis - der maximale Durchsatz bleibt unverändert.

Zusätzlich haben wir das Xeon-Irwindale-Doppelpack mit ausgeschaltetem Hyper-Threading getestet. Hier sinkt der SPECint_rate_base2000-Wert von 38,6 auf 37,8 Punkten. Hyper-Threading führt somit zu zwei Prozent mehr Performance.

Windows 32 Bit: SPECfp_base2000

Wir setzen die SPEC-Benchmarks unter Windows Server 2003 praxisnah ein und kompilieren sie für das Base-Rating. Dazu verwenden wir Intel C++ 9.0 und MS Visual Studio sowie Intel Fortran 9.0 für alle Fließkommatests. Für alle Prozessoren finden Sie die bei den Benchmarks verwendeten CPU2000-Config-Files im Artikel SPEC CPU2000 Config-Files.

Der SPECfp_base2000-Benchmark arbeitet single-threaded und nutzt die Vorteile von Hyper-Threading und Dual-Core nicht. Die ermittelten Werte gelten als Indiz für die Floating-Point-Performance der Prozessoren.

AMDs Opteron-Prozessoren beherrschen wie die Intel-CPUs SSE3. Die Intel-Compiler verweigern aber mit eingestellter SSE3-Optimierung -QxP/fast die Zusammenarbeit mit den AMD-CPUs. Wir testen die AMD64-Prozessoren mit dem Compiler-Switch -QxW mit SSE2-Unterstützung.

Zwar lässt sich die Prozessorabfrage bei den Intel-Compilern per Patch „umgehen“, doch nach den strengen SPEC-Regeln dürfen nur Ergebnisse mit offiziell verfügbarerer Hard-/Software publiziert werden. So unterstützt Intel dieses „umgehen“ der CPU-Abfrage bei seinen Compilern nicht, wie der Hersteller mitteilt.

In der Tabelle finden Sie die Einzelergebnisse des SPEC-CPU2000-Floating-Point-Benchmarks der wichtigsten Prozessoren im Vergleich:

SPECfp_base2000: Official Run

Prozessor

Opteron 254

Opteron 280

Xeon 3,60 GHz 1M

Xeon 3,60 GHz 2M

Taktfrequenz

2,8 GHz

2,4 GHz

3,60 GHz

3,60 GHz

Sockel

S940

S940

S604

S604

Core

AMD64

AMD64

Nocona

Irwindale

Speichertyp

Reg. DDR400 CL3

Reg. DDR400 CL3

DDR2-400 CL3

DDR2-400 CL3

Chipsatz

NF Prof.

NF Prof.

E7525

E7525

Compiler

-QxW

-QxW

-fast

-fast

Test

168.wupwise

2177

1928

2555

2559

171.swim

2353

2239

1956

2034

172.mgrid

1520

1344

1386

1457

173.applu

1320

1215

1442

1465

177.mesa

2065

1785

1582

1571

178.galgel

2567

2326

2424

3591

179.art

1900

1811

2439

4172

183.equake

1754

1636

1774

2076

187.facerec

2071

1847

1801

1861

188.ammp

1332

1190

930

1237

189.lucas

1971

1877

1726

1796

191.fma3d

1655

1491

1397

1436

200.sixtrack

748

645

704

714

301.apsi

1524

1351

1016

1209

Gesamt

1712

1551

1554

1762

Windows 32 Bit: SPECfp_rate_base2000

Bei den Floating-Point-Berechnungen von SPECfp_rate_base2000 ermittelt die Benchmark-Suite den maximalen Durchsatz durch Verwendung mehrerer Tasks. Dabei arbeiten multiple Kopien des Benchmarks parallel. Typischerweise entspricht die Anzahl der Tasks/Kopien der Anzahl der - virtuellen - Prozessoren des Systems.

So läuft SPECfp_rate_base2000 beim Opteron 254 mit einer Kopie, beim Opteron 280 (Dual-Core) und Xeon (Hyper-Threading) mit zwei Kopien. Bei zwei Opteron 280 (insgesamt 4 Cores) und zwei Xeons (jeweils zwei virtuelle CPUs durch HT) sind vier Kopien im Einsatz. Bei diesem Test wird der Vorteil von Dual-Core und einer zweiten CPU ausgenutzt. Bei Single-Core-Prozessoren wie dem Opteron 254 führen SPECfp_rate_base2000-Tests mit einer und zwei Kopien zum gleichen Ergebnis - der maximale Durchsatz bleibt unverändert.

Zusätzlich haben wir das Xeon-Irwindale-Doppelpack mit ausgeschaltetem Hyper-Threading getestet. Jetzt steigt der SPECfp_rate_base2000-Wert von 26,8 auf 31,0 Punkten. Das Deaktivieren von Hyper-Threading führt in diesem Fall zu einer Performance-Steigerung von 16 Prozent. Bei den Integer-Tests wird der Xeon ohne Hyper-Threading langsamer.

Linux 64 Bit: Integer-Performance

Die modulare Benchmark-Suite SysBench für Linux ist multithreaded konzipiert. Neben dem Test von Datenbanken eignet sich SysBench zur Überprüfung der Integer-Performance der Prozessoren, des Speicherdurchsatzes oder der Scheduler-Performance des Betriebssystems.

Beim CPU-Test von SysBench berechnet der Benchmark die Primzahlen bis zu einer wählbaren Obergrenze. In unserem Fall lassen wir alle Primzahlen bis 100.000 berechnen. Als Ergebnis übergibt SysBench die benötigte Zeit. Die Berechnung der Primzahlen erfolgt mit 64-Bit-Integer-Operationen.

Die Thread-Anzahl ist beim CPU-Test von SysBench konfigurierbar. Wir führen den Benchmark mit einem und acht Threads durch. Damit wird der Vorteil sichtbar, den Hyper-Threading, Dual-Core oder ein zweiter Prozessor erwirken. Die Anzahl der Threads sollte bei diesem Test mindestens der Anzahl – virtueller – Prozessoren besitzen.

Linux 64 Bit: Floating-Point-Performance

Der Linpack-Benchmark wurde in den 70er Jahren ursprünglich für Supercomputer entwickelt. Bis heute dient Linpack aber als verbreitetes Tool zum Ermitteln der Floating-Point-Performance von Highend-Computern. Das Ergebnis wird in Flops (Fließkomma-Operationen pro Sekunde) angegeben.

Linpack löst komplexe lineare Gleichungssysteme. Die Anzahl der Gleichungen lässt sich dabei stark erhöhen, um auch massiv parallel operierende Systeme unter Last zu setzen. Der Bedarf an Arbeitsspeicher wächst entsprechend mit. Die Speicherzuweisung erfolgt über eine Matrix-Berechnung. Size x LDA x 8 (Anzahl der Gleichungen x Input x 8 bit) ergibt den zu allokierenden Speicher.

Unter SUSE Linux 10.0 64-Bit-Edition setzen wir die 64-Bit-Version von Linpack 2.1.2 ein. Der SMP-fähige Benchmark setzt EMT64-Prozessoren mit SSE3-Unterstützung voraus. AMDs Opteron-Prozessoren mit SSE3 arbeiten mit der Intel-kompilierten Linpack-Version ebenfalls problemlos zusammen.

Bei unseren Tests löst Linpack in verschiedenen Durchläufen 5000, 10.000, 15.000, 18.000 und 22.000 Gleichungssysteme. Damit benötigt der Benchmark zwischen 190 MByte (5000 Gleichungssysteme) und zirka 3,6 GByte Arbeitsspeicher (22.000 Gleichungssysteme). Im Diagramm finden die von den Prozessoren maximal erreichten GFlops.

Die Tabelle zeigt die erreichten GFlops bei den jeweils zu lösenden Gleichungssystemen. Mit zunehmender Gleichungsgröße – und somit Arbeitsspeicherbedarf – steigt die GFlops-Leistung bis zu einem Peak-Wert leicht an.

Am Ende der Tabelle finden Sie zwei Xeon 3,60 GHz 2M L2 mit deaktiviertem Hyper-Threading. Das Doppelpack ist ohne HT mit maximal 12,49 GFlops zirka 28 Prozent schneller. Bei diesem Test wirkt Hyper-Threading stark bremsend.

Linpack 2.1.2 64-Bit-Version für Linux

Prozessor

problem size = 5000 [GFlops]

problem size = 10000 [GFlops]

problem size = 15000 [GFlops]

problem size = 18000 [GFlops]

problem size = 20000 [GFlops]

problem size = 22000 [GFlops]

Opteron 280

6,59

6,89

6,99

7,02

7,11

7,12

2 x Opteron 280

11,88

12,95

13,21

13,26

13,35

13,32

Opteron 254

3,98

4,06

4,12

4,13

4,14

4,14

2 x Opteron 254

7,40

7,79

7,97

8,12

8,19

8,20

Xeon 3,60 GHz 2M L2

4,64

4,89

4,97

5,01

5,01

5,03

2 x Xeon 3,60 GHz 2M L2

8,54

9,25

9,60

9,73

9,77

9,78

Xeon 3,60 GHz
1M L2

4,50

4,63

4,68

4,72

4,72

4,73

2 x Xeon 3,60 GHz
1M L2

8,11

8,70

9,00

9,06

8,99

8,63

2 x Xeon 3,60 GHz HT off
2M L2

10,42

11,64

12,15

12,35

12,49

12,45

Linux 64 Bit: MySQL singlethreaded

Die Datenbank MySQL liefert seine eigene Benchmark-Suite. Das integrierte sql-bench stresst mit einer Vielzahl an Operationen die Open-Source-Datenbank. Unterschiedliche Datenmanipulationen aus insert, update, delete sowie Zugriffsmessungen via select in Verbindung mit count und distinct laufen gegen die Datenbank. Verbindungsaufbau, Tabellen anlegen, löschen und verändern sind ebenfalls enthalten.

Zum Einsatz kam die in SUSE Linux 10.0 64-Bit enthaltene Datenbank MySQL 4.1.13 in der x86_64-Version. Für den Test der Prozessoren wurden an der Datenbank keine Veränderungen oder Tunings vorgenommen.

Der Benchmark sql-bench von MySQL arbeitet singlethreaded und nutzt somit die Vorteile von Hyper-Threading, Dual-Core oder einem zweiten Prozessor nicht aus.

Linux 64 Bit: MySQL multithreaded

Die Open-Source-Datenbank MySQL ist multithreaded ausgelegt. Wie die Datenbank von mehrerer Prozessoren und Technologien wie Dual-Core oder Hyper-Threading profitiert, lässt sich mit SysBench überprüfen. SysBench ist ein modularer multithreaded ausgelegter Benchmark zum Testen von Datenbanken unter intensiver Last.

Bei SysBench lassen sich Parameter wie die Anzahl der Threads oder die Größe der Datenbank festlegen. Für unsere MySQL-Benchmarks verwenden wir eine Datenbank mit 100.000 Einträgen. Bei dieser Größe sind Festplattenzugriffe vernachlässigbar und das Storage-Subsystem wird nicht zum begrenzenden Faktor.

Wir erhöhen bei den Multithreading-MySQL-Benchmarks die Anzahl der Threads von 1 bis 64. Hier zeigt sich bei welcher Kombination von Thread-Anzahl und Prozessor MySQL den optimalen Durchsatz erreicht. Ein Thread entspricht dabei den Anfragen eines Clients auf die Datenbank. Damit lässt sich die Aussage treffen, ab wie vielen Clients die Datenbank-/Prozessor-Kombination optimal arbeitet und wann die Performance einbricht.

SysBench gibt als Ergebnis die erzielten Transaktionen der Datenbank pro Sekunde aus.

Die CPU-Auslastung bei zwei Opteron 280 beträgt insgesamt im Maximum zirka 65 Prozent. Auch zwei Xeons übersteigen die 65-Prozent-Marke kaum. Ein Xeon 3,60 GHz 2M L2 erreicht bereits bei 4 Threads eine CPU-Auslastung von über 80 Prozent, ab 8 Threads über 90%. Ein Opteron 280 überschreitet durch seine Dual-Core-Technologie selbst im Maximum nur knapp 80 Prozent. Ist dagegen ein Single-Core-Opteorn-254 im Einsatz, so beträgt die CPU-Auslastung 98 bis 100 Prozent.

Systeme mit zwei Prozessoren bieten bei MySQL somit noch Reserven bei weiter steigender Anzahl von Clients.

Linux 64 Bit: MySQL große Datenbanken

Welchen Einfluss die Prozessoren auf die Performance von MySQL bei sehr großen Datenbanken haben, überprüfen wir mit dem modularen SysBench.

SysBench erlaubt frei wählbare Größen der Datenbank. Für unsere MySQL-Benchmarks verwenden wir eine Datenbank mit 1 und 10 Millionen Einträgen. Bei diesen Größen greift die Datenbank bereits verstärkt auf das Storage-Subsystem zurück. Die Thread-Anzahl legen wir bei den SysBench-1M- und 10M-Tests jeweils auf acht fest.

Bei den 1M-Test wird das Storage-Subsystem schon zum begrenzenden Faktor, es gibt zunehmend Aktivitäten auf der Festplatte. Ein zweiter oder schnellerer Prozessor bewirkt bei dieser Datenbankgröße nicht mehr viel. So liegt die CPU-Auslastung bei zwei Opteron 280 insgesamt nur bei zirka 30 Prozent. Bei einem Opteron 280 erreicht sie dagegen gut 60 Prozent. Ein Xeon 3,60 GHz 1M L2 besitzt bereits eine mittlere CPU-Auslastung von knapp 80 Prozent. Die Single-Core-CPU Opteron 254 arbeitet unter voller Last.

Durch seine geringe CPU-Auslastung von 30 Prozent ist das Opteron-280-Doppelpack beim 1M-Test auch langsamer als ein 280er, weil die Threads auf insgesamt vier Cores aufgeteilt werden. Der einzelne Opteron 280 teilt die Threads auf seine beiden integrierten Kerne auf und es wird weniger Scheduler-Overhead produziert. Außerdem erfolgt die Kommunikation durch den internen Crossbar-Switch zwischen den Kernen deutlich schneller, als wenn zwei 280er sich zusätzlich noch über die HyperTransport-Schnittstelle abstimmen.

VMware ESX-Server

Zur Analyse der Performance von virtualisierten Plattformen mit Opteron- und Xeon-Prozessoren verwenden wir die Virtualisierungslösung VMware ESX Server. Die Software erlaubt die Installation von verschiedenen – voneinander unabhängigen – Betriebssystemen wie Windows XP oder Linux. Jede virtuelle Maschine (VM) besitzt ihre „eigene“ abgeschottete Hardware.

VMware ESX Server selbst basiert auf einem Linux-Kernel und operiert als eigenes Betriebssystem. Im Gegensatz zu Lösungen wie VMware Workstation, GSX Server oder Microsofts VirtualPC wird kein zusätzliches Host-Betriebssystem benötigt.

Die Ansteuerung des ESX Servers erfolgt via Ethernet-Verbindung über den Web-Browser eines beliebigen Rechners. Hier lassen sich die virtuellen Maschinen auch Einrichten, Starten und Benutzen.

Für den Test der Prozessor-Performance in der virtualisierten Umgebung setzen wir auf die Version 2.5.2 des ESX Server. Damit unterstützt die VMware-Software bereits AMDs Dual-Core-Opterons. Hyper-Threading der Xeon-Prozessoren wird von GSX Server ebenfalls ausdrücklich genutzt. Zusätzlich ist VMware Virtual SMP aktiv. Das ESX-Server-Modul ermöglicht einer virtuellen Maschine den Zugriff auf mehrere physikalische Prozessoren.

Wir installieren auf dem ESX Server 2.5.2 acht identische virtuelle Maschinen. Jede VM erhält 512 MByte Arbeitsspeicher sowie eine 4 GByte große virtuelle Partition. ESX Server erlaubt pro VM wahlweise eine oder zwei virtuelle CPUs. Bei unserer Konfiguration wählen wir jeweils zwei virtuelle Prozessoren pro VM. Als Betriebssystem für die virtuellen Maschinen kommt jeweils SUSE Linux 9.3 Professional in der 32-Bit-Version zum Einsatz.

ESX Server arbeitet bei den Tests mit der Standard-Konfiguration ohne spezielle Server-Tuning-Parameter. Jede virtuelle Maschine erhält die gleichen CPU-Prioritäten. Die VMware-Software sorgt dabei für eine dynamische Lastverteilung.

Die Benchmarks lassen wir zuerst auf einer VM, dann jeweils parallel auf zwei, drei, vier bis hin zu schließlich zehn virtuellen Maschinen laufen. Damit überprüfen wir, wie stark die Performance einbricht, wenn mehrere VMs parallel die Plattform belasten.

VMware ESX Server: MySQL-Performance

Die Datenbank-Performance von MySQL 4.1.10. in den virtuellen Maschinen überprüfen wir mit dem Benchmark-Skript „test-insert“ aus der MySQL-Benchmark-Suite „sql-bench“. Die Open-Source-Datenbank sowie sql-bench sind Bestandteil von SUSE Linux 9.3 Professional, das jeweils als Betriebssystem in den VMs agiert.

Das Benchmark-Skript test-insert wählten wir aufgrund der minimalen Zugriffe auf die Festplatte. Damit stellen wir sicher, dass bei mehreren parallel arbeitenden VMs das Storage-Subsystem nicht zum begrenzenden Faktor wird. Das perl-Skript test-insert agiert mit einer 100.000 Einträge umfassenden Datenbank.

Eine VM beansprucht das Opteron-280-Doppelpack insgesamt mit bis zu 40 Prozent CPU-Auslastung. Alle vier Kerne sind dabei der virtuellen Maschine zugewiesen. Bei einer aktiven VM benötigt der ESX Server kaum Ressourcen für die Virtualisierung – maximal ein Prozent der Rechenleistung.

Arbeiten fünf VMs parallel, so weist ESX Server bei zwei Opteron 280 oder zwei Xeon 3,60 GHz 2M L2 jeder VM beim MySQL-Benchmark durchschnittlich 16 Prozent der CPU-Ressourcen zu. Bei acht aktiven virtuellen Maschinen teilt ESX Server bei zwei Opteron 254 den VMs jeweils zirka 10 Prozent zu. Die restlichen 20 Prozent benötigt die VMware-Lösung für die virtuellen Services sowie als „Reserve“.

VMware ESX Server: Analyse Opteron

Die MySQL-Performance der Opterons ist auf einem physikalischen Server um den Faktor vier schneller. Der Ansatz von ESX Server ist aber nicht eine optimale Performance und Auslastung des Systems bei nur einer virtuellen Maschine. Die VMware-Lösung sorgt bei einer Vielzahl von VMs für die optimale Auslastung eines Servers.

Aus unseren Messungen wird auch deutlich, dass der ESX Server optimal arbeitet, wenn die Workloads der einzelnen VMs den Prozessor und Speicher nur mäßig auslasten. Arbeiten dann viele VMs parallel, so sorgen diese für eine insgesamt optimale Auslastung des Servers. Workloads mit sehr hohen Anforderungen an die CPU und die Speicherbandbreite sind auf dedizierten physikalischen Servern nach wie vor besser aufgehoben.

Beim ESX Server bieten ein und zwei Opteron 280 bei nur einer aktiven VM die annähernd identische Performance beim MySQL-Benchmark. Ab zwei VMs bricht die Datenbankgeschwindigkeit bei einem Opteron 280 dagegen deutlich schneller ein. Bei fünf parallel agierenden virtuellen Maschinen arbeitet ein 280er wieder schneller als zwei Dual-Core-Opterons. Das Ressourcen-Management von ESX Server behält bei der 2-Wege-Konfiguration mehr Rechenleistung in Reserve. Mit zwei Opteron 280 bleibt die MySQL-Performance bei sieben und acht parallel arbeitenden VMs praktisch noch identisch – erst ab 9 VMs erfolgt langsam der Einbruch. Ein einzelner Opteron 280 bricht bereits bei acht VMs wieder verstärkt ein.

Die Performance-Kurve von zwei Opteron 254 (Single-Core) liegt annähernd parallel zu einem 280er Dual-Core-Opteron. Durch ihre 400 MHz höhere Taktfrequenz arbeiten die zwei 2,8-GHz-CPUs zwischen sieben und 20 Prozent schneller als ein Opteron 280.

VMware ESX Server: Analyse Xeon

Auffällig bei den Linux-Datenbank-Benchmarks ist die deutlich höhere Performance der Opteron-Plattform mit VMwares ESX Server im Vergleich zu den Xeons. Zwei Opteron 254 arbeiten beispielsweise bei einer aktiven VM um den Faktor 2,4 schneller als zwei Xeon 3,60 GHz 2M L2. Ohne ESX Server direkt unter Linux sind die Opterons nur 1,4-mal flinker.

Erzeugen im ESX Server acht VMs gleichzeitig Last, sorgt das Opteron-254-Doppelpack für eine immer noch 1,5-mal so hohe Performance als die Xeons. Die Xeon-Prozessoren halten dafür ab vier VMs die annähernd identische Leistung aufrecht.

Die Irwindale-Xeons bieten beim Datenbank-Benchmark direkt unter Linux zirka die siebenfache Performance als mit VMwares ESX Server in einer aktiven Linux-VM. Arbeiten 10 VMs parallel, so dauert der MySQL-Benchmark in jeder VM auch knapp 10-mal so lang als direkt unter Linux ohne ESX Server. Doch insgesamt ist Durchsatz in den 10 VMs vergleichbar mit der erbrachten Leistung einer Datenbank direkt unter Linux.

Sind die zwei Xeon 3,60 GHz 2M L2 dagegen nur mit fünf VMs beschäftigt, so beträgt deren summierte Performance nur die Hälfte der singulären MySQL-Leistung ohne ESX Server. Damit die Gesamt-Performance aller VMs mit der Geschwindigkeit des physikalischen Servers vergleichbar wird, sollten beim Irwindale-Doppelpack mindestens acht bis zehn VMs im Einsatz sein. Bei den Opterons stellt sich dieses Verhältnis bereits ab der siebten virtuellen Maschine ein.

Bei den 3,60-GHz-Xeons wirkt sich die L2-Cache-Verdopplung von 1 auf 2 MByte deutlich auf die Geschwindigkeit in den VMs aus. Die Irwindale-Xeons mit 2 MByte L2-Cache sorgen beim ESX Server für eine zirka 30 Prozent höhere Performance im Vergleich zu den Nocona-Modellen. Auf einem physikalischen Server mit Linux arbeitet der Xeon 3,60 GHz 2M L2 beim MySQL-Benchmark dagegen maximal acht Prozent schneller als der Nocona-Xeon (1M L2). Seinen größeren L2-Cache nutzt der Irwindale-Xeon somit gewinnbringend zum Puffern von Virtualisierungs-Routinen.

Cache/Speicher: 32-Bit-Transfer

Die Cache- und Speicher-Performance der Prozessoren überprüfen wir mit unserem Programm tecMem aus der tecCHANNEL Benchmark Suite Pro unter Windows Server 2003. tecMem misst die effektiv genutzte Speicherbandbreite zwischen der Load-/Store-Unit der CPU und den unterschiedlichen Ebenen der Speicherhierarchie (L1-, L2-Cache und RAM). Die Ergebnisse erlauben eine getrennte Analyse von Load-, Store- und Move-Operationen.

Cache/Speicher: 64-Bit-Transfer

Hier testen wir mit tecMem die Performance mit den 64-Bit-Load und -Store-Kommandos aus dem MMX-Befehlssatz. Die Transferrate ist hier schon deutlich höher als bei den 32-Bit-Kommandos, da die CPU mit jedem Befehl mehr Daten transferieren kann.

Cache/Speicher: 128-Bit-Transfer

Mit den 128-Bit-SSE-Befehlen lässt sich die maximale Cache- und Speicher-Performance ermitteln, die eine CPU erreichen kann.

Listenpreise

Hinsichtlich der Preise empfiehlt es sich, gelegentlich einen Blick auf die offiziellen Listen der CPU-Hersteller zu werfen. Bei AMDs Preisliste gab es am 26. September 2005 die letzten Änderungen. Intels Preisliste wurde am 11. September 2005 aktualisiert.

OEM-Preise im Vergleich

Modell

Taktfrequenz [MHz]

Preis [US-Dollar]

Alle Preise in US-Dollar, bezogen auf eine Abnahmemenge von 1000 Stück. Stand: AMD-Preisliste vom 26. September 2005, Intel-Preisliste vom 1. September 2005.

Opteron 1xx

Opteron 140 EE

1400

218

Opteron 144

1800

125

Opteron 146

2000

183

Opteron 146 HE

2000

218

Opteron 148

2200

263

Opteron 148 HE

2200

417

Opteron 150

2400

367

Opteron 152

2600

799

Opteron 165

1800

417

Opteron 170

2000

475

Opteron 175

2200

530

Opteron 180

2400

799

Opteron 2xx

Opteron 240 EE

1400

316

Opteron 242

1600

163

Opteron 244

1800

163

Opteron 246

2000

209

Opteron 246 HE

2000

316

Opteron 248

2200

316

Opteron 248 HE

2200

690

Opteron 250

2400

455

Opteron 250 HE

2400

851

Opteron 252

2600

690

Opteron 254

2800

851

Opteron 260 HE

1600

851

Opteron 265

1800

690

Opteron 265 HE

1800

1051

Opteron 270

2000

851

Opteron 275

2200

1051

Opteron 280

2400

1299

Opteron 8xx

Opteron 840 EE

1400

698

Opteron 842

1600

698

Opteron 844

1800

698

Opteron 846

2000

698

Opteron 846 HE

2000

698

Opteron 848

2200

698

Opteron 848 HE

2200

1165

Opteron 850

2400

873

Opteron 850 HE

2400

1514

Opteron 852

2600

1165

Opteron 854

2800

1514

Opteron 860 HE

1600

1514

Opteron 865

1800

1165

Opteron 865 HE

1800

2149

Opteron 870

2000

1514

Opteron 875

2200

2149

Opteron 880

2400

2649

Xeon Irwindale

Xeon 3,00E GHz

3000

256

Xeon 3,20E GHz

3200

316

Xeon 3,40E GHz

3400

455

Xeon 3,60E GHz

3600

690

Xeon Nocona

LV Xeon 2,80 GHz

2800

259

Xeon 2,80D GHz

2800

198

Xeon 3,00D GHz

3000

256

Xeon 3,20D GHz

3200

316

Xeon 3,40 GHz

3400

455

Xeon 3,60 GHz

3600

690

Die 1000er Preise in den Tabellen sind auch ein Anhaltspunkt für die deutschen/europäischen Endkundenpreise in Euro. Unter Berücksichtigung der Mehrwertsteuer und einer Händlermarge ergibt sich annähernd dieses Preisgefüge. Nachfolgend finden Sie einen Link zu den aktuellen Endkundenpreisen.

tecCHANNEL Preisvergleich & Shop

Produkte

Info-Link

Prozessoren

Preise und Händler

Fazit

AMDs Opteron 280 mit Dual-Core-Technologie ist bei 2-Wege-Systemen momentan das Maß der Dinge. Sobald multithreaded programmierte Anwendungen ins Spiel kommen, bleibt den mit höherer Taktfrequenz arbeitenden Single-Core-Modellen keine Chance – egal ob Xeon 3,60 GHz oder Opteron 254.

Gerade im Serverumfeld sind Singlethread-Programme oder Single-Task-Szenarien längst passé. Beispielsweise wenn von vielen Clients gleichzeitig Anfragen an eine Datenbank auf dem Server erfolgen. So erreicht der Dual-Core-Opteron-280 unter Linux bei der SMP-fähigen MySQL-Datenbank sowohl in der 1- als auch 2-Wege-Konifguration die meisten Transaktionen pro Sekunde. Im Vergleich der Single-Core-Modelle wechseln sich der Xeon 3,60 GHz und Opteron 254 ab – die Unterschiede sind nicht weltbewegend.

Für eine Überraschung sorgte die deutlich höhere Performance der Opteron-Plattform mit der Virtualisierungslösung VMware ESX Server. Egal ob Opteron 254 oder 280, die 3,60-GHz-Xeons mit 2 MByte L2-Cache erreichen hier teilweise nur die halbe Performance. Dabei arbeiten die Irwindale-Xeons durch ihren größeren Cache bereits 30 Prozent schneller als die Nocona-Xeons mit 1 MByte L2-Cache.

Bei VMwares ESX Server gibt es durch die Multi-User-Workloads eine massive Speicheraktivität. Hier profitieren die Opterons von den geringen Latenzzeiten ihrer integrierten Memory-Controller optimal. Bei Intels Xeon-Plattform sind beide CPUs über einen gemeinsamen FSB mit dem Chipsatz verbunden und greifen darüber auf den Speicher zu. Dadurch erhöhen sich die Latenzzeiten und das Bus-Sharing schränkt die Bandbreiten ein.

Nicht ohne Grund erhält bei Intels nächster Xeon-Plattform “Bensley” (Launch: Q1 2006) jeder Prozessor seinen eigenen FSB. Zudem stehen dann vier FB-DIMM-Speicherkanäle zur Verfügung. Virtualisierungsszenarien wie mit dem ESX Server sollten davon deutlich profitieren. Zudem unterstützen die Xeons mit Vanderpool dann auch die Virtualisierung auf CPU-Ebene unterstützen.

Noch im vierten Quartal 2005 führt Intel mit dem Paxville DP für vorhandene Plattformen die Dual-Core-Technologie bei den Xeons ein. Damit dürfte Intel den Dual-Core-Opterons wieder etwas mehr fordern. (cvi)

Testkonfiguration

Für den Test der Opteron-CPUs von AMD verwenden wir ein Tyan K8WE mit NVIDIAs nForce-Professional-Chipsatz. Über ihren integrierten Memory-Controller greifen die CPUs auf Dual-Channel-DDR400-SDRAM mit CL3 zurück. Die verwendeten Corsair-Module sind dabei gepuffert ausgeführt.

Irwindale- und Nocona-CPUs nehmen in einem Supermicro X6DA8-G2 Platz. Das Mainboard für zwei Prozessoren verwendet Intels E7525-Chipsatz und unterstützt DDR2-400-SDRAM in einer Dual-Channel-Konfiguration. Bei den Speichermodulen setzen wir auf Registered DIMMs PC2-3200R von Infineon mit einer CAS-Latency von 3.

Um die gleiche Testkonfigurationen zu gewährleisten, stehen den Prozessoren jeweils 4 GByte Arbeitsspeicher zur Verfügung. Einheit herrschte auch beim Massenspeicher, der sich aus Ultra320-SCSI-Festplatten mit 10.000 U/min aufbaut. Anschluss finden die Laufwerke an Adaptecs 2200S SCSI-RAID-Controller mit 64 MByte Cache.