single vs - Weblearn

Transcription

single vs - Weblearn
single vs. dual core
Leistungsvergleich mobiler Intel-Systeme
vorgelegt von
Frank Kuchta
Matrikel-Nr. 127685
Markus Rüger
Matrikel-Nr. 125575
Semester I7I
Im Fach Rechnerstrukturen – Labor bei
Herrn Prof. Dr. Thomas Risse
Hochschule Bremen – Fachbereich 4, Elektrotechnik & Informatik
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
Inhaltsverzeichnis
1.
2.
3.
Motivation ............................................................................................................ 3
Ziel & Aufgabendefinition..................................................................................... 3
– Hardware - Architektur....................................................................................... 4
3.1. Pentium M Serie (Banias - Architektur) ........................................................ 5
3.2. W eitere n tw icklu n g C o d e n a m e : „D o th a n“...................................................... 7
3.3. Dual-C o re P ro ze sso r “Y o n a h” ...................................................................... 7
3.4. Intel Core 2 Duo / Intel Core-Mikroarchitektur .............................................. 9
4. Testumgebung................................................................................................... 10
4.1. Hardware .................................................................................................... 10
4.2. CPU Z ........................................................................................................ 12
5. Benchmarks ...................................................................................................... 12
5.1. Vorbetrachtung ........................................................................................... 12
5.1.1. Software .............................................................................................. 12
5.1.2. Anwendertests .................................................................................... 13
5.2. Kompression .............................................................................................. 13
5.3. Audio .......................................................................................................... 15
5.4. Video .......................................................................................................... 16
5.5. Grafik Rendering ........................................................................................ 18
5.6. Zwischenbetrachtung ................................................................................. 21
5.7. RSA Verschlüsselung ................................................................................. 19
5.8. SyncAccess ................................................................................................ 21
5.9. DualSlow .................................................................................................... 24
6. Fazit................................................................................................................... 29
7. Quellen .............................................................................................................. 31
8. Anhang .............................................................................................................. 35
8.1. Reports der verwendeten Systeme ............................................................ 35
8.1.1. Single Core Systeme .......................................................................... 36
8.1.2. Dual Core Systeme ............................................................................. 38
Abbildungsverzeichnis
Abbildung 1: Banias-Kern [Banias] ............................................................................. 5
Abbildung 2: Dothan-Kern [Dothan] ............................................................................ 7
Abbildung 3: Yonah-Kern [Yonah] .............................................................................. 8
Abbildung 4: Merom-Kern [Merom] ............................................................................. 9
Abbildung 5 Kompression Benchmark-Ergebnisse ................................................... 14
Abbildung 6: Screenshot von LAME ......................................................................... 15
Abbildung 7: Audio Benchmark-Ergebnisse ............................................................. 16
Abbildung 8: Video Benchmark-Ergebnisse ............................................................. 17
Abbildung 9: Cinebench Benchmark-Ergebnisse ..................................................... 18
Abbildung 10: RSA Benchmark-Ergebnisse ............................................................. 20
Abbildung 11: SyncAccess Benchmark-Ergebnisse ................................................. 22
Abbildung 12: DualSlow-Benchmark, Datengröße bis 2000kByte ............................ 25
Abbildung 13: DualSlow: absolvierte Schleifendurchläufe / Zeit (1) .......................... 26
Abbildung 14: DualSlow: absolvierte Schleifendurchläufe / Zeit (2) .......................... 27
Abbildung 15: DualSlow-Benchmark, Datengröße bis 3000kByte ............................ 28
Abbildung 16: Preisübersicht aktueller Notebooks [Saturn] ...................................... 29
Abbildung 17: Preisübersicht Intel mobile Prozessoren [alternate] ........................... 30
Seite 2 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
1. Motivation
Der PC-Markt hat in diesem Jahr eine Kehrtwende erlebt. Das Ende immer höherer
Taktfrequenzen scheint erreicht.
Die Erhöhung der Taktfrequenz erfordert eine höhere Betriebsspannung. Die
Leistungsaufnahme wächst jedoch mit dem Anstieg der
Spannung ungefähr quadratisch. Daher hat man sich dazu
entschieden, Entwicklungen in Richtung von Taktraten im
Bereich von 10 GHz nicht weiter zu verfolgen.
Der Chiphersteller Intel hat mit aufwendigen MarketingM a ß n a h m e n d ie Z e ite n d e s „M u lti-C o re“ S yste m s e in g e läu te t.
„M u ltiplizie ren S ie Ih re Möglichkeiten und die Ihres
C o m p u te rs“ [Zitat Intel 1] heißt es in einer Werbebotschaft auf
der Internet-Seite des Marktführers im PC Prozessor-Umfeld.
Im Endkunden – Bereich werden derzeit Dual-Core-Prozessoren beworben, die im
Gegensatz zu bisher üblichen Rechenwerken aus zwei Prozessor-Kernen bestehen.
Für den Business- bzw. Server-Bereich sind bereits Quad-Core-Prozessoren
verfügbar. Es ist geplant die Entwicklung nun zu immer mehr Kernen zu treiben, und
nicht wie bisher die Leistungssteigerung durch Erhöhung der Taktrate zu erreichen.
Dem Endkunden stellt sich die Frage, welche Vorteile sich für Ihn ergeben. Die
Hersteller werben bei Dual-Core-S yste m e n m it e in e r „d o p pe lte n P ro ze sso rleistu ng
fü r m e h r M u ltita skin g “ [Zitat Intel 2]. Aber was steckt wirklich dahinter? Wie hoch sind
der Leistungsgewinn und der praktische Nutzen wirklich?
Diese konkreten Fragen von Anwendern wollen wir mit dieser Ausarbeitung auf den
Grund gehen.
2. Ziel & Aufgabendefinition
Um uns der Fragestellung der Anwender zu nähern werden wir nachfolgend die
wesendlichen Änderungen in der Architektur von Single- und Dual-Core Prozessoren
erläutern. Wir werden einen Leistungsvergleich auf Anwendungsebene durchführen,
um direkt eine Aussage zum praktischen Nutzen eines Dual-Core-Systems geben zu
können.
Des Weiteren werden wir die Systeme auf technischer Ebene beleuchten, um ggf.
Probleme bzw. Schwachstellen auszumachen.
Ziel ist es, für die verschiedenen Fälle einen Beschleunigungsfaktor anzugeben.
Wir beschränken unsere Betrachtungen auf die derzeitigen Prozessoren der Firma
Intel, die für den mobilen Einsatzbereich konzipiert sind. Hier stehen uns geeignete
Geräte für Leistungsmessungen innerhalb des Semesterverbandes zur Verfügung.
Die Prozessoren im Desktop- bzw. Server-Bereich werden für andere Anforderungen
entwickelt und lassen sich deshalb nicht direkt mit den Mobil-Prozessoren
vergleichen.
Seite 3 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
Zudem stehen uns hierfür keine Geräte zur Leistungsmessung zur Verfügung.
Ebenso fehlen vergleichbare Geräte von anderen Herstellern, z.B. AMD.
3. –Hardware - Architektur
Im wesendlichen gibt es fünf Architekturen der Firma Intel, die heutzutage in mobilen
Geräten zu finden sind. Die so genannte P6-Core-Architektur, auf der der Pentium III
basierte, stammt im Ursprung vom PentiumPro aus dem Jahre 1995 ab.
Mobile Pentium III Prozessoren basieren auf dieser Architektur.
Die Netburst – Architektur stellte den Nachfolger dar, sie wurde für den Pentium 4
entwickelt. Sie wurde im Jahre 2006 eingestellt, nachdem sich ein Ende bei der
Erhöhung der Taktfrequenz abzeichnete.
Es gibt drei mobile Varianten des Pentium 4. Da die Netburst – Architektur jedoch
sehr viel Energie benötigt sind diese Prozessoren nicht sehr erfolgreich gewesen.
Die erste Serie von Prozessoren, die im Jahre 2003 konsequent für den mobilen
Anwendungsbereich entwickelt wurde, ist die Banias – Architektur. Diese finden wir
h e u te in de n m e iste n N o teb o o ks die u n ter d em L a b e l „C e n trino “ od e r P e n tiu m M
verkauft werden.
„Yonah“ ist als vierte wichtige Architektur zu nennen. Dabei handelt es sich um den
ersten mobilen Dual-Core Prozessor der Firma Intel, der im Jahre 2006 erschienen
ist. Er basiert dem „Banias“ b zw . „D o th an “-Kern und wird deshalb auch noch unter
d ie ser A rchite ktu r au fg e füh rt. V e rtrie b en w ird e r u n ter d e m N a m e n „C o re S o lo “ w e n n
e r n u r ü b e r ein e n K ern ve rfü g t b zw . als „C o re D u o “ in d er D u al-Core Variante.
Im Herbst 2006 wurde die Intel Core-Mikroarchitektur vorgestellt. Hier wurden im
B e zu g a u f d en V o rg ä ng e r „Y o n a h “ einig e Ä n de ru n g en d u rch g e fü hrt, die zu ein er
eigenen neuen Architektur führten. Der neu entstandene Mobil-Prozessor
„M e ro m “ trä g t d e n H a nd eln a m e n „C o re 2 D uo“.Z u de m w u rd e d ie E n tw icklu ng m it d e r
Desktop- und Server-Sparte wieder zusammengeführt.
Aufgrund der vielfältigen Prozessorlandschaft müssen wir unsern Focus eingrenzen.
Derzeit sind Notebooks mit den Prozessor-K ern e n „D oth a n“, „Y o n ah “ u nd
„M e ro m “ e rh ä ltlich .
Die Architekturen dieser Prozessoren werden wir genauer beleuchten.
Vorrab seien kurz einige allgemein gültigen Dinge erläutert:
Die typische Verlustleistung von Prozessoren wird als „T h e rm a l D e sig n P o w e r“ (TDP)
bezeichnet und in Watt gemessen. Diese wird als Grundlage zur Berechnung der
Kühlung verwendet. Mit speziellen CPU-Testprogrammen simuliert der ChipHersteller eine typische Verwendung seines Produktes. Dabei wird der TDP-Wert
ermittelt.
Jeder Hersteller tut dies nach seinen eigenen Vorgaben, die nicht öffentlich sind.
Daher geben die TDP-Werte nicht unbedingt Aufschluss über die tatsächlich
Seite 4 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
umgewandelte Leistung. Zudem spiegelt der TDP-Wert nicht die maximale
th e rm isch e B e la stu n g w ied e r, d a die C P U b eim T e st „typisch “ u n d nich t m a xim a l
belastet wird.
3.1.
Pentium M Serie (Banias - Architektur)
Bei der Banias – Architektur wurde die gesamte Entwicklung für eine Verwendung im
Mobilbereich ausgerichtet. Es galt also, den Stromverbrauch zu verringern, die
Leistungsfähigkeit zu steigern und den Ansprüchen für mobiles Arbeiten gerecht zu
werden.
Abbildung 1: Banias-Kern [Banias]
Dazu wurde unter anderem die Micro-Ops Fusion Technologie eingeführt. Bevor die
Micro-Ops in den Scheduler gelangen, wird analysiert welche Operationen sich
zusammenfassen lassen. Somit wird der Scheduling-Aufwand reduziert. Erst vor den
parallelen Ausführungseinheiten werden Befehle wieder in einzelne Micro-Ops
zerlegt und auf die Einheiten aufgeteilt.
Dadurch muss der Scheduler weniger Einträge verwaltet, was die Performance
steigert und den Energiebedarf reduziert.
Diese Technik wurde auch auf Prozessoren der Netburst - Architektur angewandt.
Zudem wurde ein spezieller Ablaufmanager integriert. Befehle die sonst zu z.B. zu
Unterbrechungen führen würden werden von dieser dedizierten Hardware
abgearbeitet. Dies sind z.B. die Stack-Operationen push, pop, call und ret. Dadurch
können die Ausführungseinheiten ohne Unterbrechung das eigentliche Programm
bearbeiten.
Durch falsche Sprungvorhersagen kommt es häufig zu Stalls und
Befehlswiederholungen. Dies kostet Performance und erhöht den Stromverbrauch.
Deshalb wurde die Banias-Architektur mit einer "Advanced Branch Prediction"
ausgestattet.
Seite 5 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
Dabei handelt es sich um drei Vorhersage-Einheiten, wobei der Prozessor selbst den
für den Anwendungsfall besten Predictor auswählt. Es gibt einen globalen, einen bimodalen sowie einen Schleifen Predictor.
Der bi-modale Predictor ist im wesendlichen eine Moore-Maschine mit 4 Zuständen.
Dabei wird zwischen den Zuständen Strongly not taken, Weakly not taken, Weakly
taken und Strongly taken unterschieden. Dabei werden die letzten Bits der Instruktion
genommen, um auf eine der Moore-Maschinen zu verweisen.
Bei dem globalen Predictor handelt es sich um eine Index-Tabelle, die auf einzelne
bi-modale Predictoren verweist. Der Schleifen Predictor besteht aus zwei IndexTabellen und hat die Aufgabe korekte Vorhersagen für die Schleife als auch für den
Abbruch zu tätigen.
Ausführeinheiten bzw. Teile davon, die für eine Befehlsabarbeitung nicht benötigt
werden, können automatisch abgeschaltet werden. Das Ein- und Ausschalten
geschied innerhalb eines Taktzykluses. Durch diese Funktion wird Energie
eingespart.
Der Level-2 Cache des Banias ist 8-fach assoziativ und verfügt über eine Kapazität
von 1 MByte. Jede Cachline ist in 4 Bereiche unterteilt. Ein Quadrant Selector kann
gezielt jedes der insgesamt 32 Felder ansprechen. Felder, die nicht belegt sind,
werden in einen Energiesparmodus geschaltet.
Jeder Prozessor verfügt über Buffer-Schaltungen, die die Busspannungen für den
Prozessor konvertieren. Diese Schaltkreise haben einen sehr hohen Energiebedarf.
Bei der Banias - Architektur werden diese nur bei Bedarf mit Strom versorgt.
Jeder Prozessor verfügt über Buffer-Schaltungen, die die Busspannungen für den
Prozessor konvertieren. Diese Schaltkreise haben einen sehr hohen Energiebedarf.
Beim Banias werden diese nur bei Bedarf mit Strom versorgt.
Die Banias - Architektur kann wie schon die Pentium-4-Prozessoren die SSE2
Befehle verarbeiten. Dabei handelt es sich um 144 neue zusätzliche Befehle, u.a.
sind nun 128 Bit breite Integer- und Floating-Point-Operationen möglich. Da jedoch
n u r 6 4 B it A L U ’s vo rh a n d en sin d , m ü sse n d iese in zw e i S ch ritte n a u sg e fü h rt w e rd e n .
Der Front-Side-Bus wird mit 400 MHz getaktet. Zudem ist es möglich die
Taktfrequenz und Core-Spannung dynamisch an die Prozessorleistung anzupassen.
Dies ermöglicht eine weitere Energieeinsparung.
Der Banias-Kern wurde mit einer Strukturbreite von 130nm gefertigt. Je nach Version
gab es Taktraten von 1.3 bis 1.7 GHz. Dabei hatte die 1,7 GHz Version eine
Leistungsaufnahme von 24,5 Watt TDP.
Vertrieben wurde der Banias-Prozessor unter den Handelsnamen Pentium M bzw.
Centrino bis er vom Prozessor mit dem Codenamen Dothan abgelöst wurde.
Seite 6 von 39
Frank Kuchta, Markus Rüger
3.2.
single vs. dual core
RST-L WS06/07
W eiteren tw icklu n g C o d en am e: „D o th an “
Abbildung 2: Dothan-Kern [Dothan]
Der Dothan-Core ist der Nachfolger des Banias. Hier wurden einige Dinge geändert:
Die Strukturbreite wurde auf 90nm reduziert. Daher war es auch möglich, die Größe
des Level-2 Caches auf 2 MByte zu erhöhen und die Die-Größe nahezu
beizubehalten. Der L2-Cache ist 4-fach assoziativ. Die Prozessortaktrate wurde auf
bis zu 2 GHz erhöht. Die geringere Fertigungstechnik ermöglicht es unter anderem
auch, dass die Leistungsaufnahme bei 1,7 GHz auf 21 Watt TDP gegenüber dem
Banias mit 24 Watt TDP gesenkt werden konnte.
Es wurde ein so genannter Enhanced Data Prefetcher integriert. Dieser lädt
vorausschauend Daten in den L2-Cache, die demnächst benötigt werden.
Die Geschwindigkeit des Front-Side-Bus wurde auf 533 MHz erhöht. Daher
unterstützt der Dothan-Prozessor nun auch DDR2-Arbeitsspeicher.
Der Dothan-Prozessor wird unter den Handelsnamen Pentium M bzw. Centrino
vertrieben.
3.3.
Dual-C o re P ro zesso r “Y o n ah ”
Der Dual-Core-P ro ze sso r “Y o n a h ” b e ste h t im w e se n d lich e n au s zw e i “D o th a n ”Kernen. Diese verfügen jedoch über einen gemeinsamen Level-2 Shared Cache, der
2 MByte groß ist.
Beide Kerne sind in der Lage bei Bedarf den ganzen Cache zu nutzen. Dies ist z.B.
sinnvoll, wenn Programme in nur einem Thread laufen. D ie „D a ta S h arin g “ F u n ktion
des Caches ermöglicht es, das Daten die von beiden Ausführeinheiten benötigt
werden, nur einmal gemeinsam im Cache abgelegt werden.
Seite 7 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
Abbildung 3: Yonah-Kern [Yonah]
Das dieser Shared-Cache auch nachteilig sein kann, werden wir im späteren Verlauf
genauer aufzeigen.
Der Yonah-Kern wird in 65nm Technik gefertigt. Dies reduziert den Energiebedarf, da
die Leckströme verringert werden konnten und die Kernspannungen gesenkt wurden.
Der Dual-Core Prozessor ist mit einer Leistungsaufnahme von 31 Watt TDP
angegeben.
Weitere Energiesparmaßen wurden integriert. So kann z.B. der Inhalt des Caches
komplett in den Arbeitspeicher geladen werden, wenn beide Kerne keine
Berechnungen durchführen. Die Versorgungsspannung des Caches kann dann
abgeschaltet werden. Diese Funktion nennt Inte l „E n h a n ced D e e p er S le e p “.
Die Abschaltung momentan nicht genutzter Bereiche des Caches im Betrieb,
funktioniert genauso wie schon bei der Banias - Architektur. Der CPU Lüfter wird von
einem Baustein gesteuert, der die Prozessortemperatur stetig überwacht.
Die Decodierungseinheiten des Yonah-Kerns können nun direkt die 128-Bit langen
SSE2-Befehle verarbeiten. Die Micro-Ops Fusion funktioniert nun ebenfalls auch für
sie.
Die Abarbeitung von Division von Integer-Daten wurde ebenso wie einige SSE2Befehle um ca. 30 Prozent beschleunigt. Der Yonah-Kern unterstützt die neuen
Befehle der SSE3. Diese sind im wesendlichen für komplexe Arithmetik, Wandlung
von Gleitpunktzahlen in Ganzzahlen und Grafik-Aufbereitung.
Darüber hinaus wurde beim Yonah die Geschwindigkeit bei Integer-Divisionen
deutlich erhöht, vorrausgesetzt Dividend und Divisor liegen nahe beieinander.
Die Geschwindigkeit des Front-Side-Bus wurde nochmals erhöht. Sie beträgt nun
667 MHz.
Vermarktet wird der Prozessor unter dem Handelsnamen Intel Core Duo.
Prozessoren:
Seite 8 von 39
Frank Kuchta, Markus Rüger
3.4.
single vs. dual core
RST-L WS06/07
Intel Core 2 Duo / Intel Core-Mikroarchitektur
Abbildung 4: Merom-Kern [Merom]
Im Herbst 2006 wurde die neue Intel Mikroarchitektur eingeführt. Dabei wurde die
Entwicklung der Bereiche Server, Workstation und Mobile wieder zusammengeführt.
D e r m o b ile P ro ze sso r trä g t d e n C od e n a m e n „M e ro m “.
Hier wurden einige neue Funktionen, aber auch bereits existierende Funktionalitäten
aus anderen Prozessorfamilien integriert. Intel stellt diese unter sehr fragwürdigen
bzw. teilweise unpassenden Namen da.
„W id e D yn a m ic E xce tu tio n “ be sch reibt im w e se n d lich e n d a s Z iel, im m e r m e h r
Befehle pro Cycle zu verarbeiten. Dahinter verbergen sich drei Funktionen: Die
Micro-Ops Fusion ist bereits vom Banias bekannt. Dazu wurde eine Macro-Op
Fusion eingeführt. Die komplexe Decodereinheit ist in der Lage zwei x86-Befehle in
einem Takt zu decodieren. Dabei muss es sich jedoch um einen Vergleich sowie um
einen konditionalen Sprung handeln. Diese Kombination ist sehr häufig bei IF-THENELSE Kombinationen. Da beim Merom drei einfache Decodereinheiten sowie ein
komplexer Decoder vorhanden sind, ist der Prozessor unter idealen Bedingungen in
der Lage 5 x86-Befehle pro Cycle zu verarbeiten.
Der Extended Stack Pointer bildet die dritte Funktion. Dabei handelt es sich um einen
dedizierten Baustein der Stackpointer-B e fe hle b e a rb eite n . B ish e r w u rd en „p u sh “,
„p o p “, „h e ap “ u sw , vo n ein er In te g e r-ALU bearbeitet.
H in ter d er B e zeich n u ng „S m a rt M e m o ry A cce ss“ ve rb erg e n sich zw e i
Funktionalitäten, die die Bereitstellung der benötigten Daten optimieren sollen. Bei
der Memory Disambiguation werden load & store Operationen neu sortiert, falls sie
nicht von einander abhängig sind. Dadurch können load-Operationen schneller
ausgeführt werden, weil nicht vorab gewartet werden muss bis eine sonst
vorhergehende store-Operation abgeschlossen ist. Zusätzlich gibt es nun auch für
den L1-Data-Cache als auch für die Instruktionen Prefetcher-Einheiten.
Seite 9 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
H in ter d e m p o m p ö se n N a m e n „A d va n ce d D igita l M e dia B o o st“ ve rste ckt sich nichts
anderes als die Tatsache, dass der Merom-Kern nun über 3 SSE
Ausführungseinheiten verfügt. Diese sind in der Lage direkt 128 Bit SSE Befehle in
einem Takt zu verarbeiten.
Der L2-Data-Cache ist wie schon beim Yonah ein Shared-Cache. Er verfügt nun
jedoch über eine Kapazität von 4 MByte.
Die Entwicklung im Bereich der Energiesparmaßnahmen wurde fortgeführt. Die
Abschaltung nicht verwendeter Teile des Prozessors wurde verfeinert. So können
nun Bereiche des Datenpfades abgeschaltet werden, die nicht benötigt werden. Z.B.
wenn die zu transferierenden Daten nicht die gesamte Bitbreite des Datenpfades
benötigen.
D e r m o b ile P ro ze sso r u n terstü tzt nu n e rstm a ls d ie „E xte n d e d M e m o ry 6 4
T e ch n olog y“. D a be i h a n de lt e s sich u m e in e 64 B it E rweiterung die ursprünglich von
AMD entwickelt wurde. Dabei sind 16 Integer - General Purpose Register sowie 16
Register für SSE Befehlserweiterungen 64 bzw. 128 Bit breit.
Diese werden jedoch nur von Anwendungen genutzt, die in 64 Bit betrieben werden.
Bei 32 Bit Anwendungen werden nur wie bisher 8 Register verwendet. Zudem
werden nur 32 Bit angesprochen und die 32 High-Bits werden auf 0 gesetzt.
Als weitere neue Funktionalität ist zu nennen, dass der Prozessor nun mit der
Vanderpool - Technologie ausgestattet ist. Dabei handelt es sich um eine
Befehlssatzerweiterung zur Virtualisierungsunterstützung.
Der mobile Prozessor-Kern Merom wird unter dem Handelsnamen Core 2 Duo
vertrieben.
4. Testumgebung
Uns stehen aus der Studentenschaft verschiedene Notebooks zu Testzwecken zur
Verfügung. Für die Benchmarks verwenden wir frei erhältliche Software-Pakete,
sowie selbst programmierte Anwendungen.
4.1.
Hardware
Für unsere Untersuchung stehen uns zwei Single-Core sowie zwei Dual-CoreSysteme zur Verfügung. Die Single-C ore N o teb o o ks ve rfü g e n üb e r e in e n „D o th a n“K e rn , „Y o n a h“ ste ckt in b eid e n D u al-Core-Geräten.
Es steht uns kein Dual-Core-S yste m m it d e m n e u e n „M e ro m “-Kern zur Verfügung.
Ein Single-Core sowie ein Dual-Core Notebook arbeiten mit einer Taktrate von 1,6
GHz. Zudem führen wir unsere Tests auf einem 2,1 GHz Single-Core
„D o th a n “ S yste m m it 2 ,1 G H z P ro ze sso r-Taktrate, sowie einem 2,0 GHz Dual-Core
„Y o n a h “ S yste m a u s.
Seite 10 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
Frank Kuchta vs. Markus Hanses
Intel Pentium M 725
Number of cores
Code Name
Technology
Core Speed
L1 Data cache
1
Dothan
90 nm
1616.9 MHz
32 KBytes, 8-way set
associative, 64-byte line size
L2 cache
2048 KBytes, 8-way set
associative, 64-byte line size
Instruction sets
MMX, SSE, SSE2
Memory
DDR - 1280 MBytes
168.4 MHz
Windows Version Microsoft Windows XP Home
Edition Service Pack 2
Intel Core Duo T2300
2
Yonah
65 nm
1651.1 MHz
2 x 32 KBytes, 8-way set
associative, 64-byte line size
2048 KBytes, 8-way set
associative, 64-byte line size
MMX, SSE, SSE2, SSE3
DDR2 - 2048 MBytes
264.2 MHz
Microsoft Windows XP Home
Edition Service Pack 2
Der Intel Pentium M verfügt nur über DDR Memory, der deutlich langsamer getaktet
ist.
Holger Wolf vs. Markus Rüger
Intel Pentium M 770
Number of cores
Code Name
Technology
Core Speed
L1 Data cache
1
Dothan
90 nm
2131.5 MHz
32 KBytes, 8-way set
associative, 64-byte line size
L2 cache
2048 KBytes, 8-way set
associative, 64-byte line size
Instruction sets
MMX, SSE, SSE2
Memory
DDR2 - 1024 MBytes
266.4 MHz
Windows Version Microsoft Windows XP
Professional Service Pack 2
Intel Core Duo T2500
2
Yonah
65 nm
1999.4 MHz
2 x 32 KBytes, 8-way set
associative, 64-byte line size
2048 KBytes, 8-way set
associative, 64-byte line size
MMX, SSE, SSE2, SSE3
DDR2 – 2048 MBytes
333.2 MHz
Microsoft Windows XP
Professional Service Pack 2
Der Arbeitsspeicher bzw. Der Frontside-Bus des Dual-Core Systems wird mit einer
höheren Taktrate betrieben, als der Pentium M. Dieser jedoch weißt einen höheren
Prozessortakt als der Core Duo aus.
Die Chipsätze sind bei den verwendeten Systemen verschiedene. Ebenso
unterscheiden sich die eingesetzten Festplatten. Deshalb führen wir die
Testprogramme von einer USB-Festplatte aus, um überall annähernd gleiche
Festplattenbedingungen herzustellen.
Aufgrund der unterschiedlichen Hardware erwarten wir Auswirkungen auf unsere
Messergebnisse.
Seite 11 von 39
Frank Kuchta, Markus Rüger
4.2.
single vs. dual core
RST-L WS06/07
CPU Z
Das Tool CPU Z ist ein Freeware-Programm von Franck Delattre. Es gibt detaillierte
Information über die Hardware des Computers aus. Z.B. die Daten des Prozessors,
der Caches, des Speichers, des Chipsatzes oder des Betriebsystems.
Wir verwenden CPU Z um die Daten unserer Testgeräte auszulesen. Dies ermöglicht
es uns, die Ergebnisse unserer Tests besser deuten zu können. Die ausführlichen
Reports befinden sich im Anhang.
5. Benchmarks
Ein genereller Vergleich zwischen Single- und Dual-Core Prozessoren ist schwierig
und wenig aussagekräftig. Denn häufig haben sich durch die Weiterentwicklung auch
weitere Bausteine im Gesamtsystem geändert.
Zudem wird im Umfeld der ursprünglichen x86-Architektur inzwischen in
verschiedene Richtungen bezogen auf die Anwendungsgebiete (Mobile, Workstation,
Server, Home - Entertainment, Games) die Entwicklung voran getrieben.
Wir vergleichen daher Prozessoren miteinander, die für den mobilen Einsatz
entwickelt wurden. Die Anforderungen sind nach wie vor dieselben; energieeffizient
aber leistungsfähig für das mobile arbeiten.
5.1.
Vorbetrachtung
5.1.1. Software
Als Betriebsystem für unseren Test verwenden wir Windows XP Service Pack 2,
Home und Professionell Edition. Diese Versionen sind auf den uns vorliegenden
Systemen bereits installiert. Zudem verfügen wir nicht über ausreichend Erfahrung im
Linux/Unix-Umfeld um in der kurzen Zeit ähnliche Tests auf einem derartigen System
durchführen zu können.
Im Bereich der Notebooks verfügt Windows XP als Betriebsystem über den größten
Marktanteil. Bezogen auf unsere Zielsetzung, die Fragestellung der Anwender zu
beantworten, erscheint uns diese Wahl daher als richtig.
Windows XP unterstützt mehrere Prozessoren. Es ist jedoch nicht bekannt, wie diese
behandelt werden. In der Regel verteilt das Betriebsystem eigenständig
verschiedene Threads auf die einzelnen Prozessoren. Nach welchen Regeln dies
erfolgt ist nicht offen gelegt.
Der Benutzer hat allerdings die Möglichkeit sich anzeigen zu lassen, welcher Prozess
aktuell auf welchem Core läuft. Zudem ist es möglich nachträglich für einen
Seite 12 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
laufenden Prozess über den Task-M a n a g e r au szu w ä h le n , w e lche C P U ’s d ie se r
verwenden darf.
Die klassischen Office-Programme Word, Excel und auch OpenOffice nutzen
Multithreading. In der Regel ist es aber nur schwer möglich ein modernes PC-System
mit diesen Anwendungen an die Grenzen zu führen.
5.1.2. Anwendertests
Computerzeitschriften führen in regelmäßigen Abständen Anwendertests durch, um
die aktuell verfügbare Hardware zu vergleichen. Dabei werden häufig Werkzeuge
eingesetzt, z.B. PCMark 05, SiSoft Sandra 2006 uvm.
Diese Programme führen Testroutinen aus, und vergeben am Ende Punkte, mit
deren Hilfe dann ein Ranking erfolgt. Was genau getestet wird, bzw. wie diese
Testroutinen aussehen, bleibt verborgen.
Wir haben uns daher entschlossen, Anwendertests durchzuführen, die auf einen
praktischen Nutzen schließen lassen. Die Computerzeitschrift ct hat ähnliche
Testfälle verwendet, um den Beschleunigungsfaktor eines Dual-Core Systems
gegenüber einem Single-Core System zu ermitteln.
Dabei kam heraus, dass Dual-Core Systeme ungefähr um den Faktor 1,8x schneller
sind, als vergleichbare Single-Core Systeme. Vorausgesetzt die Anwendung
unterstützt 2 Threads optimal.
Wir testen das Verhalten bei der Kompression von Daten, umwandeln eines Videos
sowie eines Musikstückes und das Rendern einer aufwendigen Grafik.
5.2.
Kompression
Wir vergleichen das Komprimieren einer großen Video-Datei. Dazu verwenden wir
das Programm WinRAR der ROG GmbH, welches uns in der Shareware-Version zur
Verfügung steht. Dies ist unter anderem damit zu begründen, dass andere
Kompressionsprogramme wie z.B. Winzip 9.0 keine Threads unterstützen.
In den Release Notes von WinRAR finden wir drei interessante Aspekte:
WinRAR - Was ist neu in dieser Version?
Version 3.61
1. Es wurde ein Fehler im Textkompressionsalgorithmus für
Mehrprozessorsysteme korrigiert, der unter gewissen Umständen zu
fehlerhaften Archivdaten führen konnte.
Dieser Fehler trat nur in WinRAR 3.60 bei angeschaltetem Mehrprozessormodus
auf. Andere RAR-Versionen waren nicht betroffen.
[...]
1. Rechner mit mehreren Prozessoren , Dual-Core-Prozessor und
Hyperthreading werden durch einen optimierten Komprimierungsalgorithmus
besser unterstützt und komprimieren schneller. Die Multithreading-Fähigkeit
ist in den Standardeinstellungen aktiviert und kann dort auch abgestellt
Seite 13 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
werden. Der Schalter -mt<Threads> ermöglicht Ihnen in der
Befehlszeilenversion, die gewünschte Anzahl der Threads festzulegen.
[…]
10. Beim Geschwindigkeits- und Hardwaretest kann die Option
"Multithreading" aktiviert werden. So ist ein Vergleich zwischen dem
herkömmlichen und dem für Mehrprozessorbetrieb optimierten
Komprimierungsalgorithmus möglich.
[…]
Als Testdatei wird eine ein ca. 42 MB große Video Datei genommen. Wir haben eine
Multimediadatei gewählt, um den Aufwand der Kompression möglichst hoch,
hingegen die Belastung der Festplatte niedrig zuhalten. Gemessen wird die Dauer
der Kompression in Sekunden. WinRar bietet mit dem Konsolenkommando
„m t< T h re a d s> “ die die M ö glich keit d ie A n za hl d e r T h re a d s, die verw e n d e t w e rd e n
sollen, festzulegen.
Abbildung 5 Kompression Benchmark-Ergebnisse
Die Single Core Systeme zeigten sich unbeeindruckt davon, ob WinRar mit 1, 2 oder
beliebig vielen Threads betrieben wurde. Wohingegen die beiden Dual-Core
Systeme bei dem Vergleich zwischen einem Thread und beliegen vielen Threads
einen Beschleunigungsfaktor von ca. 1,4 aufzeigten. Beim Komprimieren müssen die
Aufgaben ständig neu verteilt werden und nach Abschluss der Berechnung wieder
zusammengeführt werden. Daher war kein höherer Beschleunigungsfaktor zu
erwarten.
Randbemerkung:
Seite 14 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
Eines der beliebtesten Packer-Tools, das Programm WinZip, bietet selbst in der
neusten Version leider noch keine Multi-Thread/Core Unterstützung, weshalb unsere
Wahl auf das Programm WinRAR viel.
Beschleunigungsfaktoren:




