Vorlesung Rechnerarchitektur. Mehrkernarchitekturen

Größe: px
Ab Seite anzeigen:

Download "Vorlesung Rechnerarchitektur. Mehrkernarchitekturen"

Transkript

1 Mehrkernarchitekturen

2 Einführung Die Entwicklung von Mikroprozessoren war viele Jahre vom Prinzip des minimalen Hardwareaufwandes geprägt. (Intel 4004 mit 1000 Transistoren...) Die Entwicklung der Halbleitertechnik (Moores Law) führte exponentiell zu immer höherer Integrationsdichte der Prozessorchips und erlaubte immer größere Freiheitsgrade im Prozessorentwurf 2

3 Einführung 3

4 Einführung Seit vielen Jahren hat sich deshalb die Frage umgekehrt von: wie bringt man einen kompletten Prozessor in einem Chip unter in die Frage: wie setzt man die zig Millionen Transistoren effizient in einem Prozessor-Chip ein? 4

5 Einführung Wie werden und wurden die Freiheitsgrade des Prozessorentwurfs genutzt? Das wird in folgenden Kapiteln behandelt: 1) Erweiterung des Steuerwerkes zur überlappenden Verarbeitung von Befehlen 2) Vervielfachung der Verarbeitungseinheiten zur nebenläufigen Ausführung der Befehle (Superskalarität, Out of Order Execution, SMT) 3) Mehrkernarchitektur 4) Koprozessoren 5

6 1. Erweiterung des Steuerwerkes zur überlappenden Verarbeitung von Befehlen Phasenpipelining Prinzip: Mehrere Befehle sind gleichzeitig, aber in unterschiedlichen Phasen im Prozessor in Arbeit und verwenden unterschiedliche Komponenten des Prozessors Ziel: cycles per instruction (CPI) = 1 Frage nach der optimalen Pipelinetiefe I Je mehr Stufen, desto mehr Befehle sind gleichzeitig in Arbeit Je mehr Stufen, desto eher wird CPI = 1 erreicht Voraussetzung: Anpassung des Befehlssatzes an Pipelinebedingungen (RISC, Load-Store und Register-Register Architektur) Probleme des Phasenpipelinings (Steuerungs- Lade- und strukturelle Konflikte) 6

