2.3 Beispiele für Multikern-Architekturen 2.3.1 Intel ... · PDF file•Matrox...

download 2.3 Beispiele für Multikern-Architekturen 2.3.1 Intel ... · PDF file•Matrox Mystique, 3dfx Voodoo ... •Unified memory architecture

If you can't read please download the document

Transcript of 2.3 Beispiele für Multikern-Architekturen 2.3.1 Intel ... · PDF file•Matrox...

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 53

    2.3 Beispiele fr Multikern-Architekturen

    2.3.1 Intel-Nehalem-Architektur

    MESIF- (links) vs. MESI-Protokoll (rechts) Annahme: Prozessor links unten und rechts oben haben Kopie

    MESIF : Nur Prozessor, dessen Cachezeile im Zustand Forward ist, antwortet

    MESI : alle Kopien im Zustand Shared und alle antworten auf eine Anfrage, z.B von

    Prozessor rechts unten

    Folge: hhere Busbelastung

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 54

    2.3 Beispiele fr Multikern-Architekturen

    2.3.1 Intel-Nehalem-Architektur

    Nehalem-Modelle im Vergleich

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 55

    2.3 Beispiele fr Multikern-Architekturen

    2.3.2 Intel Sandy-Bridge-Architektur

    Nehalem/Westmere im Vergleich zu Sandy Bridge Quelle Bilder/Informationen: www.ht4u.net

    Neu gegenber Nehalem:

    Einigermaen neu: LLC (Last Level Cache) und System Agent

    Komplett neu: Ringbus

    Teile der Front-End-Pipeline neu gestaltet

    http://www.ht4u.net/

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 56

    2.3 Beispiele fr Multikern-Architekturen

    2.3.2 Intel Sandy-Bridge-Architektur

    Sandy-Bridge-Mikroarchitektur im berblick

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 57

    2.3 Beispiele fr Multikern-Architekturen

    2.3.2 Intel Sandy-Bridge-Architektur

    Einordnung Intel Mikroarchitekturen / Prozessormodelle

    Modell-

    familie

    Core 2

    Quad

    Core i7

    9xx

    Core i7

    8xx & i5

    7xx

    Core i5

    6xx & i3

    5xx

    Core i7, i5,

    i3

    Phenom II

    Codebezeich

    nung

    Yorfkfield Bloomfield /

    Westmere

    Lynnfield Clarkdale Sandy

    Bridge

    Deneb /

    Thuban

    Erscheinungs

    datum

    Ende 2007 Nov. 2008 /

    Mrz 2010

    Sep. 2009 Jan. 2010 Jan. 2011 Feb. 2009

    Sockel 775 1366 1156 1156 1155 AM3

    max. Takt

    [GHz]

    3,2 3,33 / 3,33 3,06 3,6 3,4 3,6 / 3,3

    Fertigung 45 nm 45 nm / 32

    nm

    45 nm 45 nm + 32

    nm

    32 nm 45 nm

    Die-Gre

    [mm]

    2x 107 275 / 248 296 81 + 114 131 bis 216 max. 258 /

    346

    Transistoren

    [Mio]

    820 731 / 1170 774 383 + 177 504 bis 995 max. 758 /

    904

    max. TDP

    [Watt]

    130 130 95 87 95 140

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 58

    2.3 Beispiele fr Multikern-Architekturen

    2.3.2 Intel Sandy-Bridge-Architektur

    Sandy-Bridge Frontend- Pipeline

    Besteht aus Sprungvorhersageeinheit

    Befehlsholeinheit

    Dekodieren

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 59

    2.3 Beispiele fr Multikern-Architekturen

    2.3.2 Intel Sandy-Bridge-Architektur

    Befehlsholeinheit

    Nutzt Mikrobefehls-Cache (OP- Cache)

    enthlt bereits in RISC-OP-Befehle dekodierte CISC-Befehle Funktionsweise analog zu Loop Buffer (s. S. 45)

    Spart Energie und Zeit im Falle einer notwendigen Dekodierung

    Unterschied zu Loop Streaming Detector (LSD) bei Nehalem nicht auf eine bestimmte Schleife beschrnkt

    Sprungvorhersage

    2-Bit-Vorhersage wurde weiter optimiert (s. Kap. 1, S. 41) (strongly taken, weakly taken, weakly not taken, strongly not taken)

    Mehrere Vorhersagebits fr verschiedene Sprungbefehle verwenden

    Spart Platz -> Vorhersagen fr mehre Sprnge mglich

    Bei dicht aufeinanderfolgenden Sprungzielen Prfix der Sprungziele nur einmal speichern (s. Branch History Tabelle in Kap. 1)

    spart Speicherplatz und damit Energie

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 60

    2.3 Beispiele fr Multikern-Architekturen

    2.3.2 Intel Sandy-Bridge-Architektur

    Sandy-Bridge Backend-Pipeline

    Besteht aus Register-Allokierung / Registerumbenennung

    Out-of-order Ablaufplanung, Out-of-order Ausfhrung

    Retirement oder Reorder (Rckschreiben in Scoreboard/Tomasolu)

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 61

    2.3 Beispiele fr Multikern-Architekturen

    2.3.2 Intel Sandy-Bridge-Architektur

    Register-Allokierung / Registerumbenennung PRF (Physical Register File)

    Kein Kopieren in Reservierungstationen / Mitfhren von Kopien der

    Operanden in Pipelinestufen (s. Pipelineregister, Puffer

    Reservierungsstationen, Kap. 1, S. 31, 79)

    Stattdessen, einen groen Registersatz und Zeiger in Pipelinestufen

    mitfhren

    Zeiger geringere Anzahl Bits -> spart Energie

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 62

    2.3 Beispiele fr Multikern-Architekturen

    2.3.2 Intel Sandy-Bridge-Architektur

    Memory-Cluster zur Erhhung der Bandbreite zwischen Cache/Load-Store-Einheiten

    Nehalem drei Lade-/Speichereinheiten zum Laden von Daten/ Adressspeicherung /

    und Speichern der Daten

    Sandy Bridge die ersten beiden Einheiten nun symmetrisch

    Ferner hhere Bandbreite (48 Bytes/Zyklus statt 32 Bytes/Zyklus)

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 63

    2.3 Beispiele fr Multikern-Architekturen

    2.3.3 Von Intel-Nehalem- bis Haswell-Architektur (Haswell)

    Einfhrung Transactional Memory TM in Haswell

    Vermeidung von blockierenden Codes Threads durch locks s. Bsp. Tafel

    Konflikte bei TM bei eager Detektion (s. Bsp. Tafel)

    lazy Detektion (s. Bsp. Tafel)

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 64

    2.3 Beispiele fr Multikern-Architekturen

    2.3.3 Von Intel-Nehalem- bis Haswell-Architektur (Haswell)

    TM in Haswell

    Hardware-Lock-Elision (HLE) Kompatibel mit alten Befehlen

    2 neue Prfix-Instruktionen: XACQUIRE and XRELEASE

    Setzt Lock aus

    Restricted Transactional Memory (RTM) Nun explizite Befehle zur Abgrenzung von Transaktionen und berprfen

    ob Konflikt eingetreten ist

    XBEGIN, XEND und XABORT

    XTEST: berprft ob Kode gerade Kode einer Transaktion ausfhrt

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 65

    2.4 Heterogene Multikern-Architekturen

    2.4.1 GPGPU General Purpose Graphics Processing Unit

    Eine kurze Geschichte der Grafikkarten

    ursprnglich: Graphics Card steuert Monitor an

    Mitte 80er: Grafikkarten mit 2D-Beschleunigung

    angelehnt an Arcade- und Home-Computer

    frhe 90er: erste 3D-Beschleunigung:

    Matrox Mystique, 3dfx Voodoo

    Rastern von Polygonen

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 66

    2.4 Heterogene Multikern-Architekturen

    2.4.1 GPGPU Einfhrung

    Eine kurze Geschichte der Graphikkarten

    ursprnglich keine einheitliche Programmierschnittstelle

    herstellerspezifische Lsungen

    (3dfx Glide bzw. Matrox Simple Interface)

    Anfang der 90er:

    OpenGL etabliert in professionellem Umfeld

    Microsofts Direct3D zunchst unterlegen

    gewinnt Marktanteile dank hufiger Verbesserungen

    Ende der 90er:

    Grafikkarten bernehmen Koordinaten-Transformation und

    Beleuchtung (z.B. NVIDIA GeForce 256)

    Begriff Graphics Processing Unit wird erfunden

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 67

    2.4 Heterogene Multikern-Architekturen

    2.4.1 GPGPU Einfhrung

    2000er:

    zunchst nur Fixed-Function-Pipeline (FFP)

    Shader-Programme bieten mehr Flexibilitt als FFP

    Pixel-Shader modellieren Oberflchen

    Vertex-Shader modifizieren Gitterpunkte

    Shader-Programme ursprnglich nur einfache Listen

    2002: ATI Radeon 9700 kann Loops in Shadern ausfhren

    Heute:

    Shader turing-vollstndig

    Hersteller: ATI und NVIDIA

    Massenmarkt niedrige Preise

  • Lehrstuhl Informatik 3 - Prof. D. Fey

    Vorlesung Rechnerarchitektur

    WS 2013/14 28.11.2013-19.12.2013 Folie 68

    2.4 Heterogene Multikern-Architekturen

    2.4.1 GPGPU Einfhrung

    Zusammenfassung historische Entwicklung

    VGA Controller

    Memory Controller

    Display Generator

    GPU (Graphics Processing Unit)

    bearbeitet traditionelle Graphik-Pipeline in einem Chip

    zunchst weitgehend festverdrahtet

    GPGPU (General Purpose Graphics Pr