5.3.
Audio
Für den Audio Kompressionstest wird das Tool LAME-MP3, in der derzeit neusten
Version 3.97, verwendet. Wegen der hohen Qualität wird der LAME Quellcode häufig
in Freeware-Programmen verwendet.
Abbildung 6: Screenshot von LAME
Es wird eine ca. 40 MB große WAV-Datei in MP3-128 kbit/s umgewandelt.
Gemessen wird die Zeit die der Prozess von LAME auf der CPU benötigt hat. Diese
Zeit wird von dem Programm, wie in Abbildung 6 zusehen ist, bereit gestellt.
Seite 15 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
Abbildung 7: Audio Benchmark-Ergebnisse
LAME MP3 konvertiert lediglich in einen Thread. Daher ergibt sich kein
bemerkenswerter Geschwindigkeitsvorteile aufgrund des Vorhandenseins von 2
Kernen. Abbildung 7 zeigt die Ergebnisse im Detail. Wir verzichten hier darauf, die
Beschleunigungsfaktoren aufzuführen.
5.4.
Video
VirtualDub ist ein kostenloser Video-Editor mit vielen Funktionen. Er ist deshalb sehr
weit verbreitet.
Wir wollen ein Video komprimieren, und die Zeit messen. Unser Testvideo ist 5,3 MB
groß. Es ist bereits vorkomprimiert, unkomprimiert würde es ca. 900 MB groß sein.
Xvid ist ein Open-Source MPEG-4 Video Codec, der auf den Sourcen des
ursprünglichen DivX Codec basiert. Er ist sehr populär, und viele Videos verwenden
diesen Codec. Wir entschließen uns daher zunächst unser Testvideo mit Xvid zu
komprimieren.
Seite 16 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
Abbildung 8: Video Benchmark-Ergebnisse
Die Ergebnisse überraschen uns. Alle Testsysteme benötigen zum komprimieren im
Schnitt zwischen 38 und 30 Sekunden. Gerade hier hätten wir einen deutlichen
Vorteil der neuen Technologie erwartet. Zumal Video-Bearbeitung häufig als
praktischer Anwendungsfall für leistungsstarke Systeme genannt wird.
Der Blick in die Sourcen von Xvid verrät uns, dass dieser Codec in nur einem Thread
arbeitet. Somit ergeben sich hier nur sehr minimale Vorteile für ein Dual-CoreSystem, nämlich die, dass andere Anwendungen sowie das Betriebsystem auf dem
zweiten Core arbeiten können und somit die Ausführung der Komprimierung nicht so
stark beeinflussen wie auf einem Single-Core-System.
Aufgrund dieses Ergebnisses führen wir einen zweiten Test durch, nun mit dem
Windows Media Video Codec 9. Diesen rufen wir ebenfalls mit VirtualDub auf.
Beschleunigungsfaktoren WMV Codec:


Hier ergeben sich die erwarteten Ergebnisse. Der WMV Codec scheint die
Komprimierung auf mehrere Threads aufzuteilen, sodass beide Kerne ausgenutzt
werden. Dadurch ergeben sich Beschleunigungsfaktoren von 1,86 bzw. 1,76, was
sich mit unseren Erwartungen denkt.
Seite 17 von 39
Frank Kuchta, Markus Rüger
5.5.
single vs. dual core
RST-L WS06/07
Grafik Rendering
Die Firma Maxon, die die Grafiksoftware CINEMA 4D herstellt, stellt einen speziellen
Benchmark kostenfrei zur Verfügung. CINEBENCH 9.5 basiert dabei auf der 3D
Bearbeitungssoftware.
Die Engine von CINEMA 4D zeichnet sich dadurch aus, dass sie nach eigenen
Angaben mehrere Prozessoren bzw. Kerne optimal ausnutzt. Im Bereich GrafikRendering wird dazu das gesamte Bild in zwei Teile aufgeteilt und diese werden
jeweils von einem Thread gerendert. Im Beispiel von Cinebench ist dabei der 1.
Thread auf einem Dual-Core-System deutlich früher fertig, als der zweite. Deshalb
wird das verbleibende Teilstück des zweiten Threads wieder in zwei Teile zerlegt und
an seperate Thread vergeben. Das der erste Thread deutlich schneller mit seiner
Aufgabe fertig ist, hängt von verschiedenen Faktoren ab. Zum einen liegt auf dem
einen Prozessorkern das gesamte Betriebsystem, zum anderen verfügt die
verwendete Grafik über aufwendige Texturen im mittleren Bereich. Zusätzlich gehen
wir davon aus, dass eine kurze Verzögerung in den Start eingebaut wurde, um
genau diesen Effekt darzustellen.
Abbildung 9: Cinebench Benchmark-Ergebnisse
Cinebench arbeit genauso wie fast alle anderen erhältlichen Benchmark-Tools mit
einem eigenen Messw e rt. D ie se r ne n n t sich „C B -C B L “. In d e r D o ku m e n ta tio n fin d e n
wir dazu keine genauen Informationen. Es wird bloß angegeben, dass dieser Wert
multipliziert mit 10 ungefähr den Prozessortakt ergeben sollte. Da diese Angabe
keinesfalls stimmt, und uns dieser Wert nicht aussagekräftig genug erscheint,
entschließen wir uns dazu, hier die Zeit zu messen, bis die Grafik vollständig
gerendert ist.
Die Anwendung erkennt, ob es sich um ein Dual-Core System handelt. Entsprechend
ist es auch nut auf diesen möglich, die Grafik in zwei Threads zu rendern.
Die Testergebnisse sind nicht überraschend aber erstaunlich. So übertreffen die
Beschleunigungsfaktoren dieser Tests den Daumenwert von 1,8 doch teilweise
deutlich.
Seite 18 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07