7 1. Erweiterung des Steuerwerkes zur überlappenden Verarbeitung von Befehlen Phasenpipelining Verfahren zur Lösung der Konflikte Hardware (Forwarding, Branch Prediction mit Branch History Table und Branch Target Buffer, Caches Befehlssatzerweiterung (bedingte Befehlsausführung) Software (Pipelinegemäße Sortierung der Befehle durch den Compiler) Nicht immer sind Konflikte auflösbar! Frage nach der optimalen Pipelinetiefe II Je mehr Stufen, desto schlimmer ist ein Leeren und Neustart der Pipeline nach falscher Sprungvorhersage Stand der Forschung ist: Pipelinetiefe von ist optimal 7

8 1. Erweiterung des Steuerwerkes zur überlappenden Verarbeitung von Befehlen Prozessor Jahr Pipelinestufen Pentium IV Intel Core Duo Arm Arm Arm Cortex A Intel Sandy Bridge Stiegen die Pipelinestufen jahrelang an, haben sie sich jetzt auf um die 15 eingependelt 8

9 2. Vervielfachung der Verarbeitungseinheiten zur nebenläufigen Ausführung mehrerer Befehle Funktionspipelining Superskalare Architekturen Von CPI zu IPC (instruction per cycle) Wird auf Basis des Phasenpipelinings betrieben Prinzip wie in der industriellen Fertigung: Wenn der Output eines bereits optimal laufenden Fließbandes gesteigert werden soll, braucht man noch ein Fließband Prozessoren haben mehrere (spezialisierte) Verarbeitungseinheiten die von der (entsprechend erweiterten) Control Unit mit Befehlen versorgt werden z.b. Integer Unit, Floating Point Unit, Load/Store Unit 9

10 2. Vervielfachung der Verarbeitungseinheiten. DEC Alpha (1992) 2 Befehle werden gleichzeitig geholt, von der EBOX decodiert und an zwei der drei Verarbeitungseinheiten verteilt, wenn der Befehlsstrom das erlaubt: Bei Integer und Float oder Integer und Load oder Float und Load Befehlskombinationen ist das möglich.sonst nicht. Die Superskalarität ist deshalb eingeschränkt 10

11 2. Vervielfachung der Verarbeitungseinheiten... Intel Pentium II (1996) Drei Dekodierer dekodieren den Befehlsstrom für sechs Verarbeitungseinheiten Komplexe Befehle werden vom General Decoder in Phasenpipeline taugliche μop Sequenzen (Risc Befehle) überführt 11

12 2. Vervielfachung der Verarbeitungseinheiten... Pentium III (1999) Die Superskalarität kommt weiter voran: Es gibt zusätzliche für Vektoroperationen spezialisierte Rechenwerke (MMX und SSE) 12

13 2. Vervielfachung der Verarbeitungseinheiten... Pentium IV (2001) Nochmals mehr Rechenwerke, erweiterte SSE, 32 Pipelinestufen und weit über 3 GHz. Wie geht das weiter? 13

14 2. Vervielfachung der Verarbeitungseinheiten... Probleme Superskalarer Befehlsausführung: Der vom Compiler erzeugte sequentielle Befehlsstrom soll zur Laufzeit parallel von den Verarbeitungseinheiten ausgeführt werden. Der sequentielle Befehlsstrom enthält viele Datenabhängigkeiten,die eine sequentielle Ausführung erfordern und die superskalare Bearbeitung behindern. Die Probleme des Phasenpipelinings (Datenflussabhängigkeiten) verschärfen sich oder: Wenn eine Phasenpipeline Probleme macht, machen mehrere Pipelines noch mehr Probleme. Also: Prozessoren werden mit zusätzlicher Logik ausgestattet, um die Datenabhängigkeiten möglichst aufzulösen 14

15 2. Vervielfachung der Verarbeitungseinheiten... Probleme Superskalarer Befehlsausführung Lösung 1: Register Renaming I1 I2 I3 Datenflußabhängigkeiten (I1,I2) sind nicht auflösbar I4 R3 R4 R3 R7 = = = = R3 R3 R5 R3 op R op R4 Antiabhängigkeiten (I3, I2) und Ausgabeabhängigkeiten (I1,I3) sind mit Register Renaming auflösbar. Schattenregister im Prozessor werden bei Registerkonflikten ( I2 und I3) eingesetzt: R5 + 1 wird in einem Schattenregister gespeichert und erst in R3 abgelegt, wenn I2 abgeschlossen ist. 15

16 2. Vervielfachung der Verarbeitungseinheiten... Probleme Superskalarer Befehlsausführung: Lösung 2: Out Of Order Execution Ziel: optimale Ausnutzung der Verarbeitungseinheiten Idee: Die Instruktionen liegen aufbereitet in einem Zwischenspeicher (reservation station). Diejenigen, deren Operanden bereitstehen und für die eine Verarbeitungseinheit frei ist, werden im nächsten Zyklus ausgeführt. (Datenflußprinzip) Die Befehlsausführung wird zur Laufzeit des Programms von der Hardware parallelisiert! Problem: Die Ergebnisse der Operationen müssen nachträglich in der eigentlich erwünschten Reihenfolge ausgegeben werden. Dafür gibt es einen zusätzlichen Reorder Buffer Siehe dazu das Blockschaltbild des Pentium Pro 16

17 2. Vervielfachung der Verarbeitungseinheiten... Probleme Superskalarer Befehlsausführung: Grenzen der Superskalarität: Die Anzahl der nebenläufig ausführbaren Befehle ist bei sequentiellem Programmiermodell sehr beschränkt. Weitere zusätzliche Rechenwerke sind nicht effizient Diese Grenze ist verschiebbar, wenn die Menge der nebenläufig auszuführenden Befehle erweitert werden kann. Vielfädige superskalare Prozessoren Hyper Threading oder Simultaneous Multithreading (SMT) sind Techniken, die den Pool der ausführbaren Befehle aus mehreren Threads eines Prozesses füllen. Das setzt multithreaded programmierte Software voraus. 17

18 2. Vervielfachung der Verarbeitungseinheiten... Aktuelle Ansätze zur Beschleunigung parallelisierter Anwendungen SMT: im Prozessor werden nur bestimmte Puffer und Register mehrfach angelegt. Die restlichen Komponenten werden von mehreren Threads gleichzeitig genutzt. Voraussetzung: Der Prozessor meldet sich dem System mit mehr als einem Prozessor. Betriebssystem teilt soviele Threads, wie Prozessoren gemeldet sind, an die CPU(s) Vorteil: Der zusätzliche Hardwareaufwand ist gering (5% bei Intel) Nachteil: mehrere Threads teilen sich die Mehrheit der Ressourcen, so dass die Performance bei starker Auslastung geringer ausfällt als die eines echten Mehrkern-Prozessors. 18

19 2. Vervielfachung der Verarbeitungseinheiten... Aktuelle Ansätze zur Beschleunigung parallelisierter Anwendungen Core Multithreading (CMT) ist ein Mittelweg zwischen SMT/Hyperthreading mit geteilten Ressourcen für mehrere Threads und einem echten Mehrkern-Prozessor. Bei CMT werden deutlich weniger Ressourcen geteilt als bei SMT/Hyperthreading, so dass die Performance in der Theorie bei stark parallelisierten Anwendung besser sein sollte. Gleichzeitig teilen sich Threads jedoch einige Ressourcen, um Transistoren zu sparen. Beispiel: Bulldozer von AMD 19

20 2. Vervielfachung der Verarbeitungseinheiten... Aktuelle Ansätze zur Beschleunigung parallelisierter Anwendungen Core Multithreading AMD Bulldozer Die Fetch- und Dekodiereinheit werden zwischen den Threads geteilt. Die Dekodier-Stufe übersetzt x86-befehle in Maschinenbefehle. Dann greift jeder Thread auf seine eigenen Ressourcen zu. Ein solcher CMT-Komplex enthält zwei Integer-Cluster mit eigenem Scheduler und Ausführungseinheiten, sowie eienen eigenen L1-Daten-Cache. Jeder Thread kann daher seinen eigenen IntegerCluster nutzen ohne den anderen zu stören. Es gibt einen Floating-Point-Cluster für Gleitkomma-Befehle. Dieser kann wahlweise zwischen den Threads geteilt oder von einem Thread allein genutzt werden. 20

21 2. Vervielfachung der Verarbeitungseinheiten... Aktuelle Ansätze zur Beschleunigung parallelisierter Anwendungen Core Multithreading AMD Bulldozer 21

22 2. Vervielfachung der Verarbeitungseinheiten zur nebenläufigen Ausführung mehrerer Befehle Aktuelle Ansätze zur Beschleunigung parallelisierter Anwendungen Der folgende Ansatz zur Beschleunigung parallelisierter Anwendungen führt ins nächste Kapitel: Vervielfachung der Prozessorkerne in einem Chip zur nebenläufigen Ausführung von Threads und Prozessen, kurz Mehrkernarchitektur. 22

23 2. Vervielfachung der Verarbeitungseinheiten zur nebenläufigen Ausführung mehrerer Befehle Zwischenfazit : Früher wurden komplexe Befehle einfach und sequentiell ausgeführt. Heute führen Prozessoren in der Regel einfache Befehle überlappend und nebenläufig mit einer sehr aufwendigen und komplexen Control Unit aus Aber alle bisherigen Techniken zur optimalen Nutzung der vielen Verarbeitungseinheiten skalieren nicht mit den Möglichkeiten der Hardwareentwicklung. So hochparallel ist Software nicht, um immer mehr Verarbeitungseinheiten gleichzeitig nutzen zu können Bei Mehrkern-Prozessoren verbreitert sich die Softwarebasis zur parallelen Ausführung automatisch, weil jetzt mehrere Prozesse und ihre Threads zur Ausführung gebracht werden können. 23

24 2. Vervielfachung der Verarbeitungseinheiten zur nebenläufigen Ausführung mehrerer Befehle Es gibt auch technische und wirtschaftliche Gründe für MehrkernProzessoren. Es ist kostengünstiger, mehrere Kerne in einen Chip zu implementieren, als mehrere Prozessorsockel auf der Hauptplatine zu haben.. 24

25 3. Mehrkernprozessoren Was ist das? Begriff Mehrkern-Prozessor ( Multicore-Prozessor, Multikernprozessor) bezeichnet einen Mikroprozessor mit mehr als einem vollständigen Hauptprozessorkern in einem einzigen Chip. Sämtliche Ressourcen mit Ausnahme des Busses und eventuell einiger Caches sind so oft vorhanden, wie es Kerne gibt. Es handelt sich um mehrere vollständige, weitgehend voneinander unabhängige CPU-Kerne. Mehrkern-Prozessoren gibt es seit

26 3. Mehrkernprozessoren Einordnung: Mehrkernprozessor arbeiten prinzipiell wie vorher gängige Multiprozessor Systeme mit gemeinsamem Speicher (shared memory). Dabei waren mehrere pipelined und superskalare Prozessoren auf einer Platine aufgebaut und mit dem Speicher zu einem System verbunden. Ein Multiprozessorsystem mit shared memory ist in der Regel ein symetrisches Multiprozessorsystem (SMP), das heißt: die Prozessoren sind im System funktional gleich ( alles kann überall laufen ) 26

27 3. Mehrkernprozessoren Einordnung: Es gibt zwei systematische Probleme: Gleichzeitige Hauptspeicherzugriffe mehrerer CPUs behindern sich gegenseitig Lösung 1. Speicherarchitektur erweitern (Bandbreite erhöhen, Zugriffe beschleunigen, Burstmode) Lösung 2. Anzahl Speicherzugriffe verringern durch Verbesserung der Speicherhierarchie (größere Caches) Cachekonsistenz, weil Daten von mehreren CPUs in den CPUCache geladen und aktualisiert werden können und dann voneinander abweichen. Lösung: Snoopy Logic - Jede CPU schnüffelt am Adressbus jeder anderen CPU und stellt mit dieser Hardwareerweiterung potentielle Inkonsistenzen fest Auf Basis des MESI Protokolls sorgt eine Hardware dafür, dass eine Cachekohärenz (eingeschränkte Konsistenz) hergestellt wird. 27

28 3. Mehrkernprozessoren Einordnung: Mehrkernprozessoren sind Multiprozessorsystemen überlegen, weil die Wege deutlich kürzer sind, Kommunikation für Cachekohärenz beispielsweise bleibt innerhalb des Chips Kombination: Multiprozessorsysteme werden heute mit MehrkernProzessoren aufgebaut 28

29 3. Mehrkernprozessoren Intel Core 2 Core 2 Duo Basiert auf Pentium M Architektur Folgende Erweiterungen wurden implementiert: Dynamic Execution (Out of Order Execution) 32-KByte L1 Instruction-Cache 32KByte L1 Data-Cache Bis zu 2 MByte L2 Cache Erweiterte Branch-Prediction und Data-Prefetch-Logic Unterstützung für MMX-Technology, Streaming-SIMD Befehle (SSE2) Erweitertes Power-Management (Intel SpeedStep Technologie) 29

30 3. Mehrkernprozessoren Intel Ivy Bridge Architektur ist bereits Dritte Core-i-Generation. Jeder Kern hat eigenen L2 Cache GPU ist auf dem Chip integriert bei gleicher Taktfrequenz etwas schneller und sparsamer im Verbrauch zu Vorgänger. 26 Prozent weniger Siliziumfläche bei 20 Prozent mehr Transistoren. Zusätzliche Transistoren für die Grafik-Einheit HD Neu sind die Tri-Gate-Transistoren mit weniger Leckströmen und besserer Energieeffizienz. 30

31 3. Mehrkernprozessoren Intel Ivy Bridge Architektur Interner Ringbus: Die Caches werden mit Kernen, dem Speichercontroller und der GPU mit einem internen Ringbus verbunden. Er besteht aus vier Links: 256-Bit-Datenring Request-Ring Acknowledge-Ring ) und einem Snoop-Ring (snoop = lauschen, spionieren). AVX Advanced Vektor Extension mit 256 bit breiten Vektorregistern Kombination von Mehrkern und HT 31

