Click here to load reader

Intel Pentium III-s vs. Intel Pentium P4 - FBE - · PDF file• Intel Pentium II • Intel Pentium II XEON • Intel Pentium Celeron • Intel Pentium Celeron A • Intel Pentium III

  • View
    4

  • Download
    0

Embed Size (px)

Text of Intel Pentium III-s vs. Intel Pentium P4 - FBE - · PDF file• Intel Pentium II •...

  • Intel P III-S vs. P4

    Architecture & Benchmarking

    Labor zur Lehrveranstaltung Rechnerstrukturen (RST) Prof. Dr. Thomas Risse

    Hochschule Bremen University of Applied Sciences

    André Ceselski (100520) Raphael Rosendahl (95437)

    13. Februar 2007

  • Zusammenfassung

    In dieser Ausarbeitung werden die Intel Prozessorarchitekturen P6 und NetBurst betrachtet und ihre Unterschiede vorgestellt. Im Labor- teil dieses Dokuments wurde je ein Prozessor der beiden Architekturen mit verschiedenen Benchmarkprogrammen auf seine Leistung getestet, wobei für die P6-Architektur der Pentium III-S Tualatin 1,133 GHz und für die NetBurst-Architektur der Pentium 4 Northwood 2,0 GHz verwendet wurde. Die Tests wurden auf den Betriebssystemen Win- dows 2003 Standard Server und Ubuntu Linux 6.10 durchgeführt. Der Pentium 4 ist nicht nur aufgrund seiner Taktfrequenz schnel- ler, sondern auch aufgrund der Hyper Pipelined Technology, verbes- serten Branch Prediction und seiner Rapid Execution Unit. Die Be- fehlssatzerweiterung SSE2 läÿt bei den Benchmarks einen deutlichen Geschwindigkeitszuwachs erkennen. Bei den Rendering Benchmarks scha�te der P4 eine Leistungssteigerung von bis zu 47%, jedoch das damalige Verkaufsargument "Doppelte Geschwindigkeit durch doppel- ten CPU-Takt"konnte nicht bestätigt werden. Der PIII ist bei kürzeren Berechnungen gelegentlich sogar schneller. Anteil an der Performance des P4 hat auch der Dual Data Rate-RAM (DDR-RAM). Unterschiede in den Ergebnissen der beiden Betriebssysteme zeigen, dass auch Op- timierungen an Compiler, Software und Betriebssystemen eine Rolle spielen.

  • Inhaltsverzeichnis

    1 Ziel 5

    2 Architekturen 5

    2.1 P6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.2 NetBurst . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.3 Neuerungen . . . . . . . . . . . . . . . . . . . . . . . . 13

    3 Prozessoren 15

    3.1 Intel Pentium III-S . . . . . . . . . . . . . . . . . . . . 15 3.2 Intel Pentium 4 . . . . . . . . . . . . . . . . . . . . . . 15

    4 Erwartung 16

    5 Testsysteme 16

    6 Benchmarks 17

    6.1 Super Pi . . . . . . . . . . . . . . . . . . . . . . . . . . 17 6.2 CineBench 2003 . . . . . . . . . . . . . . . . . . . . . . 19 6.3 BOINC . . . . . . . . . . . . . . . . . . . . . . . . . . 21 6.4 Pov-Ray . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    6.4.1 Version 3.6 . . . . . . . . . . . . . . . . . . . . 23 6.4.2 Version 3.7 . . . . . . . . . . . . . . . . . . . . 25

    7 Auswertung 26

    A Anhang 28

    A.1 P4 Leistungszugewinn . . . . . . . . . . . . . . . . . . 28 A.2 Benchmarkergebnisse PIII-S . . . . . . . . . . . . . . . 28 A.3 Benchmarkergebnisse P4 . . . . . . . . . . . . . . . . . 28

    3

  • Abbildungsverzeichnis

    1 Intel P6 Architektur [4] . . . . . . . . . . . . . . . . . 6 2 Intel P6 Dynamic Execution [8] . . . . . . . . . . . . . 7 3 Fetch/Decode Unit [8] . . . . . . . . . . . . . . . . . . 8 4 Dispatch/Execute Unit [8] . . . . . . . . . . . . . . . . 8 5 Retire Unit [8] . . . . . . . . . . . . . . . . . . . . . . 9 6 NetBurst Architektur . . . . . . . . . . . . . . . . . . . 10 7 NetBurst Architektur (detailliert) . . . . . . . . . . . . 11 8 Pipeline Vergleich . . . . . . . . . . . . . . . . . . . . . 13 9 Register Allokation . . . . . . . . . . . . . . . . . . . . 14 10 ScreenShot SuperPi (Windows Version) . . . . . . . . 18 11 Ergebnisse SuperPi 1 . . . . . . . . . . . . . . . . . . . 18 12 Ergebnisse SuperPi 2 . . . . . . . . . . . . . . . . . . . 19 13 ScreenShot CineBench 2003 . . . . . . . . . . . . . . . 20 14 Ergebnisse CineBench 2003 . . . . . . . . . . . . . . . 20 15 ScreenShot BOINC (Windows Version) . . . . . . . . . 22 16 Ergebnisse BOINC . . . . . . . . . . . . . . . . . . . . 22 17 POV-Ray 3.6 Rendering Szene . . . . . . . . . . . . . 23 18 Ergebnisse POV-Ray 3.6 . . . . . . . . . . . . . . . . . 24 19 POV-Ray 3.7 Rendering Szene . . . . . . . . . . . . . 25 20 Ergebnisse POV-Ray 3.7 . . . . . . . . . . . . . . . . . 26

    4

  • Ceselski, Rosendahl Intel P III-S vs. P4

    1 Ziel

    Aufbau der Intel P6- und NetBurst-Archtitektur sollen in der Ausar- beitung betrachtet und Unterschiede vorgestellt werden. Im Laborteil werden je ein Prozessor der beiden Architekturen mit verschiedenen Benchmarkprogrammen und Betriebssystemen auf ihre CPU-Leistung getestet, wobei PIII-S Tualatin 1,133 GHz (P6) und Pentium 4 Northwood 2,0 GHz (NetBurst)verwendet und verglichen werden.

    2 Architekturen

    2.1 P6

    Die P6 Architektur ist, wie der Name schon sagt, die 6. Generation der Pentium Familie. Sie erschien im November 1995 und wird in folgenden Prozessoren-Reihen verwendet. Das Blockschaltbild dieser Architektur �nden sie in Abbildung 1.

    • Intel Pentium II • Intel Pentium II XEON • Intel Pentium Celeron • Intel Pentium Celeron A • Intel Pentium III • Intel Pentium III XEON Das Hauptaugenmerk der P6 Architektur ist die Dynamic Execu-

    tion Architecture, die auf den folgenden Seiten erläutert wird. Die P6 Architektur arbeitet mit einem 64 bit breiten Daten- sowie einem 36 bit breiten Adressbus. Die P6 Architektur besitzt eine superskalare Rechnerstruktur. Eine weitere Neuerung gegenüber der Vorgänger Ar- chitektur ist der Dual Independent Bus (DIB). Der DIB ist ein Bus, welcher den L2-Cache mit der CPU direkt verbindet. So muss der Datenstrom nicht mehr über den eventuell ausgelasteten Systembus �ieÿen, sondern kann die Daten schnell an die CPU liefern. [7]

    5

  • Ceselski, Rosendahl Intel P III-S vs. P4

    Abbildung 1: Intel P6 Architektur [4]

    Dynamic Execution Architektur Die Dynamic Execution Arch- tiketur besitzt unter anderem die Data Flow Analysis. Mit deren Hilfe ist es möglich, dass die Daten analysiert werden. So kann durch out- of-order Execution der Instruktionen eine non-blocking Architektur er- möglicht werden, die processor stalls während Cache-, Hauptspeicher- und I/O-Zugri�en vorbeugt. Die ergegnisunabhängigen Instruktionen werden out-of-order ausgeführt, während die ergebnisabhängigen In- struktionen in Programmreihenfolge ausgeführt werden, sobald ihre Operanden bereit stehen. Ein weiterer Punkt ist die Spekulative Ausführung und die Sprung- vorhersagen. Hier werden Ausführungen spekulativ ausgeführt, sodass sie im evtuell späteren Verlauf schon berechnet vorliegen. Da die P6 Architektur nur acht general purpose Register zur Verfü- gung stellt, werden durch Register Renaming nicht benötigte der 40 physikalischen Register umbenannt und genutzt. Das Blockschaltbild, welches die drei Haupteinheiten (Fetch/Decode-, Dispatch/Execute-, Retire Units) zeigt, be�ndet sich in Abbildung 2.

    6

  • Ceselski, Rosendahl Intel P III-S vs. P4

    Abbildung 2: Intel P6 Dynamic Execution [8]

    Fetch/Decode Einheit Die Fetch Decode Einheit fungiert als in- order Pipeline. Im ICache liegen Instruktionen, so dass die CPU bei Bedarf schnell darauf zugreifen kann. Die Instruktionen werden von der Bus Interface Unit (BIU) angeliefert. Die Next_IP Einheit wird vom BTB gesteuert und zeigt so auf die vorhergesagte Instruktion. Der 512 Einträge groÿe Branch Target Bu�er (BTB) benutzt für die Sprung- vorhersage eine Erweiterung des Yeh Algorithmus, um eine Sprung- vorhersagegenauigkeit von über 90% zu gewährleisten. [8] Der ICache lädt die Cachezeile anhand des Next_IP Zeigers, und über- gibt diese an die drei parallel arbeiteten Decoder. Die meisten Instruk- tionen werden direkt in eine µ-op decodiert. Die komplexen Instruk- tionen werden in der Microcode Instruction Sequencer Einheit(MIS) als gespeicherte µ-ops Sequenzen decodiert. Anschliessend werden die µ-ops an die RAT (Register Alias Table) geschickt, wo sie dann in die P6 konformen Register umgewandelt werden. Verdeutlicht wird dies im Blockschaltbild in der Abbildung 3.[8]

    7

  • Ceselski, Rosendahl Intel P III-S vs. P4

    Abbildung 3: Fetch/Decode Unit [8]

    Dispatch/Execute Einheit Die Dispatch Unit selektiert die µ- ops aus dem Instruktions-Pool entsprechend ihres Status. Wenn für die µ-op alle Operanden vorhanden sind und die Execution Unit frei ist, so wird die Instruktion an die entsprechende Execution Unit gesendet und abgearbeitet. Das Ergebnis dieser Instruktion wird im Instruction Pool gespeichert. Verdeutlicht wird dies im Blockschaltbild in der Abbildung 4.[8]

    Abbildung 4: Dispatch/Execute Unit [8]

    8

  • Ceselski, Rosendahl Intel P III-S vs. P4

    Retirement Einheit Die Retirement Unit überprüft den Status der Instuktionen im Instruktions-Pool und sucht die bereits ausge- führten µ-ops. Die Retirement Einheit muss aber auch die richtige Reihenfolge der Befehle wiederherstellen. Die Retirement Unit sucht im Instruction Pool nach der richigen Reihenfolge. Das Ergebnis wird einerseits zurück in den Instruction Pool sowie in das Register Reti- rement File (RRF) geschrieben. Die Retirement Einheit kann 3 µ-ops / clock aussetzen. Veranschaulicht wird dies im Blockschaltbild in der Abbildung 5.[8]

    Abbildung 5: Retire Unit [8]

    9

  • Ceselski, Rosendahl Intel P III-S vs. P4

    2.2 NetBurst

    Die NetBurst-Architektur ist der Nachfolger der P6-Architektur und wurde von Intel erstmals Ende 2000 mit dem Pentium 4 (Willamette Kern) verö�entlicht. Prinzipiell besteht sie aus vier Teilen, dem Me- mory Subsystem, dem In-Order Front End, der Out-of-Order Engine und den Integer- and FP Execution Units. [10]

    Abbildung 6: NetBurst Architektur

    Abbildung 7 zeigt die NetBurst-Architektur detaillierter. Der Über- sicht halber sind die vier Kom

Search related