Gegenüber den Single-Core Systemen weisen die Dual-Core Maschinen eine
deutliche Beschleunigung auf. Zum einen natürlich durch die Aufteilung der Aufgabe
auf zwei Kerne, zum anderen aber auch durch eine bessere Anbindung des
Arbeitsspeichers. Die Effizienz der Aufteilung der Aufgabe alleine sieht man sehr
deutlich im Vergleich 1 Thread gegen 2 Threads auf den Dual-Core-Systemen mit
einem Beschleunigungsfaktor von 1,82 bzw. 1,83. Das Rendern einer Grafik eignet
sich also sehr gut, um es auf mehrere Berechnungseinheiten aufzuteilen.
5.6.
RSA Benchmark
Die folgenden eigenen Programme sind alle in C#2005 implementiert. Der Compiler
erstellt ähnlich wie Java ein Bytecode, der in einer Runtime ausgeführt wird. C#
bietet zwei Einstellungen für Compiler-Optimierungen: keine, und volle Optimierung
mit SSE und SSE2. Für Zeitmessungen bietet C# eine Auflösung von 10ns, was
deutlich genauer ist als bei Java.
Beim RSA Benchmark besteht die Aufgabe darin, einen gegeben Text zu
verschlüsseln bzw. zu entschlüsseln. Dabei messen wir die benötigte Zeit.
Der Programm wird mit festgelegten Parametern ausgeführt: Die Primzahlen p und q
sind dabei jeweils 128 Bit lang.
 p = 272841391209158082973553771691834107803
 q = 204529522774722087416736679430142573943