32 3. Mehrkernprozessoren Arm Cortex A57 Es handelt sich hier um einen 4Kern Prozessor mit Phasenpipeline Out of Order Execution Vektoreinheit NEON/SIMD integrierten großen L1 Caches, einem gemeinsamen L2 Cache.. 32

33 4. Mehrkern-Koprozessoren Graphics Processing Unit (GPU) Der Grafikprozessor dient zur Berechnung der Bildschirmausgabe auf Computern. Mit dem Wandel von textbasierter zu grafikbasierter Bildschirmausgabe mit 3D Effekten wuchs ständig der Bedarf an Prozessoren, die für solche Aufgaben optimiert sind GPU Die Aufgaben der GPU zeichnen sich durch ein hohes Maß an Datenparallelität aus Datenparallelität wird im GPU Entwurf berücksichtigt Vektorprozessor GPUs arbeiten nach dem Prinzip SIMD (singl instruction, multiple data), das meint, zu einem Zeitpunkt wird die gleiche Operation auf vielen Daten ausgeführt und es werden viele Daten modifiziert. 33

34 4. Mehrkern-Koprozessoren Graphics Processing Unit (GPU) GPUs setzen die Transistoren im Gegensatz zu CPUs hauptsächlich für viele (im drei- und vierstelligen Bereich) einfache Rechenwerke ein. Viele Grafikaufgaben, wie z.b. Transform and Lightning sind einfache Vektorund Matrizenoperationen. Sie lassen sich gut in Hardware implementieren, da keine Flexibilität gefordert ist. GPUs haben einen spezialisierten Befehlssatz 34

35 4. Mehrkern-Koprozessoren Graphics Processing Unit (GPU) - Wissenschaft und Technik Vektor- und Matrizenoperationen werden in Wissenschaft und Technik häufig eingesetzt. Moderne GPUs ermöglichen es, solche Berechnungen als Koprozessor der CPU abzunehmen und diese damit enorm zu beschleunigen. Frameworks wie CUDA und OpenGL unterstützen die Softwareentwickler darin, die Resourcen der GPU effizient einzubinden Ein Effizienzproblem dabei ist, dass der Austausch der Daten und Ergebnisse zwischen CPU und GPU eine deutliche Mehrarbeit erfordert und die Beschleunigung hinter den Erwartungen zurückbleibt 35

36 4. Mehrkern-Koprozessoren Intel XEON PHI - Eigenschaften Wird von Intel als MIC (many integrated core architecure) bezeichnet Besteht aus vielen (z.b. 60) vollwertigen Prozessoren (Pentium M) mit eigenem L1 und L2 Cache. Ringbus wie bei anderen Intel Mehrkern Prozessoren (siehe Core 2 duo) Gemeinsamer L3 Cache onchip SIMD Vektoreinheit zur Unterstützung datenparalleler Algorithmen Flexibel einsetzbar: Anders als eine GPU kann der Coprozessor unter einem bestimmten Betriebssystem laufen, vollständig IP-adressierbar sein und Standards wie das Message Passing Interface (MPI) unterstützen. 36

37 4. Mehrkern-Koprozessoren Intel XEON PHI Programmierung Programme (C, C++, Fortran) für Intel XEON entwickelt, können durch Compileranweisungen des Entwicklers leicht vom Compiler parallelisiert werden, indem die Resourcen des XEON PHI einbezogen werden. (Vergleichbar mit dem Konzept von OpenMP) Kann er in mehreren Ausführungsmodi betrieben werden: Symmetrischer Modus: Workload-Tasks werden auf den Systemprozessor und den Coprozessor aufgeteilt Nativer Modus: Workload wird komplett vom Coprozessor übernommen, der praktisch als eigener Rechenknoten fungiert Offload -Modus: Workload befindet sich im Zugriff des Systemprozessors und Teile der Verarbeitung werden bei Bedarf dem Coprozessor übermittelt HINWEIS: GPUs können nur in diesem Modus betrieben werden und sind häufig untätig 37

Vorlesung Rechnerarchitektur. Einführung

Vorlesung Rechnerarchitektur. Einführung Vorlesung Rechnerarchitektur Einführung Themen der Vorlesung Die Vorlesung entwickelt an Hand von zwei Beispielen wichtige Prinzipien der Prozessorarchitektur und der Speicherarchitektur: MU0 Arm Speicher

Mehr

Teil 1: Prozessorstrukturen

Teil 1: Prozessorstrukturen Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium

Mehr

Die Sandy-Bridge Architektur

Die Sandy-Bridge Architektur Fakultät Informatik - Institut für Technische Informatik - Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Die Sandy-Bridge Architektur René Arnold Dresden, 12. Juli 2011 0. Gliederung 1.

Mehr

2 Rechnerarchitekturen

2 Rechnerarchitekturen 2 Rechnerarchitekturen Rechnerarchitekturen Flynns Klassifikation Flynnsche Klassifikation (Flynn sche Taxonomie) 1966 entwickelt, einfaches Modell, bis heute genutzt Beschränkung der Beschreibung auf

Mehr