Mit p * q wird n bestimmt.
 n=
55804119537200356864262710503223737361364815547930284919191499
161941360777229
Der öffentlichen Schlüssel e ist ebenfalls 128 Bit lang. Der Wert ist random, jedoch
muss ggT(e, φ (n)) = 1 erfüllt werden.
 e = 299959329779933941214908800093326386487
Seite 19 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
Der geheime Schlüssel d wird errechnet, so dass e*d = 1 mod φ (n)
 d=
52697171591031710974197215140234759556016669833013983138526341
286792399231215
Als Text zum Verschlüsseln und anschließenden Entschlüsseln wird das Dokument
Heath.pdf als Text-Datei (833kb) verwendet.
Getestet wird in einer 1 und 2 Thread-Variante. In der 2 Thread-Variante wird der zu
verschlüsselnde String in 2 Hälften geteilt und beide Threads werden mit dem
Verschlüsseln „be a u ftra g t“. Da uns diese Aufgabe als geeignet für die Aufteilung auf
zwei Threads erscheint, erwarten wir einen Beschleunigungsfaktor im Bereich von
1,8.
Implementiert wurde der RSA-Benchmark in C# 2005, ohne Compiler Optimierung.
Abbildung 10: RSA Benchmark-Ergebnisse
Bereits bei einen Thread Encoding zeigt sich ein großer Abstand zwischen den
Single Core und Dual Core Prozessoren. Bei den 1,6 GHz Prozessoren noch größer
als bei den 2,1GHz und 2,0 GHz Prozessoren. Dieses erklärt sich durch die hohe
Anzahl von Speicher zugriffen, und dass die Single Core Systeme einen deutlich
langsameren RAM besitzen.
Ein direkter Vergleich zwischen den Single-/ und Dual Core Systemen ist daher bei
diesen Tests nicht sinnvoll, wird aber zur Vollständigkeit aufgeführt.


Seite 20 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07


Die Beschleunigungsfaktoren bei den Dual-Core-Systemen, zwischen den 1 und 2
Thread Varianten, liegen im Bereich der zuvor prognostizierten Erwartungen (1,6 –
1,8).




5.7.
Zwischenbetrachtung
Wir haben nun vier Testfälle durchgeführt. Beide Notebooks mit Dual-Core-Prozessor
waren dabei immer schneller als die Rechner mit nur einem Kern.
Dabei ist uns aufgefallen, dass es im wesendlichen darauf ankommt, ob eine
Anwendung die zu erledigende Aufgabe aufteilt und an zwei Threads delegiert, oder
eben nicht. Kann man also sagen, dass eine Anwendung sobald sie Threads
verwendet auf einem Dual-Core System deutlich schneller ist als auf einem mit nur
einem Kern?
Wir wollen dieser Frage auf den Grund gehen, und nachfolgend versuchen mit
eigenen Programmen uns den möglichen Schwachstellen der Dual-CoreProzessoren zu nähern.
5.8.
SyncAccess
Mit dem Programm SynAccess versuchen wir, den Vorteil des Dual-Cores, das zwei
Threads zur selben Zeit laufen können, als Nachteil auszulegen.
Dabei nutzen wir einen klassischen Anwendungsfall: der gleichzeitige Zugriff von
zwei Anwendungen auf eine gemeinsame Ressource. Bekannt als das Producer/
Consumer Problem, bekannt aus der EBS-Vorlesung.
Zwei Threads greifen jeweils in einer Schleife ständig auf die globale Variable
SharedMem zu. Mit dem Befehl lock (block)wird der Zugriff auf die Variable
Seite 21 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
SharedMem exklusiv auf für den bearbeitenden Thread reserviert und erst nach
Verlassen des Bereiches wieder für andere Threads freigegeben. Die
mathematischen Operationen sind zufällig gewählt und sollen eine beliebe
„ze itve rbra u ch en d e “ A u fg a b e d a rstellen . D ie V a ria ble S h a re d M e m w ird n a ch
Abschluss der Messung ebenfalls ausgegeben, um eine automatische CompilerOptimierung der Schleife zu verhindern.
for (long i = 0; i < n; i++)
{
lock (block)
{
SharedMem *= 5;
SharedMem = Math.Pow(SharedMem, 63);
SharedMem /= 3;
SharedMem = SharedMem % 99999;
}
}
Dieses Programm wurde implementiert in C# 2005, ohne Compiler-Optimierung.
Gemessen wurde die Dauer bis beide Threads ihre Aufgabe erledigt hatten.
for (long i = 0; i < n; i++)
{
lock (block)
{
SharedMem *= 5;
SharedMem = Math.Pow(SharedMem, 63);
SharedMem /= 3;
SharedMem = SharedMem % 99999;
}
}
Abbildung 11: SyncAccess Benchmark-Ergebnisse
Beschleunigungsfaktoren:
Seite 22 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07


Obwohl beide Kerne der Dual-Core-Systeme voll belegt wurden, benötigten die
Systeme bei diesem Benchmark länger, als die Single-Core-Notebooks zur
Abarbeitung der Aufgaben.
Dies liegt in erster Linie daran, dass der blockierte Prozess im „b u sy w a itin g “ Modus
(zyklische Abfrage eine Variable) verweilt. So muss dieser ständig abfragen, ob die
Ressource frei ist. Ebenso muss bei Freigabe der Ressource ein notify an den
anderen Thread erfolgen. Sobald dies geschehen ist greift sich der zweite Thread die
Ressource, und der erste Thread der nun wieder die Schleife durchläuft, wird
blockiert.
Auf dem Single-Core-System läuft während eines Zeitscheiben-Zyklus nur ein
Thread. Dieser blockiert die gemeinsame Ressource und durchläuft die Schleife
mehrere Male. Entweder erfolgt nun der Prozesswechsel nach Freigabe der
Ressource oder gerade während sie blockiert ist. Im zweiten Fall würde der zweite
Thread einen Zyklus warten müssen, denn die Ressource ist dann ja belegt. Es lässt
sich nur spekulieren, wie das System dies handhabt. Die Ergebnisse zeigen jedoch
deutlich, dass dies in jedem Fall immer noch wesendlich besser funktioniert, als auf
dem Dual-Core-System wo beide Threads zeitgleich aktiv sind.
Seite 23 von 39
Frank Kuchta, Markus Rüger
5.9.
single vs. dual core
RST-L WS06/07
DualSlow
Wir wollen nun einen Fall konstruieren, bei dem wir die Schwächen des Shared-L2C a ch e s a u fzeige n m ö ch te n . In tel’s M a rke tin g -Maschine verkauft den gemeinsam
genutzten Cache als Performance Vorteil.
Grundsätzlich verfügen alle unsere Testsysteme über einen L2-Cache mit einer
Kapazität von 2048 KBytes. Dieser ist 8-fach assoziativ, eine Cachline ist 64Byte
lang.
F rei n a ch d e r H yp o th e se , „A u fga b e n a u f T hrea d s a u fzu te ile n “ schreib e n w ir ein
Programm mit zwei Threads. Dabei greift jeder Thread auf seine eigenes DatenArray zu. Es gibt also keine Abhängigkeit bzw. Blockade einer Ressource.
Dieses Daten-Array ist 64Byte breit und variable lang.
int[,] Datenfeld1 = new int[DatenfeldGroesse, 16];
Wir wollen vermeiden, dass es zu Cache-Hits aufgrund von räumlicher Lokalität
kommt. Daher greifen wir alle 65 Byte auf ein Array-Feld zu, und schreiben diesen
Integer-Wert weitere 65 Byte weiter.
Wenn das gesamte Datenfeld durchlaufen wurde, wird der Vorgang n mal wiederholt,
um in den nächsten Durchläufen Cache Hits aufgrund von zeitlicher Lokalität zu
erreichen.
for (int j = 0; j < n; j++)
{
for (int i = 0; i < DatenfeldGroesse; i = i + 2)
{
Datenfeld1[i, 0] = Datenfeld1[i + 1, 0];
}
}
Der gesamte Test wird mit unterschiedlichen Längen des Datenfeldes wiederholt um
die benötigte Zeit in Abhängigkeit der Datengröße pro Thread aufzeigen zu können.
Seite 24 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
Abbildung 12: DualSlow-Benchmark, Datengröße bis 2000kByte
In Abbildung 12 sieht man, dass beide Single-Core-Systeme (rot & blau) bei
ansteigender Datengröße eine lineare Steigung aufweisen.
Bis zu einer Datengröße von ca. 1000KByte pro Thread, ist dies auch bei den DualCore-Systemen (grün & lila) zu beobachten. Sie sind jedoch schneller als die
Systeme mit nur einem Kern.
Wenn wir eine Datengröße über 1000KByte pro Thread wählen, ist ein extremer
Anstieg bei der benötigten Zeit zu beobachten. Bei einer Datengröße von ca.
1700KByte pro Thread sind unsere Single-Core-Systeme ca. viermal schneller als
unsere Systeme mit zwei Kernen.
Um dieses Verhalten genauer untersuchen zu können, messen wir nach jedem
Schleifendurchlauf die Zeit. Wir erhalten also n Messwerte. Durch das Messen der
Zeit verändern wir unseren Testfälle. Diese Veränderung hatte jedoch keine
gravierende Auswirkung auf unser Testergebnis.
Wir wählen n = 20.000 Schleifendurchläufe für unsere Tests.
In Abbildung 13 werden die absolvierten Schleifendurchläufe in Abhängigkeit zu der
benötigten Zeit dargestellt. Dabei werden der 1. und der 2. Thread des 2,0 GHz DualCore Systems rot bzw. grün dargestellt. Im Vergleich dazu der 1. und der 2. Thread
des 2,1 GHz Single-Core Systems in den Farben blau und lila.
Seite 25 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
Abbildung 13: DualSlow: absolvierte Schleifendurchläufe / Zeit (1)
Abbildung 14 zeigt den Zeitabschnitt bis 1 Sekunde nach Start. Dort ist sehr deutlich
zu sehen, dass das Single-Core-System die beiden Threads in Zeitscheiben á 50 ms
abarbeitet. Die Zeitauflösung beträgt 1ms.
Seite 26 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
Abbildung 14: DualSlow: absolvierte Schleifendurchläufe / Zeit (2)
Single Core:
Während eines Zeitscheiben-Zyklus steht den laufenden Prozess die gesamte
Kapazität des L2-Caches alleine zur Verfügung. Bis zum nächsten Prozesswechsel
schafft der Prozess ca. 300 Schleifendurchläufe. Beim ersten Schleifedurchlauf
kommt es zu Cache-Misses. In diesem Zuge wird das gesamte Datenfeld nach und
nach in den Cache geladen. Bei allen weiteren Schleifendurchläufen erhalten wir nun
Cache-Hits aufgrund von zeitlicher Lokalität.
Dual Core:
Beide Threads laufen hier parallel. Somit verwenden gleichzeitig beide Prozesse den
Cache für ihre jeweiligen Daten. Da jeder Prozess ca. 1,7 MByte in den Cache lädt,
überschreiben sich die beiden Prozesse die Daten ständig gegenseitig.
Dadurch müssen in jedem neuen Schleifendurchlauf die Daten erneut aus dem RAM
gelesen werden. Ebenso muss für den Fall, dass modifizierte Daten aus dem Cache
verdrängt werden, ein Write-Back erfolgen. Dadurch ergibt sich eine extreme
Verzögerungen.
Hier spielt das Single-Core-System den Vorteil aus, dass dem Prozess die gesamten
2 MByte Cache exklusiv während des Zeitscheiben-Zyklus zur Verfügung steht.
Übersteigt nun die Größe des Datenfeldes die 2 MByte-Marke, werden ebenfalls
Teile des Datenfeldes verdrängt, die später wieder benötigt werden. Dies ist in
Abbildung 15 dargestellt. In diesem Fall spielen die Dual-Core-Systeme nun wieder
Ihren Vorteil aus; sie verfügen über eine schnellere Anbindung des Arbeitsspeichers.
Seite 27 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
Abbildung 15: DualSlow-Benchmark, Datengröße bis 3000kByte
Seite 28 von 39
RST-L WS06/07
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
6. Fazit
Wir haben in unseren Tests deutlich gesehen, dass die Effizienz eines Dual-Core
Systems deutlich davon abhängt, wie die verwendete Anwendung programmiert
wurde.
Die Software-Entwickler sind also aufgefordert die Anwendungen, soweit möglich, zu
parallelisieren. Dass hier besonders bedacht vorgegangen werden muss, konnten
unsere letzten zwei Testfälle deutlich zeigen.
Viele Anwendungen sind leider derzeit nicht in mehreren Threads programmiert,
sodass sich hier kaum ein Geschwindigkeitsvorteil ergibt.
Dazu zählen z.B. Virenscanner, Grafik-P ro gram m e w ie z.B . d e r „W oh n zim m e r
D e sig ne r“ o d e r „P ain t S h o p“ so w ie Google Earth und die meisten auf dem Markt
verfügbaren Spiele.
Grundsätzlich lässt sich auch sagen, dass er Aufbau von Internetseiten oder das
versenden von E-Mail Nachrichten nicht von der Prozessorgeschwindigkeit oder dem
Vorhandensein eines Dual-Core Prozessors abhängen sondern viel mehr von der
Internetverbindung. Etwaige Marketing-Aussagen von Prozessor-Herstellern sollte
man also sehr kritisch begutachten.
Nichts desto trotz profitiert der Benutzer von einem Dual-Core-System. Werden z.B.
viele Dinge zur selben Zeit gemacht, wie z.B. das Abspielen eines Videos und
gleichzeitig das Durchführen eines Virenchecks im Hintergrund, so werden diese
Anwendungen auf die Kerne verteilt. Die Video-Applikation ist in diesem Fall in der
Lage auf dem 2. Kern zu arbeiten während auf dem 1. Kern das Betriebsystem sowie
der Virenscanner aktiv sind.
Abbildung 16: Preisübersicht aktueller Notebooks [Saturn]
Wie in Abbildung 16 zu sehen ist betragen die Mehrkosten für ein Notebook mit DualCore-Prozessor in diesem Beispiel von Saturn nur 27%. Dieser Vergleich hinkt etwas,
da man eigentlich die gesamte Ausstattung der Geräte betrachten müsste. Jedoch
zeigt es, dass die Preise derzeit deutlich gefallen sind, was auch darauf zurück zu
Seite 29 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
führen ist, dass bereits nach nur einem halben Jahr der Core 2 Duo den Dual-Core
der ersten Generation abgelöst hat.
Einsteiger haben dadurch die Möglichkeit, preislich reduzierte Pentium M bzw.
C e n trin o G erä te , so w ie D u o C ore ’s d er e rsten Generation zu erhalten. Für Leute die
öfter mit mehreren Anwendungen zur selben Zeit arbeiten ist es in jedem Fall
empfehlenswert ein Dual-Core-System auszuwählen.
Abbildung 17: Preisübersicht Intel mobile Prozessoren [alternate]
Wir dürfen gespannt sein, was die Zukunft auf dem Notebookmarkt bringen wird.
Beim Pentium 4 hat man gesehen, dass die Erhöhung der Taktrate nur bedingt
geeignet ist. Die Bitbreite der Ausführungseinheiten wurde inzwischen auf 128 Bit
erhöht. Jedoch wird dies nur von sehr wenigen Befehlen genutzt. Auch eine
Erweiterung des Befehlssatzes um häufig genutzte Funktionen, wie z.B. bei SSE
bringt nur bedingt eine Performance-Verbesserung, da viele Anwendungen diese
nicht unterstützen.
Die Einführung der Dual-Core Systeme hat einen deutlichen Leistungsgewinn unter
bestimmten Bedingungen verursacht. Jedoch ist dies in Zukunft nur schwer möglich.
Zum einen ist es nur begrenzt möglich Aufgaben in beliebig viele Teilaufgaben zu
verlegen, zum anderen muss man sich die Frage stellen wie viele Kerne in ein
Notebook passen. Der Energiebedarf ist nach wie vor der wichtigste Aspekt bei
einem mobilen System. Immer größere Anstrengungen sind nötig, um diesen zu
reduzieren bzw. auf einem erträglichen Niveau zu halten.
Folglich ist die einzige Konsequenz auf lange Sicht sich von der bisherigen
Architektur zu verabschieden und eine komplett neue Plattform zu entwickeln.
Seite 30 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
7. Quellen
[Zitat Intel 1] Grafik, online im www
http://www.intel.com/cd/corporate/europe/emea/deu/321193.htm , Abruf am 31.11.06
[Zitat Intel 2] Grafik, online im www
http://www.intel.com/personal/computing/emea/deu/centrinositelet/index.htm?pin=Int
el , Abruf am 31.11.06
[Banias] Grafik, online im www http://www.thg.ru/mobile/20040511/images/baniasdie.jpg , Abruf am 31.11.06
[Dothan] Grafik, online im www
http://www.3dnews.ru/documents/12029/dothan_core.jpg , Abruf am 31.11.06
[Yonah] Grafik, online im www
http://www.computerbase.de/artikel/hardware/prozessoren/2006/bericht_intels_core_
solo_core_duo/2/ , Abruf am 31.11.06
[Merom] Grafik, online im www http://www.khardware.de/artikel.php?s=c&artikel_id=5495&seite=5 , Abruf am 31.11.06
[Saturn] Screenshot aus dem Onlineshop von Saturn, online im www http://saturn.de ,
Abruf am 28.11.06
[Alternate] Screenshot aus dem Onlineshop von Alternate, online im www
http://www.alternate.de , Abruf am 28.11.06
David A. Patterson, John L. Hennessy, Rechnerorganisation und – entwurf, deutsche
Ausgabe, 3. Auflage 2005, Spektrum Akademischer Verlag
Thorsten Leemh u is, D op p elturbin e n , In tels erste r P ro ze ssor m it zw e i K e rn e n , c’t
8/2005, Heise Zeitschriften Verlag, Hannover
Andreas Stiller, Doppeltes Ottchen, Was Dual-Core-Prozessoren auf dem Desktop
b rin g e n , c’t 1 5 /2 00 5 , H eise Z eitschrifte n V e rlag , H a n n o ver
Andrea s S tille r, P ro ze sso rg eflü ste r, B u g s, B en ch m a rks u n d B u sin e ss, c’t 2 4 /20 0 5 ,
Heise Zeitschriften Verlag, Hannover
c’t H o tline -A rtikel, R u ckler trotz Z w e ikern p ro ze sso r, c’t 2 4/2 0 0 5 , H eise Z e itsch riften
Verlag, Hannover
Andreas Stiller, Jörg Wirtgen, Prozessorgeflüster, Von alten und neuen Namen, c’t
1/2006, Heise Zeitschriften Verlag, Hannover
Jö rg W irtg en , K e rn fu sio n im N o te b o o k, P e n tium M g e g e n C o re D u o , c’t 3 /2 0 06 ,
Heise Zeitschriften Verlag, Hannover
Seite 31 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
Christof Windeck, Mit doppelter Kraft, Die Dual-Core-T e ch nik ko m m t in F a hrt, c’t
4/2006, Heise Zeitschriften Verlag, Hannover
Christof Windeck, Kern-Kalender, Der Prozessor-F a h rplan 2 0 0 6, c’t 4 /20 0 6 , H eise
Zeitschriften Verlag, Hannover
Nico Nowarra, Joachim Sauer, Andrea Trinkwalder, Zweispänner, Wie Anwendungen
von Dual-Core-S yste m e n p ro fitie ren , c’t 4 /20 06 , H e ise Z eitsch rifte n V e rla g , H an n o ver
Andreas Stiller, Prozessorgeflüster, Von Vierkern- un d a n de re n M e n ü s, c’t 5 /20 0 6 ,
Heise Zeitschriften Verlag, Hannover
Erich Bonnert, Andreas Stiller, Vier ist besser als drei, Intel Developer Forum
F rü h ja h r 2 00 6 , c’t 7 /2 0 0 6 , H eise Z eitsch rifte n V e rla g, H a n n o ve r
Andreas Stiller, Prozessor-Mimikry, Vom vorgetäuschten Hyper-Threading und dem
sch w ie rig e n D urch zä hle n vo n K e rne n , c’t 8/2 00 6 , H eise Z e itsch riften V e rlag,
Hannover
Jü rg e n R in k, D o p p elte s L o ttch en , C e n trin o D uo in N o te b o oks, c’t 9 /20 0 6 , H eise
Zeitschriften Verlag, Hannover
c’t H o tline A rtikel, A u sla stu ng ein e s H ype r-Threading-P ro ze sso rs, c’t 1 2 /2 00 6 , H eise
Zeitschriften Verlag, Hannover
Andreas Stiller, IDF: Ausbeute und Herstellungskosten von Core 2, Heise NewsTicker, 28.09.2006, online im www
http://www.heise.de/newsticker/meldung/print/78801 , Abruf am 23.10.2006
Christian Vilsbeck, Details zum Pentium 4, tecchannel.de, online im www
http://www.tecchannel.de/technologie/prozessoren/401567/ , Abruf am 26.11.2006
Christian Vilsbeck, MPF: Intel enthüllt den Banias, tecchannel.de, online im www
http://www.tecchannel.de/client/mobile/402008/ , Abruf am 26.11.2006
Christian Vilsbeck, MPF: Intel Centrino im Detail, tecchannel.de, online im www
http://www.tecchannel.de/client/mobile/402079/ , Abruf am 26.11.2006
Jon Hannibal Stokes, A Look at Centrino's Core: The Pentium M, ars technica,
25.2.2004, online im www http://arstechnica.com/articles/paedia/cpu/pentiumm.ars/1 , Abruf am 30.11.2006
C o m p u te rB a se , In tels „C o re S o lo“ u nd „C o re D u o “, E in N e u a nfa n g ? , online im www
http://www.computerbase.de/artikel/hardware/prozessoren/2006/bericht_intels_core_
solo_core_duo/ , Abruf am 25.11.2006
Christian Vilsbeck, Wechsel an der Spitze: Intels neue Core Prozessoren,
tecchannel.de, online im www
http://www.tecchannel.de/technologie/prozessoren/437111/ , Abruf am 26.11.2006
Seite 32 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
Marcus Pollice, Core 2 Duo E6700 & Extreme X6800 im Test, K-Hardware, online im
www http://www.k-hardware.de/artikel.php?s=&artikel_id=5495 , Abruf am
25.11.2006
David Kanter, Intel's Next Generation Microarchitecture Unveiled, Real World
Technologies, online im www
http://www.realworldtech.com/page.cfm?ArticleID=RWT030906143144&p=1 , Abruf
am 30.11.06
Peter Gräber, Christian Hirsch, Intel Core 2 Duo [X6800 - E6700 - E6600], Hard Tecs
4U, 14. Juli 2006, online im www
http://www.hardtecs4u.com/reviews/2006/intel_conroe/ , Abruf am 26.11.2006
Nico Ernst, Intels Core-Architektur im Detail , Schlauer Speicherzugriff und effektiver
Cache, golem.de, 15.03.2006, online im www
http://www.golem.de/print.php?a=44043 , Abruf am 30.11.2006
Eric Johannes, Martin Weber, Intel Pentium und IA-64 Prozessor-Familien,
Universität Trier, online im www http://www.syssoft.unitrier.de/systemsoftware/Download/Fruehere_Veranstaltungen/Seminare/Prozessorar
chitekturen/Prozessorarchitekturen-2.html , Abruf am 30.11.2006
Wikipedia, Hyper-Threading, online im www http://de.wikipedia.org/wiki/HyperThreading , Abruf am 25.11.2006
Wikipedia, Pentium D, online im www http://de.wikipedia.org/wiki/Pentium_D , Abruf
am 25.11.2006
Wikipedia, Mobile Pentium 4, online im www
http://de.wikipedia.org/wiki/Mobile_Pentium_4 , Abruf am 25.11.2006
Wikipedia, Intel Core , online im www http://de.wikipedia.org/wiki/Intel_Core , Abruf
am 25.11.2006
Wikipedia, Branch Predictor , online im www
http://en.wikipedia.org/wiki/Branch_predictor, Abruf am 30.11.2006
Wikipedia, Intel-Core-Mikroarchitektur, online im www
http://en.wikipedia.org/wiki/Intel-Core-Mikroarchitektur , Abruf am 30.11.2006
Wikipedia, LAME, online im www http://en.wikipedia.org/wiki/LAME , Abruf am
26.11.2006
CPU-Z ist ein Freeware-Tool, welches Informationen über das PC-System ausgibt.
Verfügbar unter http://www.cpuid.com/cpuz.php .
WinRAR ist ein Packprogramm für verschiedene Packformate. Es ist als Shareware
erhältlich unter http://www.winrar.de/ .
VirtualDub ist ein Tool zum Bearbeiten von Videos. Es unterliegt der GPL. Die
deutsche Version ist verfügbar unter http://www.virtualdub-deutsch.dl.am/ .
Seite 33 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
Xvid ist ein MPEG-4 Video-Codec. Es handelt sich dabei um ein Open-Source
Projekt. Der Codec ist verfügbar unter http://www.xvid.org .
LAME ist ein mp3-Encoder, der als Open-Source Projekt entwickelt wird. Er unterliegt
der LGPL und ist verfügbar unter http://lame.sourceforge.net/ .
Cinebench ist ein Standalone-Programm, das auf Cinema 4D von der Maxon
Computer GmbH aufbaut. Es ist frei verfügbar unter
http://www.maxon.net/pages/download/cinebench_d.html .
Seite 34 von 39
Frank Kuchta, Markus Rüger
single vs. dual core
RST-L WS06/07
8. Anhang
Folgende Dateien befinden sich im Anhang:





Vortrag.pdf
CryptoRSA.cs
BigInteger.cs
SyncAccess.cs
DualSlow.cs
Dabei handelt es sich um die Präsentation, sowie die Quelltexte unser eigenen
Programme.
8.1.
Reports der verwendeten Systeme
Die Reporte wurden mit dem Freeware-Programm CPU-Z erstellt. Anbei werden die
Details zur verwendeten Hardware aus der Studentenschaft nach Single- und DualCore Systemen aufgelistet.
Seite 35 von 39
8.2.
Single Core Systeme
CPU-Z 1.37 report file: Frank Kuchta
Processor(s)
Number of processors
1
Number of cores
1 per processor
Number of threads
1 (max 1) per processor
Name
Intel Pentium M 725
Code Name
Dothan
Specification
Intel(R) Pentium(R) M processor 1.60GHz
Package
Socket 479 mPGA
Family/Model/Stepping
6.D.6
Extended Family/Model
6.D
Brand ID
22
Core Stepping
B1
Technology
90 nm
Core Speed
1616.9 MHz
Multiplier x Bus speed
16.0 x 101.1 MHz
Rated Bus speed
404.2 MHz
Stock frequency
1600 MHz
Instruction sets
MMX, SSE, SSE2
L1 Data cache
32 KBytes, 8-way set associative, 64-byte line size
L1 Instruction cache
32 KBytes, 8-way set associative, 64-byte line size
L2 cache
2048 KBytes, 8-way set associative, 64-byte line size
Chipset & Memory
Northbridge
Intel i855GM/GME rev. A2
Southbridge
Intel 82801DB (ICH4-M) rev. 03
Graphic Interface
AGP
AGP Revision
2.0
AGP Transfer Rate
4x
AGP Side Band Addressing
supported, enabled
Memory Type
DDR
Memory Size
1280 MBytes
Memory Frequency
168.4 MHz (3:5)
CAS# Latency (tCL)
2.5 clocks
RAS# to CAS# (tRDC)
3 clocks
RAS# Precharge (tRP)
3 clocks
Cycle Time (tRAS)
7 clocks
System
System Manufacturer
Acer
System Name
TravelMate 4000
System S/N
LXT5205418514053FEEM25
Mainboard Vendor
Acer
Mainboard Model
TravelMate 4000
BIOS Vendor
ACER
BIOS Version
3A10
BIOS Date
10/12/2004
Memory SPD
Software
Windows Version
Microsoft Windows XP Home Edition Service Pack 2 (Build 2600)
DirectX Version
9.0c
CPU-Z 1.37 report file: Holger Wolf
Processor(s)
Number of processors
1
Number of cores
1 per processor
Number of threads
1 (max 1) per processor
Name
Intel Pentium M 770
Code Name
Dothan
Specification
Intel(R) Pentium(R) M processor 2.13GHz
Package
Socket 479 mPGA
Family/Model/Stepping
6.D.8
Extended Family/Model
6.D
Brand ID
22
Core Stepping
C0
Technology
90 nm
Core Speed
2131.5 MHz
Multiplier x Bus speed
16.0 x 133.2 MHz
Rated Bus speed
532.9 MHz
Stock frequency
2133 MHz
Instruction sets
MMX, SSE, SSE2
L1 Data cache
32 KBytes, 8-way set associative, 64-byte line size
L1 Instruction cache
32 KBytes, 8-way set associative, 64-byte line size
L2 cache
2048 KBytes, 8-way set associative, 64-byte line size
Chipset & Memory
Northbridge
Intel i915PM/GM rev. 03
Southbridge
Intel 82801FBM (ICH6-M) rev. 03
Graphic Interface
PCI-Express
PCI-E Link Width
x16
PCI-E Max Link Width
x16
Memory Type
DDR2
Memory Size
1024 MBytes
Memory Frequency
266.4 MHz (1:2)
CAS# Latency (tCL)
4.0 clocks
RAS# to CAS# (tRDC)
4 clocks
RAS# Precharge (tRP)
4 clocks
Cycle Time (tRAS)
11 clocks
System
System Manufacturer
Hewlett-Packard
System Name
HP Compaq nx8220 (PY518ET#ABD)
System S/N
CNU5521W15
Mainboard Vendor
Hewlett-Packard
Mainboard Model
0934
BIOS Vendor
Hewlett-Packard
BIOS Version
68DTV Ver. F.0F
BIOS Date
09/15/2005
Memory SPD
Module 1
DDR2, PC2-4300 (266 MHz), 1024 MBytes, Samsung
Software
Windows Version
Microsoft Windows XP Professional Service Pack 2 (Build 2600)
DirectX Version
9.0c
8.2.1. Dual Core Systeme
CPU-Z 1.37 report file: Markus Hanses
Processor(s)
Number of processors
1
Number of cores
2 per processor
Number of threads
2 (max 2) per processor
Name
Intel Core Duo T2300
Code Name
Yonah
Specification
Genuine Intel(R) CPU T2300 @ 1.66GHz
Package
Socket 479 mPGA
Family/Model/Stepping
6.E.8
Extended Family/Model
6.E
Core Stepping
C0
Technology
65 nm
Core Speed
1651.1 MHz
Multiplier x Bus speed
10.0 x 165.1 MHz
Rated Bus speed
660.4 MHz
Stock frequency
1666 MHz
Instruction sets
MMX, SSE, SSE2, SSE3
L1 Data cache
2 x 32 KBytes, 8-way set associative, 64-byte line size
L1 Instruction cache
2 x 32 KBytes, 8-way set associative, 64-byte line size
L2 cache
2048 KBytes, 8-way set associative, 64-byte line size
Chipset & Memory
Northbridge
Intel i945GM rev. 03
Southbridge
Intel 82801GHM (ICH7-M DH) rev. 01
Memory Type
DDR2
Memory Size
2048 MBytes
Memory Frequency
264.2 MHz (5:8)
CAS# Latency (tCL)
4.0 clocks
RAS# to CAS# (tRDC)
4 clocks
RAS# Precharge (tRP)
4 clocks
Cycle Time (tRAS)
12 clocks
Bank Cycle Time (tRC)
16 clocks
System
System Manufacturer
Dell Inc.
System Name
MXC061
System S/N
BS5S82J
Mainboard Vendor
Dell Inc.
Mainboard Model
0MG532
BIOS Vendor
Dell Inc.
BIOS Version
A04
BIOS Date
07/31/2006
Memory SPD
Module 1
DDR2, PC2-4300 (266 MHz), 1024 MBytes, Nanya Technology
Module 2
DDR2, PC2-4300 (266 MHz), 1024 MBytes, Nanya Technology
Software
Windows Version
Microsoft Windows XP Home Edition Service Pack 2 (Build 2600)
DirectX Version
9.0c
CPU-Z 1.37 report file: Markus Rüger
Processor(s)
Number of processors
1
Number of cores
2 per processor
Number of threads
2 (max 2) per processor
Name
Intel Core Duo T2500
Code Name
Yonah
Specification
Genuine Intel(R) CPU T2500 @ 2.00GHz
Package
Socket 479 mPGA
Family/Model/Stepping
6.E.8
Extended Family/Model
6.E
Core Stepping
C0
Technology
65 nm
Core Speed
1999.4 MHz
Multiplier x Bus speed
12.0 x 166.6 MHz
Rated Bus speed
666.5 MHz
Stock frequency
2000 MHz
Instruction sets
MMX, SSE, SSE2, SSE3
L1 Data cache
2 x 32 KBytes, 8-way set associative, 64-byte line size
L1 Instruction cache
2 x 32 KBytes, 8-way set associative, 64-byte line size
L2 cache
2048 KBytes, 8-way set associative, 64-byte line size
Chipset & Memory
Northbridge
Intel i945PM rev. 03
Southbridge
Intel 82801GHM (ICH7-M DH) rev. 01
Graphic Interface
PCI-Express
PCI-E Link Width
x16
PCI-E Max Link Width
x16
Memory Type
DDR2
Memory Size
2048 MBytes
Memory Frequency
333.2 MHz (1:2)
CAS# Latency (tCL)
5.0 clocks
RAS# to CAS# (tRDC)
5 clocks
RAS# Precharge (tRP)
5 clocks
Cycle Time (tRAS)
13 clocks
Bank Cycle Time (tRC)
21 clocks
System
System Manufacturer
Dell Inc.
System Name
Latitude D820
System S/N
GSC9C2J
Mainboard Vendor
Dell Inc.
Mainboard Model
0JF242
BIOS Vendor
Dell Inc.
BIOS Version
A01
BIOS Date
03/23/2006
Memory SPD
Module 1
DDR2, PC2-5300 (333 MHz), 1024 MBytes, Samsung
Module 2
DDR2, PC2-5300 (333 MHz), 1024 MBytes, Samsung
Software
Windows Version
Microsoft Windows XP Professional Service Pack 2 (Build 2600)
DirectX Version
9.0c