Inhalt. Prozessoren. Curriculum Manfred Wilfling. 28. November HTBLA Kaindorf. M. Wilfling (HTBLA Kaindorf) CPUs 28. November / 9

Inhalt. Prozessoren. Curriculum Manfred Wilfling. 28. November HTBLA Kaindorf. M. Wilfling (HTBLA Kaindorf) CPUs 28. November / 9 Inhalt Curriculum 1.4.2 Manfred Wilfling HTBLA Kaindorf 28. November 2011 M. Wilfling (HTBLA Kaindorf) CPUs 28. November 2011 1 / 9 Begriffe CPU Zentraleinheit (Central Processing Unit) bestehend aus Rechenwerk,

Mehr

Neue Prozessor-Architekturen für Desktop-PC

Neue Prozessor-Architekturen für Desktop-PC Neue Prozessor-Architekturen für Desktop-PC Bernd Däne Technische Universität Ilmenau Fakultät I/A - Institut TTI Postfach 100565, D-98684 Ilmenau Tel. 0-3677-69-1433 bdaene@theoinf.tu-ilmenau.de http://www.theoinf.tu-ilmenau.de/ra1/

Mehr

Seminar Multicore-Programmierung

Seminar Multicore-Programmierung Multicore- und GPGPU-Architekturen Fakultät für Informatik und Mathematik Universität Passau 04. November 2010 APUs / 1 / 39 Inhaltsverzeichnis I APUs / APUs / 2 / 39 Inhaltsverzeichnis II APUs / 3 / 39

Mehr

Arbeitsfolien - Teil 4 CISC und RISC

Arbeitsfolien - Teil 4 CISC und RISC Vorlesung Informationstechnische Systeme zur Signal- und Wissensverarbeitung PD Dr.-Ing. Gerhard Staude Arbeitsfolien - Teil 4 CISC und RISC Institut für Informationstechnik Fakultät für Elektrotechnik

Mehr

JR - RA - SS02 Kap

JR - RA - SS02 Kap 3.1 Elementare Datentypen, Operationen und ihre Realisierung (siehe 2.1) 3.2 Mikroprogrammierung 3.3 Einfache Implementierung von MIPS 3.4 Pipelining 3.5 Superskalare Befehlsausführung JR - RA - SS02 Kap.

Mehr

Im Bereich der Entwicklung und Herstellung von Prozessoren spielen

Im Bereich der Entwicklung und Herstellung von Prozessoren spielen Prozessor (CPU) Allgemeines, Begriffe, Entwicklung Der Prozessor ist heutzutage das Herzstück fast eines jeden elektronischen Geräts. Er ist ein hochkomplexer Chip, der mit feinsten Halbleiterstrukturen

Mehr

Eine kurze Einführung in Rechnerarchitektur und Programmierung von Hochleistungsrechnern als zentrales Werkzeug in der Simulation

Eine kurze Einführung in Rechnerarchitektur und Programmierung von Hochleistungsrechnern als zentrales Werkzeug in der Simulation Eine kurze Einführung in Rechnerarchitektur und Programmierung von Hochleistungsrechnern als zentrales Werkzeug in der Simulation Dr. Jan Eitzinger Regionales Rechenzentrum (RRZE) der Universität Erlangen-Nürnberg

Mehr

Architektur von Parallelrechnern 50

Architektur von Parallelrechnern 50 Architektur von Parallelrechnern 50 Rechenintensive parallele Anwendungen können nicht sinnvoll ohne Kenntnis der zugrundeliegenden Architektur erstellt werden. Deswegen ist die Wahl einer geeigneten Architektur

Mehr

JR - RA - SS02 Kap

JR - RA - SS02 Kap 3.1 Elementare Datentypen, Operationen und ihre Realisierung (siehe 2.1) 3.2 Mikroprogrammierung 3.3 Einfache Implementierung von MIPS 3.4 Pipelining 3.5 Superskalare Befehlsausführung JR - RA - SS02 Kap.

Mehr

Cell and Larrabee Microarchitecture

Cell and Larrabee Microarchitecture Cell and Larrabee Microarchitecture Benjamin Grund Dominik Wolfert Universität Erlangen-Nürnberg 1 Übersicht Einleitung Herkömmliche Prozessorarchitekturen Motivation für Entwicklung neuer Architekturen

Mehr

Optimierungen der Lattice Boltzmann Methode auf x86-64 basierten Architekturen

Optimierungen der Lattice Boltzmann Methode auf x86-64 basierten Architekturen Optimierungen der Lattice Boltzmann Methode auf x86-64 basierten Architekturen J. Treibig, S. Hausmann, U. Ruede 15.09.05 / ASIM 2005 - Erlangen Gliederung 1 Einleitung Motivation Grundlagen 2 Optimierungen

Mehr

Teil 1: Prozessorstrukturen

Teil 1: Prozessorstrukturen Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium

Mehr

früher: CISC ( Complex Instruction Set Computer )

früher: CISC ( Complex Instruction Set Computer ) Hochleistungs-CPUs früher: CISC ( Complex Instruction Set Computer ) mächtige Instruktionssätze zur Unterstützung von Hochsprachenkonstrukten durch Hardware (Idee: don t do in software what you can do

Mehr

HYPER - THREADING HYPER-THREADING TECHNOLOGY SERGE FOPOUSSI. Serge Fopoussi UNIVERSITÄT BREMEN SEMINAR RECHNERARCHITEKTUR. Prof. Dr.

HYPER - THREADING HYPER-THREADING TECHNOLOGY SERGE FOPOUSSI. Serge Fopoussi UNIVERSITÄT BREMEN SEMINAR RECHNERARCHITEKTUR. Prof. Dr. SEMINAR RECHNERARCHITEKTUR HYPER-THREADING TECHNOLOGY SERGE FOPOUSSI SEMINAR RECHNERARCHITEKTUR GLIEDERUNG 1. BACKGROUND : Arbeitsweise eines von Neumann-Rechners 2. ENTWICKLUNG VON PROZESSOREN 3. HYPER-THREADING

Mehr

Verteidigung der Bachelorarbeit, Willi Mentzel

Verteidigung der Bachelorarbeit, Willi Mentzel Verteidigung der Bachelorarbeit, Willi Mentzel Motivation U.S. Energy Consumption Breakdown 3x Durchschnittliche Leistungsaufnahme 114 Millionen kw Hohes Optimierungspotential 2 Ziele für Energieoptimierung

Mehr

Instruktionen pro Takt

Instruktionen pro Takt (c) Peter Sturm, Universität Trier (u.a.) 1 Instruktionen pro Takt 500 MIPS (Dhrystone) Taktfrequenz 450 400 350 300 250 200 150 100 50 0 8086 80286 80386 80486 Pentium Pentium Pro Die-Größen: Intel Vorlesung

Mehr

Computer - Aufbau u. Funktionsweise

Computer - Aufbau u. Funktionsweise Teil 3 Folie: 1 Ein Computerarbeitsplatz Teil 3 Folie: 2 Was ist in der Box? Hauptplatine, Motherboard Das Bussystem Teil 3 Folie: 3 Unter einem Bussystem (oder kurz einem Bus) versteht man bei einem PC

Mehr

Hochleistungsrechnen auf dem PC

Hochleistungsrechnen auf dem PC Hochleistungsrechnen auf dem PC Steffen Börm Christian-Albrechts-Universität zu Kiel Ringvorlesung Informatik, 26. Juni 2014 S. Börm (CAU Kiel) Hochleistungsrechnen auf dem PC 26. Juni 2014 1 / 33 Übersicht

Mehr

Mikroprozessoren. Aufbau und Funktionsweise. Christian Richter. Ausgewählte Themen der Multimediakommunikation SS 2005

Mikroprozessoren. Aufbau und Funktionsweise. Christian Richter. Ausgewählte Themen der Multimediakommunikation SS 2005 Mikroprozessoren Aufbau und Funktionsweise Christian Richter Ausgewählte Themen der Multimediakommunikation SS 2005 Christian Richter (TU-Berlin) Mikroprozessoren AT MMK 2005 1 / 22 Gliederung Was ist

Mehr

CISC ( Complex Instruction Set Computer ) mächtige Instruktionssätze zur Unterstützung von Hochsprachenkonstrukten

CISC ( Complex Instruction Set Computer ) mächtige Instruktionssätze zur Unterstützung von Hochsprachenkonstrukten Hochleistungs-CPUs CISC ( Complex Instruction Set Computer ) mächtige Instruktionssätze zur Unterstützung von Hochsprachenkonstrukten durch Hardware (Idee: don t do in software what you can do in hardware

Mehr

Hochschule Düsseldorf University of Applied Sciences HSD RISC &CISC

Hochschule Düsseldorf University of Applied Sciences HSD RISC &CISC HSD RISC &CISC CISC - Complex Instruction Set Computer - Annahme: größerer Befehlssatz und komplexere Befehlen höhere Leistungsfähigkeit - Möglichst wenige Zeilen verwendet, um Aufgaben auszuführen - Großer

Mehr

Beispiele von Branch Delay Slot Schedules

Beispiele von Branch Delay Slot Schedules Beispiele von Branch Delay Slot Schedules Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Prozessor 97 Weniger

Mehr

Philipp Grasl PROZESSOREN

Philipp Grasl PROZESSOREN 1 PROZESSOREN INHALTSVERZEICHNIS Definition/Verwendung Prozessor Historische Entwicklung Prozessor Aufbau Prozessor Funktionsweise Prozessor Steuerung/Maschinenbefehle Prozessorkern Prozessortakt 2 DEFINITION

Mehr

Grafikkarten-Architektur

Grafikkarten-Architektur > Grafikkarten-Architektur Parallele Strukturen in der GPU Name: Sebastian Albers E-Mail: s.albers@wwu.de 2 > Inhalt > CPU und GPU im Vergleich > Rendering-Pipeline > Shader > GPGPU > Nvidia Tesla-Architektur

Mehr

Untersuchung und Vorstellung moderner Grafikchiparchitekturen

Untersuchung und Vorstellung moderner Grafikchiparchitekturen Fakultät Informatik, Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Untersuchung und Vorstellung moderner Grafikchiparchitekturen Hauptseminar Technische

Mehr

Johann Wolfgang Goethe-Universität

Johann Wolfgang Goethe-Universität Flynn sche Klassifikation SISD (single instruction, single data stream): IS IS CU PU DS MM Mono (Mikro-)prozessoren CU: Control Unit SM: Shared Memory PU: Processor Unit IS: Instruction Stream MM: Memory

Mehr

Intel P6 (Intel Pentium Pro) - Besonderheiten, Techniken und Architektur

Intel P6 (Intel Pentium Pro) - Besonderheiten, Techniken und Architektur Intel P6 (Intel Pentium Pro) - Besonderheiten, Techniken und Architektur P R O Z E S S O R - U N D R E C H N E R A R C H I T E K T U R P R Ä S E N T A T I O N 1 1. 0 7. 2 0 1 8 B E R N H A R D S A N G

Mehr

DIGITALE SCHALTUNGEN II

DIGITALE SCHALTUNGEN II DIGITALE SCHALTUNGEN II 3. Sequentielle Schaltkreise 3.1 Vergleich kombinatorische sequentielle Schaltkreise 3.2 Binäre Speicherelemente 3.2.1 RS Flipflop 3.2.2 Getaktetes RS Flipflop 3.2.3 D Flipflop

Mehr

General Purpose Computation on GPUs

General Purpose Computation on GPUs General Purpose Computation on GPUs Matthias Schneider, Robert Grimm Universität Erlangen-Nürnberg {matthias.schneider, robert.grimm}@informatik.stud.uni-erlangen.de M. Schneider, R. Grimm 1 Übersicht

Mehr

TECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl

Mehr

Technische Informatik 1 Übung 8 Instruktionsparallelität (Rechenübung) Andreas Tretter 8./9. Dezember Bitte immer eine Reihe freilassen

Technische Informatik 1 Übung 8 Instruktionsparallelität (Rechenübung) Andreas Tretter 8./9. Dezember Bitte immer eine Reihe freilassen Technische Informatik 1 Übung 8 Instruktionsparallelität (Rechenübung) Andreas Tretter 8./9. Dezember 2016 Bitte immer eine Reihe freilassen Ziele der Übung Verschiedene Arten von Instruktionsparallelität

Mehr

CPU, GPU und FPGA. CPU, GPU und FPGA Maximilian Bandle, Bianca Forkel 21. November 2017

CPU, GPU und FPGA. CPU, GPU und FPGA Maximilian Bandle, Bianca Forkel 21. November 2017 CPU, GPU und FPGA, Bianca Forkel 21. November 2017 CPU, GPU und FPGA Inhalt CPU: Central Processing Unit GPU: Graphical Processing Unit FPGA: Field Programmable Gate Array 2 CPU Central Processing Unit

Mehr

Seminar Parallele Rechnerarchitekturen SS04 \ SIMD Implementierung aktueller Prozessoren 2 (Dominik Tamm) \ Inhalt. Seite 1

Seminar Parallele Rechnerarchitekturen SS04 \ SIMD Implementierung aktueller Prozessoren 2 (Dominik Tamm) \ Inhalt. Seite 1 \ Inhalt Seite 1 \ Inhalt SIMD Kurze Rekapitulation 3Dnow! (AMD) AltiVec (PowerPC) Quellen Seite 2 \ Wir erinnern uns: Nach Flynn s Taxonomie kann man jeden Computer In eine von vier Kategorien einteilen:

Mehr

PRIP-Preis. Effizientes Object Tracking durch Programmierung von Mehrkernprozessoren und Grafikkarten

PRIP-Preis. Effizientes Object Tracking durch Programmierung von Mehrkernprozessoren und Grafikkarten Masterarbeit @ PRIP-Preis Effizientes Object Tracking durch Programmierung von Mehrkernprozessoren und Grafikkarten Michael Rauter Pattern Recognition and Image Processing Group Institute of Computer Aided

Mehr

Compiler für f r Eingebettete Systeme (CfES)

Compiler für f r Eingebettete Systeme (CfES) Compiler für f r Eingebettete Systeme (CfES) Sommersemester 2009 Dr. Heiko Falk Technische Universität Dortmund Lehrstuhl Informatik 12 Entwurfsautomatisierung für Eingebettete Systeme Kapitel 9 Ausblick

Mehr

Architektur paralleler Plattformen

Architektur paralleler Plattformen Architektur paralleler Plattformen Freie Universität Berlin Fachbereich Informatik Wintersemester 2012/2013 Proseminar Parallele Programmierung Mirco Semper, Marco Gester Datum: 31.10.12 Inhalt I. Überblick

Mehr

An Introduction to Simultaneous Multi-Threading Prinziples and Architectures

An Introduction to Simultaneous Multi-Threading Prinziples and Architectures An Introduction to Simultaneous Multi-Threading Prinziples and Architectures Seminarvortrag von Thomas Weber Lehrstuhl Rechnerarchitektur Übersicht? Motivation? Aktuelle Microarchitekturen? Scheduling?

Mehr

RST-Labor WS06/07 GPGPU. General Purpose Computation On Graphics Processing Units. (Grafikkarten-Programmierung) Von: Marc Blunck

RST-Labor WS06/07 GPGPU. General Purpose Computation On Graphics Processing Units. (Grafikkarten-Programmierung) Von: Marc Blunck RST-Labor WS06/07 GPGPU General Purpose Computation On Graphics Processing Units (Grafikkarten-Programmierung) Von: Marc Blunck Ablauf Einführung GPGPU Die GPU GPU Architektur Die Programmierung Programme

Mehr

Rechner Architektur. Martin Gülck

Rechner Architektur. Martin Gülck Rechner Architektur Martin Gülck Grundlage Jeder Rechner wird aus einzelnen Komponenten zusammengesetzt Sie werden auf dem Mainboard zusammengefügt (dt.: Hauptplatine) Mainboard wird auch als Motherboard

Mehr

C-to-CUDA-Compiler. Johannes Kölsch. October 29, 2012

C-to-CUDA-Compiler. Johannes Kölsch. October 29, 2012 October 29, 2012 Inhaltsverzeichnis 1 2 3 4 5 6 Motivation Motivation CUDA bietet extreme Leistung für parallelisierbare Programme Kompliziert zu programmieren, da multi-level parallel und explizit verwalteter

Mehr

DIGITALE SCHALTUNGEN II

DIGITALE SCHALTUNGEN II DIGITALE SCHALTUNGEN II 3. Sequentielle Schaltkreise 3.1 Vergleich kombinatorische sequentielle Schaltkreise 3.2 Binäre Speicherelemente 3.2.1 RS Flipflop 3.2.2 Getaktetes RS Flipflop 3.2.3 D Flipflop

Mehr

GPGPU-Architekturen CUDA Programmiermodell Beispielprogramm. Einführung CUDA. Ralf Seidler. Friedrich-Alexander-Universität Erlangen-Nürnberg

GPGPU-Architekturen CUDA Programmiermodell Beispielprogramm. Einführung CUDA. Ralf Seidler. Friedrich-Alexander-Universität Erlangen-Nürnberg Einführung CUDA Friedrich-Alexander-Universität Erlangen-Nürnberg PrakParRA, 18.11.2010 Outline 1 GPGPU-Architekturen 2 CUDA Programmiermodell 3 Beispielprogramm Outlook 1 GPGPU-Architekturen 2 CUDA Programmiermodell

Mehr

Multicore-Architekturen

Multicore-Architekturen Universität Erlangen- Nürnberg Technische Universität München Universität Stuttgart Multicore-Architekturen Vortrag im Rahmen der Ferienakademie 2009 Kurs 1: Programmierkonzepte für Multi-Core Rechner

Mehr

Computergrundlagen Moderne Rechnerarchitekturen

Computergrundlagen Moderne Rechnerarchitekturen Computergrundlagen Moderne Rechnerarchitekturen Axel Arnold Institut für Computerphysik Universität Stuttgart Wintersemester 2010/11 Aufbau eines modernen Computers DDR3- Speicher Prozessor Prozessor PEG

Mehr

CUDA. Moritz Wild, Jan-Hugo Lupp. Seminar Multi-Core Architectures and Programming. Friedrich-Alexander-Universität Erlangen-Nürnberg

CUDA. Moritz Wild, Jan-Hugo Lupp. Seminar Multi-Core Architectures and Programming. Friedrich-Alexander-Universität Erlangen-Nürnberg CUDA Seminar Multi-Core Architectures and Programming 1 Übersicht Einleitung Architektur Programmierung 2 Einleitung Computations on GPU 2003 Probleme Hohe Kenntnisse der Grafikprogrammierung nötig Unterschiedliche

Mehr

Pipelining. Die Pipelining Idee. Grundlagen der Rechnerarchitektur Prozessor 45

Pipelining. Die Pipelining Idee. Grundlagen der Rechnerarchitektur Prozessor 45 Pipelining Die Pipelining Idee Grundlagen der Rechnerarchitektur Prozessor 45 Single Cycle Performance Annahme die einzelnen Abschnitte des MIPS Instruktionszyklus benötigen folgende Ausführungszeiten:

Mehr

Prozessorarchitektur. Sprungvorhersage. M. Schölzel

Prozessorarchitektur. Sprungvorhersage. M. Schölzel Prozessorarchitektur Sprungvorhersage M. Schölzel Inhalt Sprungvorhersage statische Methoden dynamische Methoden Problem Fetch-Phase Befehlswarteschlange Speicher b? Neue Adresse für noch nicht bekannt

Mehr

Allgemeine Lösung mittels Hazard Detection Unit

Allgemeine Lösung mittels Hazard Detection Unit Allgemeine Lösung mittels Hazard Detection Unit Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Prozessor 83

Mehr

Struktur der CPU (1) Die Adress- und Datenpfad der CPU: Befehl holen. Vorlesung Rechnerarchitektur und Rechnertechnik SS Memory Adress Register

Struktur der CPU (1) Die Adress- und Datenpfad der CPU: Befehl holen. Vorlesung Rechnerarchitektur und Rechnertechnik SS Memory Adress Register Struktur der CPU (1) Die Adress- und Datenpfad der CPU: Prog. Counter Memory Adress Register Befehl holen Incrementer Main store Instruction register Op-code Address Memory Buffer Register CU Clock Control

Mehr

Was ist die Performance Ratio?

Was ist die Performance Ratio? Was ist die Performance Ratio? Wie eben gezeigt wäre für k Pipeline Stufen und eine große Zahl an ausgeführten Instruktionen die Performance Ratio gleich k, wenn jede Pipeline Stufe dieselbe Zeit beanspruchen

Mehr

Computergrundlagen Moderne Rechnerarchitekturen

Computergrundlagen Moderne Rechnerarchitekturen Aufbau eines modernen Computers Computergrundlagen Moderne Rechnerarchitekturen Axel Arnold Institut für Computerphysik Universität Stuttgart DDR3- Speicher Prozessor Prozessor PEG Graphikkarte(n) weitere

Mehr

Grundlagen der Informationsverarbeitung:

Grundlagen der Informationsverarbeitung: Grundlagen der Informationsverarbeitung: Parallelität auf Instruktionsebene Prof. Dr.-Ing. habil. Ulrike Lucke Durchgeführt von Prof. Dr. rer. nat. habil. Mario Schölzel Maximaler Raum für Titelbild (wenn

Mehr

CPU. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011

CPU. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 CPU Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 CPU 1/62 2012-02-29 CPU Übersicht: Pipeline-Aufbau Pipeline- Hazards CPU

Mehr

Technische Grundlagen der Informatik 2 SS Einleitung. R. Hoffmann FG Rechnerarchitektur Technische Universität Darmstadt E-1

Technische Grundlagen der Informatik 2 SS Einleitung. R. Hoffmann FG Rechnerarchitektur Technische Universität Darmstadt E-1 E-1 Technische Grundlagen der Informatik 2 SS 2009 Einleitung R. Hoffmann FG Rechnerarchitektur Technische Universität Darmstadt Lernziel E-2 Verstehen lernen, wie ein Rechner auf der Mikroarchitektur-Ebene

Mehr

High Performance Embedded Processors

High Performance Embedded Processors High Performance Embedded Processors Matthias Schwarz Hardware-Software-Co-Design Universität Erlangen-Nürnberg martin.rustler@e-technik.stud.uni-erlangen.de matthias.schwarz@e-technik.stud.uni-erlangen.de

Mehr

Name: Vorname: Matr.-Nr.: 4. a) RISC-Architekturen müssen zur Decodierung von Maschinenbefehlen stets ein mikroprogrammierbares Steuerwerk verwenden.

Name: Vorname: Matr.-Nr.: 4. a) RISC-Architekturen müssen zur Decodierung von Maschinenbefehlen stets ein mikroprogrammierbares Steuerwerk verwenden. Name: Vorname: Matr.-Nr.: 4 Aufgabe 1 (8 Punkte) Entscheiden Sie, welche der folgenden Aussagen zum Thema CISC/RISC-Prinzipien korrekt sind. a) RISC-Architekturen müssen zur Decodierung von Maschinenbefehlen

Mehr

Rechnerarchitektur (RA)

Rechnerarchitektur (RA) 2 Rechnerarchitektur (RA) Sommersemester 27 Pipelines Jian-Jia Chen Informatik 2 http://ls2-www.cs.tu.de/daes/ 27/5/3 Diese Folien enthalten Graphiken mit Nutzungseinschränkungen. Das Kopieren der Graphiken

Mehr

Rechnerarchitektur (RA)

Rechnerarchitektur (RA) 2 Rechnerarchitektur (RA) Sommersemester 26 Pipelines Jian-Jia Chen Informatik 2 http://ls2-www.cs.tu.de/daes/ 26/5/25 Diese Folien enthalten Graphiken mit Nutzungseinschränkungen. Das Kopieren der Graphiken

Mehr

MULTICORE- UND GPGPU- ARCHITEKTUREN

MULTICORE- UND GPGPU- ARCHITEKTUREN MULTICORE- UND GPGPU- ARCHITEKTUREN Korbinian Pauli - 17. November 2011 Seminar Multicore Programmierung, WS11, Universität Passau 2 Einleitung Klassisches Problem der Informatik: riesige Datenmenge! Volkszählung

Mehr

Teil 1: Prozessorstrukturen

Teil 1: Prozessorstrukturen Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium

Mehr

OpenCL. OpenCL. Boris Totev, Cornelius Knap

OpenCL. OpenCL. Boris Totev, Cornelius Knap OpenCL OpenCL 1 OpenCL Gliederung Entstehungsgeschichte von OpenCL Was, warum und überhaupt wieso OpenCL CUDA, OpenGL und OpenCL GPUs OpenCL Objekte Work-Units OpenCL Adressbereiche OpenCL API Codebeispiel

Mehr

Lehrveranstaltung: PR Rechnerorganisation Blatt 8. Thomas Aichholzer

Lehrveranstaltung: PR Rechnerorganisation Blatt 8. Thomas Aichholzer Aufgabe 8.1 Ausnahmen (Exceptions) a. Erklären Sie den Begriff Exception. b. Welche Arten von Exceptions kennen Sie? Wie werden sie ausgelöst und welche Auswirkungen auf den ablaufenden Code ergeben sich

Mehr

Mehrprozessorarchitekturen

Mehrprozessorarchitekturen Mehrprozessorarchitekturen (SMP, UMA/NUMA, Cluster) Arian Bär 12.07.2004 12.07.2004 Arian Bär 1 Gliederung 1. Einleitung 2. Symmetrische Multiprozessoren (SMP) Allgemeines Architektur 3. Speicherarchitekturen

Mehr

27. Parallel Programming I

27. Parallel Programming I 771 27. Parallel Programming I Moore s Law und The Free Lunch, Hardware Architekturen, Parallele Ausführung, Klassifikation nach Flynn, Multi-Threading, Parallelität und Nebenläufigkeit, Skalierbarkeit:

Mehr

ARM: Befehlssatz (Forts.)

ARM: Befehlssatz (Forts.) ARM: Befehlssatz (Forts.) Befehl SWI zum Auslösen eines Software-Interrupts: Instruktionsformat: Ausführung von SWI überführt CPU in den supervisor mode (nach Retten des PC in r14_svc und des CPSR in SPSR_svc)

Mehr

ARM: Befehlssatz (Forts.)

ARM: Befehlssatz (Forts.) ARM: Befehlssatz (Forts.) Befehl SWI zum Auslösen eines Software-Interrupts: Instruktionsformat: Ausführung von SWI überführt CPU in den supervisor mode (nach Retten des PC in r14_svc und des CPSR in SPSR_svc)

Mehr

Vertiefungsrichtung Rechnerarchitektur

Vertiefungsrichtung Rechnerarchitektur srichtung () ( für ) Prof. Dietmar Fey Ziele der srichtung RA Vertiefen des Verständnis vom Aufbau, Funktionsweise von Rechnern und Prozessoren Modellierung und Entwurf von Rechnern und Prozessoren ()

Mehr

Vorlesung "Struktur von Mikrorechnern" (SMR)

Vorlesung Struktur von Mikrorechnern (SMR) Prozessorhistorie: Pentium Der erste Pentium-Prozessor wurde 99 von Intel vorgestellt. Er besitzt: - 64 Bit breites Bus-Interface - zweigeteilter Primär-Cache mit je 8 KB für Code und Daten - Bezeichnung

Mehr

Rechnerorganisation. (10,11) Informationskodierung (12,13,14) TECHNISCHE UNIVERSITÄT ILMENAU. IHS, H.- D. Wuttke `09

Rechnerorganisation. (10,11) Informationskodierung (12,13,14) TECHNISCHE UNIVERSITÄT ILMENAU. IHS, H.- D. Wuttke `09 Rechnerorganisation Mathematische Grundlagen (1) Boolesche Algebren: : BMA, BAA (2,3) Kombinatorische Schaltungen (4,5) Automaten (6,7) Sequentielle Schaltungen (8) Programmierbare Strukturen (9) Rechneraufbau

Mehr

Gliederung. Was ist CUDA? CPU GPU/GPGPU CUDA Anwendungsbereiche Wirtschaftlichkeit Beispielvideo

Gliederung. Was ist CUDA? CPU GPU/GPGPU CUDA Anwendungsbereiche Wirtschaftlichkeit Beispielvideo Gliederung Was ist CUDA? CPU GPU/GPGPU CUDA Anwendungsbereiche Wirtschaftlichkeit Beispielvideo Was ist CUDA? Nvidia CUDA ist eine von NvidiaGPGPU-Technologie, die es Programmierern erlaubt, Programmteile

Mehr

27. Parallel Programming I

27. Parallel Programming I The Free Lunch 27. Parallel Programming I Moore s Law und The Free Lunch, Hardware Architekturen, Parallele Ausführung, Klassifikation nach Flynn, Multi-Threading, Parallelität und Nebenläufigkeit, Skalierbarkeit:

Mehr

27. Parallel Programming I

27. Parallel Programming I 760 27. Parallel Programming I Moore s Law und The Free Lunch, Hardware Architekturen, Parallele Ausführung, Klassifikation nach Flynn, Multi-Threading, Parallelität und Nebenläufigkeit, Skalierbarkeit:

Mehr

Proseminar Rechnerarchitekturen. Parallelcomputer: Multiprozessorsysteme

Proseminar Rechnerarchitekturen. Parallelcomputer: Multiprozessorsysteme wwwnet-texde Proseminar Rechnerarchitekturen Parallelcomputer: Multiprozessorsysteme Stefan Schumacher, , PGP Key http://wwwnet-texde/uni Id: mps-folientex,v

Mehr

RO II Übungen ohne Lösungen V20

RO II Übungen ohne Lösungen V20 H. Richter 05.04.2017 RO II Übungen ohne Lösungen V20 Übung 1: Gesamtpunktzahl [76] (76P) 1 Aufgabe: Superskalarität [22] 1.) Worin besteht der Unterschied zwischen einem skalaren Prozessor und einem superskalaren

Mehr

Mikroprozessor als universeller digitaler Baustein

Mikroprozessor als universeller digitaler Baustein 2. Mikroprozessor 2.1 Allgemeines Mikroprozessor als universeller digitaler Baustein Die zunehmende Integrationsdichte von elektronischen Schaltkreisen führt zwangsläufige zur Entwicklung eines universellen

Mehr

27. Parallel Programming I

27. Parallel Programming I The Free Lunch 27. Parallel Programming I Moore s Law und The Free Lunch, Hardware Architekturen, Parallele Ausführung, Klassifikation nach Flynn, Multi-Threading, Parallelität und Nebenläufigkeit, Skalierbarkeit:

Mehr

27. Parallel Programming I

27. Parallel Programming I 771 27. Parallel Programming I Moore s Law und The Free Lunch, Hardware Architekturen, Parallele Ausführung, Klassifikation nach Flynn, Multi-Threading, Parallelität und Nebenläufigkeit, Skalierbarkeit:

Mehr

Teil VIII Von Neumann Rechner 1

Teil VIII Von Neumann Rechner 1 Teil VIII Von Neumann Rechner 1 Grundlegende Architektur Zentraleinheit: Central Processing Unit (CPU) Ausführen von Befehlen und Ablaufsteuerung Speicher: Memory Ablage von Daten und Programmen Read Only

Mehr

nutzt heute Diese Prinzipien werden wir im Kapitel 3 behandelt Lehrstuhl für Informatik 3 - D. Fey Vorlesung GRa - SS

nutzt heute Diese Prinzipien werden wir im Kapitel 3 behandelt Lehrstuhl für Informatik 3 - D. Fey Vorlesung GRa - SS 3.1 Einführung (1) Nahezu jeder Prozessor in einem Desktop-Rechner (der auf oder unter dem Tisch steht) und in einem Server- Rechner (auf dem man sich von der Ferne einloggt und dort rechnet) nutzt heute

Mehr

Teil 1: Prozessorstrukturen

Teil 1: Prozessorstrukturen Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium

Mehr

Echtzeit Videoverarbeitung

Echtzeit Videoverarbeitung Hardwareplattformen für Echtzeit Videoverarbeitung Herbert Thoma Seite 1 Gliederung Echtzeitanforderungen Prozessorarchitekturen Grundlagen Pipelining Parallele Befehlsausführung Systemkomponenten Speicher

Mehr

Speicherarchitektur (23) Suchen einer Seite:

Speicherarchitektur (23) Suchen einer Seite: Speicherarchitektur (23) Suchen einer Seite: Vorlesung Rechnersysteme SS `09 E. Nett 7 Speicherarchitektur (24) Adressschema inklusive Seitenfehler: Vorlesung Rechnersysteme SS `09 E. Nett 8 Speicherarchitektur

Mehr

Chip Level Multithreading

Chip Level Multithreading Chip Level Multithreading AG Neurobiologie Universität Bielefeld 10. Januar 2006 Moores Gesetz The complexity for minimum component costs has increased at a rate of roughly a factor of two per year...

Mehr

Technische Informatik - Eine Einführung

Technische Informatik - Eine Einführung Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik Lehrstuhl für Technische Informatik Prof. P. Molitor Technische Informatik - Eine Einführung Rechnerarchitektur Aufgabe

Mehr

Compute Unified Device Architecture CUDA

Compute Unified Device Architecture CUDA Compute Unified Device Architecture 06. Februar 2012 1 / 13 Gliederung 2 / 13 : Compute Unified Device Architecture entwickelt von Nvidia Corporation spezifiziert Software- und Hardwareeigenschaften Ziel:

Mehr

Rechnergrundlagen SS 2007. 11. Vorlesung

Rechnergrundlagen SS 2007. 11. Vorlesung Rechnergrundlagen SS 2007 11. Vorlesung Inhalt Evaluation der Lehre (Auswertung) Synchroner/asynchroner Systembus Kontrollfluss/Datenfluss RISC vs. CISC Speicherhierarchie Cache Lesen Schreiben Überschreiben

Mehr

Einführung in die Programmiersprache C

Einführung in die Programmiersprache C Einführung in die Programmiersprache C 6 Cache-freundliche Programmierung (1) Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät Quadratische Matrizen Musterlösung

Mehr

2. Der ParaNut-Prozessor "Parallel and more than just another CPU core"

2. Der ParaNut-Prozessor Parallel and more than just another CPU core 2. Der ParaNut-Prozessor "Parallel and more than just another CPU core" Neuer, konfigurierbarer Prozessor Parallelität auf Daten- (SIMD) und Thread-Ebene Hohe Skalierbarkeit mit einer Architektur neues

Mehr

GPGPU Basiskonzepte. von Marc Kirchhoff GPGPU Basiskonzepte 1

GPGPU Basiskonzepte. von Marc Kirchhoff GPGPU Basiskonzepte 1 GPGPU Basiskonzepte von Marc Kirchhoff 29.05.2006 GPGPU Basiskonzepte 1 Inhalt Warum GPGPU Streams, Kernels und Prozessoren Datenstrukturen Algorithmen 29.05.2006 GPGPU Basiskonzepte 2 Warum GPGPU? Performance

Mehr

Systeme 1: Architektur

Systeme 1: Architektur slide 1 Vorlesung Systeme 1: Architektur Prof. Dr. Ulrich Ultes-Nitsche Forschungsgruppe Departement für Informatik Universität Freiburg slide 2 Prüfung 18. Februar 2004 8h00-11h40 13h00-18h20 20 Minuten

Mehr