3. Architekturen moderner Prozessoren 3.1 Einführung (1)
|
|
- Franziska Maya Maurer
- vor 6 Jahren
- Abrufe
Transkript
1 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 Caches (s. Kap ) Pipelining Superskalare Befehlsabarbeitung Out-of-order execution (Abarbeitung der Befehle entgegen der vom Compiler erzeugten Reihenfolge) Diese Prinzipien werden wir im Kapitel 3 behandelt , Folie 1
2 3.1 Einführung (2) Ferner: Evolution der Prozessor-Architektur Stationen dieser Evolution von CISC bis Multi-Core Complex Instruction Set Computing (CISC) Reduced Instruction Set Computing (RISC) Superskalare Architekturen Very long instruction Word (VLIW) Explicitly Parallel Instruction Computing (EPIC) Multithreading (Simultanes Multithreading (SMT) Hyperthreading (HT)) Multikern-Architekturen , Folie 2
3 3.2 CISC-Architekturen (1) Am Anfang war CISC (Complex Instruction Set Computer): Technik der Mikroprogrammierung ist CISC So benannt in den 1980er Jahren nachdem RISC aufkam Vorteile CISC: Erforderliche Speicherkapazität geringer es erfolgt Expansion eines CISC-Befehls im Prozessor Abbildung Makrobefehl -> Folge von Mikrobefehlen (Mikroprogramm) (s. Bsp. Folie 7, Kap 2) A B A Könnte z.b so kodiert sein SUB A B Kostet weniger Speicher als , Folie 3
4 3.2 CISC-Architekturen (2) Weiterer Vorteil: in den 60er Jahren vorhandene sog. semantische Lücke überbrückbar Durch Mikroprogramm einen Hochsprachen-Befehl implementieren Gilt für Chip-Hersteller und deren Compiler-Bauer Details zu semantischer Lücke, s. Vorlesung SP Beispiel: Switch-Befehl als Mikroprogramm Befehl in Hochsprache switch ( i ) { case 0 : a = 1 ; break ; case 1 : a = 2 ; break ; } ; Lücke durch Mikroprogramm überbrücken (fiktive Syntax) 0: i -> ACCU 1: JMP if ACCU=0 TO 6 2: DECR ACCU 4: JMP if ACCU=0 TO 8 5: RETURN 6: SET a=1 7: RETURN 8: SET a=2 9: RETURN , Folie 4 nackte Menge der 10-Befehlsmuster der Maschine Entsprechende Mikrobefehle
5 3.2 CISC-Architekturen (3) Lange Zeit der Zufriedenheit mit diesem Ansatz Konzept der Mikroprogrammierung zuerst in Großrechner eingeführt dort auf in der Kapazität limitierte Ferritkernspeicher ausgerichtet CISC Mikroprozessor-Architekturen waren dem Stand der Großrechnertechnik bis Anfang der 80er Jahre angepasst Gründe: wohl einfacher adaptierbar technologische Gründe für diese Orientierung gab es nicht, denn Mikroprozessoren waren von Anfang an mit Halbleiter-Arbeitsspeichern ausgestattet , Folie 5
6 3.2 CISC-Architekturen (4) Mit der Zeit: immer neue Prozessoren Erweiterung der Befehlssätze Zwang zur Abwärtskompatibilität Folge der Entwicklung immer größere und undurchschaubarere Befehlssätze Komplizierte Adressierungsarten (z.b. VAX11/780 verwendete 22 verschiedene Adressierungsarten) Befehle mit sehr unterschiedlichen Längen Compiler-Bauer verwendeten nur noch kleine Teilmenge des Befehlssatzes , Folie 6
7 3.2 CISC-Architekturen (5) Beispiel: Eigenschaften Befehlssätze CISC-Prozessoren , Folie 7
8 3.2 RISC-Architekturen (1) Die Zeit war reif für Neues: RISC-Prozessoren (Reduced Instruction Set Computer) Prozessoren der vierten Generation RISC-Architekturen gekennzeichnet durch Elementare und kleine, einheitliche Maschinenbefehlssätze einheitliche (dadurch aber auch redundante) Befehlsformate, die schnell dekodierbar sind Operanden- und Befehlsholphase während eines Grundtaktes ausführbar Adressrechnungen werden durch explizite Befehle ausgeführt Vorteil: keine komplizierten Adressierungsarten in Befehlen und damit verbundene Adressierungsberechnungen Load-Store-Architektur Alle Operanden liegen in Registern vor Keine Befehle, in denen ein Operand direkt auf Speicheradresse verweist Wenn nicht, dann Operanden laden bzw. speichern durch explizite Lade- /Speicher befehle , Folie 8
9 3.2 RISC-Architekturen (2) große universelle Registersätze festverdrahtete Leitwerke kein Mikroprogramm; kein Mikroprogrammspeicher Schafft Platz auf dem Chip für Caches und Register Jeder RISC-Befehl wird direkt in binäres Befehlsmuster dekodiert konsequentes Ausnutzen von Fließbandverarbeitung (Pipelining) nach Möglichkeit alle Befehle bis auf Laden/Speichern innerhalb eines Taktes abzuwickeln (im Durchsatz) war später jedoch nicht mehr konsequent durchzuhalten (z.b. numerische Gleitkomma-Operationen) ab Pentium Pro wird in Intel-Prozessoren komplexer Maschinenbefehl intern in eine Folge einfacher nach dem RISC-Prinzip abzuarbeitender Befehle zerlegt Erforderlich: Zusammenspiel von optimierenden Compiler und RISC- Prozessor-Architektur, um Fließbandverarbeitung auch effizient auszunutzen , Folie 9
10 3.2.1 RISC-Architekturen Pipelining (1) Fließbandprinzip (Pipelining) Übertragung des z.b. in der Automobilindustrie angewandten Prinzips der überlappten Bearbeitung von Arbeitsteilschritten auf den Befehlszyklus eines Prozessors Phasen des Befehlszyklus streng synchron arbeitenden unabhängigen Teilwerken zuweisen jeder einzelne Befehl durchläuft sequentiell alle Teilwerke Gegenteil: Nicht zeitlich überlapptes Abarbeiten der Befehle (s. Bild) , Folie 10
11 3.2.1 RISC-Architekturen Pipelining (2) Elementare Phasen des Befehlszyklus BH: Befehl holen inkl. Befehlszähler inkrementieren BD: Befehl dekodieren OH: Operanden holen BA: Befehl ausführen ES: Ergebnisse zurückschreiben (in Register bzw. in Speicher bei Store- Operationen) inkl. Befehlszähler im Falle eines Sprungs überschreiben 5 Phasen 5 Teilwerke 1. Befehl BH BD OH BA ES 2. Befehl BH DE OH BA ES 3. Befehl Beispielhaft; kein ehernes Gesetz! kann in der Realität viel fein-granularer sein, z.b. Intel P4-Architekturen über 30 Stufen [in Hennessy/Patterson BD/OH zusammengefasst, extra Phase für Zugriff auf Arbeitsspeicher] Zeit , Folie 11
12 3.2.1 RISC-Architekturen Pipelining (3) überlapptes Arbeiten 1. Befehl BH BD OH BA ES 2. Befehl BH DE OH BA ES 3. Befehl Zeit BH BD OH BA ES 1. Befehl BH BD OP BA ES 2. Befehl BH BD OH BA ES 3. Befehl BH BD OH BA ES 4. Befehl Dauer eines Befehls mindestens genauso lang wie zuvor (Latenzzeit) evtl. länger, denn Fließband muss sich nach der langsamsten Komponente richten Durchschnitt (Durchsatz) steigt an im Idealfall auf das n-fache bei n Teilschritten , Folie 12
13 3.2.1 RISC-Architekturen Pipelining (4) Viele Eierköpfe gleichzeitig unterwegs , Folie 13
14 3.2.1 RISC-Architekturen Pipelining (5) Leistungssteigerung bei vier Befehlen? anstatt 20 Zeiteinheiten nur (bitte selbst überlegen wie viele) Zeiteinheiten Welche Leistungssteigerung ist (theoretisch) möglich? Allgemein gilt: jede Pipeline-Stufe verursacht gewissen Zusatz-Aufwand für Datenbewegung Zwischenspeicherung im Datenfluss zwischen einzelnen Stufen kritisch bei vielen Unterbrechungen im synchronen sequentiellen Ablauf Steuerlogik zur Behandlung von Register- und Speicher- Abhängigkeiten steigt mit Zahl der Stufen höherer Gatteraufwand für Steuerung der Stufen als für die Stufen selbst , Folie 14
15 3.2.1 RISC-Architekturen Pipelining (5) Pipeline dominiert von langsamster Stufe Zykluszeit τ einer Pipeline (bestimmt zugleich Takt = 1 /τ ) τ = max ( τ ) i + d = τ m + d 1 i i τ m = maximale Stufen-Verzögerung k = Anzahl Stufen d = Zeitverzögerung bedingt durch Zwischenspeicherung k Gesamtzeit T k zur Bearbeitung von n Instruktionen k [ ( 1) ] T = k + n τ , Folie 15
16 3.2.1 RISC-Architekturen Pipelining (6) erreichbarer Speed-Up S k Verhältnis von Ausführungszeit T 1 ohne Pipeline zur Ausführungszeit T k in einer Pipeline mit k Stufen nkτ nk Sk = T1 / Tk = = k + ( n 1) τ k + ( n 1) [ ] lim n S k nk = = k + ( n 1) k , Folie 16
17 3.2.1 RISC-Architekturen Pipelining (7) Kurvenverlauf des Speed-Up S k in Abhängigkeit der Anzahl Instruktionen n für verschieden große Anzahl an Stufen k Speed-Up 12 Stufen 9 Stufen 6 Stufen #Instruktionen (10^x) , Folie 17
18 3.2.1 RISC-Architekturen Pipelining (8) Je mehr Stufen um so später läuft Kurve in Sättigung Wunderbar: dann möglichst viele Pipelinestufen k realisieren? Damit ist auch Chiptakt reduzierbar Je mehr Stufen desto kürzere Laufwege von einer Stufe zur nächsten Kürzere Laufwege -> schnellerer Takt (Erklärung s. Skizze Tafel) Preis für potentiellen Gewinn zusätzlicher Pipeline-Stufen zu zahlen (s. nächste Folie) , Folie 18
19 3.2.1 RISC-Architekturen Pipelining (9) Anstieg HW-Kosten Zwischen Pipelinestufen müssen Daten gefangen werden wg. Entkopplung der einzelnen Stufen, d.h. zwischen einzelnen Stufen liegen Register Je mehr Stufen je mehr Register Pipeline-Einschwingphase erhöht sich je mehr Stufen gegeben Damit Anstieg der Latenzzeit pro Befehl Nicht so schlimm könnte durch höheren Durchsatz kompensiert werden Energieverbrauch nimmt zu Kein Beitrag zu GreenIT Wahrscheinlichkeit leerer Pipeline-Zyklen steigt bei Datenabhängigkeiten bei Verzweigungen , Folie 19
20 3.2.1 RISC-Architekturen Pipelining (10) Problem: Datenabhängigkeiten (sog. Datenhazards) Ein Befehl benötigt Ergebnis des unmittelbar vorherigen Befehls Beispiel: Befehle MUL R1, R2 R3 ADD R3, R1 R5 sind nacheinander in Pipeline MUL R1,R2 R BH BD BH OH BD 4 BA OH 5 ES BA 6 7 RS 8 R1 R2 noch nicht in R3 zurückgeschrieben! Erfolgt erst zum Zeitpunkt 5 (RS-Phase MUL-Befehl) ADD R3, R1 R5 Details Modul Rechnerarchitektur (WPF - Rechnerarchitektur) , Folie 20
21 3.2.1 RISC-Architekturen Pipelining (11) Probleme: Verzweigungen Sprünge (sog. Steuerungshazards) Nächster Befehl in Pipeline ist nicht der Richtige t 40: if (R1 == R2) jmp 72 BH BD OH BA ES 44: (R1 and R12) R5 48: (R1 or R12) R5 52: (R14 add R2) R : (R12 add R2) R2 Lösung: statische und dynamische Sprungvorhersagen (sog. Spekulative Befehlsausführung) Details: Modul Rechnerarchitektur Bachelor 5.Sem BH BD BH OH BD BH , Folie 21 BA OH BD ES BA OH ES BA ES Erst nach Zeitschritt 4 steht fest, wie Vergleich (R1==R2) ausgeht. Der nächste Befehl in der Pipeline ist 44, evtl. falscher Befehl.
22 3.2.1 RISC-Architekturen Pipelining (12) Nochmaliges Beispiel Sprungbefehl (detailliertere strukturelle Sicht der Vorgänge in den Stufen) Zeitpunkt 0: 1.Stufe 2.Stufe 3.Stufe 4.Stufe BH BD OH BA 40: if (R1 == R2) jmp 72 44: (R1 and R12) R5 48: (R1 or R12) R5 52: (R14 add R2) R2 Registerinhalte.. 72: (R12 add R2) R2 R1: 0 R8: 9 R2: 0 R9: 10 R3: 2 R10: 23 R4: 1 R11: 34 R5: 23 R12: 15 R6: 4 R7: , Folie 22
23 3.2.1 RISC-Architekturen Pipelining (13) Zeitpunkt 1: 1.Stufe 2.Stufe 3.Stufe 4.Stufe BH BD OH BA 44: (R1 and R12) R5 48: (R1 or R12) R5 40: if (R1 == R2) jmp 72 52: (R14 add R2) R2.. 72: (R12 add R2) R2 Registerinhalte R1: 0 R8: 9 R2: 0 R9: 10 R3: 2 R10: 23 R4: 1 R11: 34 R5: 23 R12: 15 R6: 4 R7: , Folie 23
24 3.2.1 RISC-Architekturen Pipelining (14) Zeitpunkt 2: == -Vergleich ist auszuführen 1.Stufe 2.Stufe 3.Stufe 4.Stufe BH BD OH BA 48: (R1 or R12) R5 52: (R14 add R2) R2.. 72: (R12 add R2) R2 44: (R1 and R12) R5 40: if (R1 == R2) jmp 72 Registerinhalte R1: 0 R8: 9 R2: 0 R9: 10 R3: 2 R10: 23 R4: 1 R11: 34 R5: 23 R12: 15 R6: 4 R7: , Folie 24
25 3.2.1 RISC-Architekturen Pipelining (15) Zeitpunkt 3: Operanden werden aus R1 und R2 geholt 1.Stufe 2.Stufe 3.Stufe 4.Stufe BH BD OH BA 52: (R14 add R2) R2.. 72: (R12 add R2) R2 48: (R1 or R12) R5 44: (R1 and R12) R5 40: if (0 == 0) 72 Registerinhalte R1: 0 R8: 9 R2: 0 R9: 10 R3: 2 R10: 23 R4: 1 R11: 34 R5: 23 R12: 15 R6: 4 R7: , Folie 25
26 3.2.1 RISC-Architekturen Pipelining (16) Zeitpunkt 4: Ergebnis Vergleich wird berechnet 1.Stufe 3.Stufe 2.Stufe 4.Stufe BH BD OH BA.. 72: (R12 add R2) R2 52: (R14 add R2) R2 48: (0 or 15) R5 44: (0 and 15) R5 Ergebnis des Vergleichs 0==0 ist true Nächster Befehl in der Pipeline sollte somit 72 sein Registerinhalte R1: 0 R8: 9 R2: 0 R9: 10 R3: 2 R10: 23 R4: 1 R11: 34 R5: 23 R12: 15 R6: 4 R7: 8 Der nächste Befehl in Stufe 3 ist aber Befehl , Folie 26
27 3.2.2 RISC-Architekturen Superskalare Architekturen (1) Weitere Entwicklung: Superskalare Recheneinheiten Gruppierung von mehreren Befehlen, die nach dem Fließbandprinzip abgearbeitet werden BH BD OH BA ES BH BD OH BA ES BH BD OH BA ES BH BD OH BA ES BH BD OH BA ES BH BD OH BA ES BH BD OH BA ES BH BD OH BA ES BH BD OH BA ES 1. Befehl 2. Befehl 3. Befehl 4. Befehl 5. Befehl 6. Befehl 7. Befehl 8. Befehl 9. Befehl Zeit , Folie 27
28 3.2.2 RISC-Architekturen Superskalare Architekturen (2) erfordert mehrere Rechenwerke heute Stand der Technik , Folie 28
29 3.2.2 RISC-Architekturen Superskalare Architekturen (3) Technik eigentlich alt: übernommen von Supercomputern (CDC6600) gleichzeitige Anwendung von Operationen auf einzelne Komponenten eines Vektors (Vektorrechner) nicht alle Operationen sind Vektoroperationen skalare Werte müssen auch berechnet werden dennoch Prozessor mit mehreren Rechenwerken besser als skalarer, eben superskalar Anwendung auf Befehle benötigt Befehlsgruppierer Umordnung sequentiell einlaufender Befehle zur Laufzeit, um sie parallel auszuführen (dynamische Parallelisierung) allgemeines Prinzip superskalarer Rechner!! keine direkte Parallelität (vom Compiler erzeugt) Herausziehen von Parallelität aus sequentiellem Befehlsstrom in der Hardware , Folie 29
30 3.3 VLIW, Multi-Threading, EPIC (1) Im weiteren zeitlichen Verlauf neue Ansätze entwickelt VLIW, Multi-Threading, EPIC Generell die Frage, wer parallelisiert? die Software: d.h. Compiler (statisch) Vorteil: macht Hardware einfacher Vorteil: Software erfasst ganzes Programm Im Gegensatz zur Hardware, die nur Ausschnitt erfasst oder die Hardware: d.h. das Leitwerk im Prozessor (dynamisch) Vorteil: Hardware kann besser auf Situationen bedingt durch Verzweigungen reagieren Erfasst somit besser den dynamischen Ablauf , Folie 30
31 3.3.1 VLIW (1) VLIW (very long instruction word) Parallelität (paralleles Befehlswort) vom Compiler erzeugen Prozessor hat viele ALUs - jeder ALU genau einen Teil des langen Befehlswortes zuordnen Erfordert Analyse Datenabhängigkeitsgraph (DAG) Beispiel: 1: ADD R2, R3 R1 2: MUL R4, R5 R6 3: SUB R6, R1 R7 4: ADD R8, R9 R10 5: DIV R10, R6 R11 6: ADD R7, R11 R12 7: STORE R12 X DAG : ADD R2, R3 R1 2: MUL R4, R5 R6 4: ADD R8, R9 R10 3: SUB R6, R1 R7 5: DIV R10, R6 R11 6: ADD R7, R11 R12 7: STORE R12 X , Folie 31
32 3.3.2 EPIC (1) VLIW: heute häufig in Digitalen Signalprozessoren (DSP) eingesetzt In anderen Architekturen: kaum Bedeutung mehr EPIC (Explicitly Parallel Instruction Computing) Kombiniert superskalar und VLIW Compiler gruppiert wo möglich und gibt Hinweise (sog. Prädikation) an Hardware für dynamische Befehlsgruppierung Realisiert in INTEL Itanium-Architekturen , Folie 32
33 3.3.2 EPIC (2) Beispiel Weit voran getriebene spekulative Befehlsausführung Beide Verzweigungsstränge werden gleichzeitig ausgeführt EPIC vereint superskalaren und VLIW Ansatz Geht davon aus, dass Instruktionen 4 und 5 bzw. Instruktionen 8 und 9 auch keine Abhängigkeiten aufweisen , Folie 33
34 3.3.3 Multi-Threading (1) Multithreading-Architekturen (vielfädige Architekturen) Rechenwerke werden nicht mit einzelnen Befehlen gefüttert, sondern mit Befehlen aus Threads (Programmfäden) Thread? Abgespeckter Prozess Mehrere Threads gehören zu einem Prozess Threads untereinander weitgehend unabhängig Zuteilung Threads zu Rechenwerken (Scheduling) geschieht in der Hardware Thread 1 Rechenwerk 1 Prozess Thread 2 Rechenwerk 2 Thread 3 Rechenwerk , Folie 34
35 3.3.3 Multi-Threading (2) Simultanes Multi-Threading Variante davon bei INTEL als Hyper-Threading bezeichnet logische Prozessoren auf einem physikalischen Prozessor Antrieb für diese Entwicklung: überproportionaler Anstieg an elektrischer Leistung und Chip-Fläche gegenüber Zuwachs an Rechenleistung , Folie 35
36 3.3.3 Multi-Threading (3) Parallelismus auf Thread-Ebene Zeit-Scheiben Multi-Threading (time-slice multi-threading) Jeder Thread bekommt festes zeitliches Raster zugeteilt Nach Ablauf Umschalten auf anderen Thread Ereignis-gesteuertes Multi-Threading (switch-on-event multithreading) Schalten bei Ereignissen, die lange Latenzen nach sich ziehen Simultanes Multi-Threading ohne Schalten, sondern Auswählen logische Prozessor durch Architekturzustand charakterisiert Eigenen Registersatz Eigenen Befehlszähler Maschinenzustands-Register Eigenes Steuerregister für Unterbrechungen (APIC, advanced programmable interrupt controller) , Folie 36
37 3.3.3 Multi-Threading (5) Beispiel: Hyper-Threading Mischen der Instruktionen von zwei Threads und gleichzeitige Zuweisung auf Ressourcen Zwei aufeinander folgende Befehle aus verschiedenen Threads weisen zumeist keine Datenabhängigkeiten auf Verarbeitungsprinzip (vereinfacht) , Folie 37
38 3.4 Multi-Core-Architekturen (1) Leistungssteigerung bis ca Primär durch Drehen an der Taktschraube Sekundär durch intelligentere Architektur Seit 2003/04 Verlagerung hin zur Architektur , Folie 38
39 3.4 Multi-Core-Architekturen (2) Erhöhung des Taktes stößt an Grenzen wegen Energiebedarf , Folie 39
40 3.4 Multi-Core-Architekturen (3) Antwort: Multicore-Architekturen Mehrere Prozessorkerne auf einem Chip Grund: Technologie: Drehen Taktschraube kostet zu viel Energie (je höher Takt um so schwieriger gleichzeitig V dd zu senken) P 1 = 2 2 diss V dd Architektur: superskalares Prinzip ausgereizt: z.b. dynamische Sprungvorhersage bei mehr als 95% Trefferquote Wayt Gibbs, Spektrum d. Wissenschaft, 03/2005 f f (Frequenz) und V dd (Versorgungsspannung) miteinander korreliert Es war nie die Frage ob, sondern wann und warum: Wann würden die Hersteller von Mikroprozessoren gezwungen sein, einen kleineren Gang einzulegen, warum würde die scheinbar so eiserne Regel alle zwei Jahren ein schnellerer Chip nicht mehr durchzuhalten sein? Mehr Leistung erzielbar nur noch durch echte Parallelität , Folie 40
41 3.4 Multi-Core-Architekturen (4) Technologische Vorteile durch Multi-Core geringere Frequenz einzelner Kerne gleichmäßigere Verteilung der Wärme einzelne Kerne bei (Nicht-)Bedarf abschaltbar Wirtschaftliche Vorteile durch Multi-Core mehr als ein Kern auf einem DIE (Chipkern) spart Produktionskosten zusätzlicher Prozessorkern lässt den Aufwand für die Kühlung nur linear steigen Rechnerarchitektonische Gründe für Multi-Core bisherige Architekturmaßnahmen nahezu ausgereizt Justin R. Rattner, Leiter der Entwicklungsabteilung Systemtechnologie bei Intel»Wir haben das Gesetz des Quadrats gegen uns. Man benötigt exponentiellen Zuwachs der Transistorenzahl, damit steigt aber Chipfläche und Stromverbrauch, um auch nur geringe weitere Verbesserungen bei der parallelen Befehlsverarbeitung zu erreichen « , Folie 41
42 3.4 Multi-Core-Architekturen (5) Vergleich Architekturschema von Multi-Kern-Prozessor vs. Superskalar, Simultanes Multithreading 1 Programmzähler und 1 Registersatz n komplette CPUs n Programmzähler und n Registersätze n logische CPUs mehrere Ausführungs- einheiten Ausführungseinheiten (ALUs) genutzt von allen n logischen CPUs , Folie 42
43 3.4 Multi-Core-Architekturen (6) Beispiel: Intel Core i7 - Architektur verwendet simultanes Multi-Threading (SMT) Skaliert bis zur Anzahl unterstützter Threads 4 SMT Kerne, jeder unterstützt 2 Threads somit 8 logische Kerne , Folie 43
44 3.4 Multi-Core-Architekturen (7) Homogene und heterogene Multikern-Prozessoren Homogene Multikern-Prozessoren Lauter gleiche Kerne Beispiele: Intel Nehalem (Core i7) QuadCore, AMD Istanbul SixCore Heterogene Multikern-Prozessoren Cell PowerPC-Prozessor plus Spezial-Prozessoren für Vektoroperationen , Folie 44
45 3.4 Multi-Core-Architekturen (8) GPGPU (General Purpose Graphics Processing Unit) Graphikkarten-Prozessoren Bsp. GPGPU: GeForce 8080 mehrere Hundert z.t. spezialisierte Kerne , Folie 45
46 Einschub Praktikum Parallele Rechnerarchitekturen Bachelor-Praktikum Parallele Rechnerarchitekturen des Lehrstuhl 3 ab 5.Semester Intensivere Beschäftigung mit Multikern-Architekturen Vergleichende Bewertung verschiedener Multi-Kern-Architekturen Effiziente, architekturnahe Programmierung Umsetzung gängiger Parallelisierungsstrategien anhand ausgewählter Aufgaben (Berechnung Pi bzw. Verzerrbilder) , Folie 46
47 Einschub Praktikum Parallele Rechnerarchitekturen Ablauf Nachrichten-gekoppelte Architekturen Cluster / Multi-Cluster unter OpenMPI 2 Wochen: (4 SWS Einführung + 12 SWS Umsetzung) Homogene Multikern Prozessor-Architektur unter OpenMP 1-2 Wochen: (2 SWS Einführung + 6 SWS Umsetzung) Heterogene Multikern-Prozessorarchitektur am Beispiel Cell und GPGPU (Tesla NVIDIA) 3-4 Wochen: (6 SWS Einführung + 18 SWS Umsetzung) Applikationsspezifische Multikern-Prozessoren in FPGAs 6-7 Wochen: (12 SWS Einführung + 36 SWS Umsetzung) Im Parallelrechner-Labor des Lehrstuhl , Folie 47
48 3.4 Multi-Core-Architekturen (9) Von Multikern- zu Vielkern-Prozessoren GPUs sind vielleicht erst der Anfang Motivation für Vielkern-Prozessoren: Regel von Pollack Rechenleistungszuwachs ~ Anstieg Komplexität Doppelt so großer Einzelkern-Prozessor gemäß Regel von Pollack Verdopplung der Logik, d.h. Komplexität, im Prozessor bringt 40% mehr Leistung , Folie 48
49 3.4 Multi-Core-Architekturen (10) Pollacks Regel rückwärts angewandt Statt einen großen Kern zwei kleinere, halb so große Kerne Leistung nimmt invers quadratisch ab sqrt(1/2) = 70% Somit mit halber Fläche 70% der Leistung des größeren Systems pro Kern Aber nur noch halber Leistungsverbrauch pro Kern In der Summe mehr Leistung als vorher 2 x 70% = 140% Bei gleichem Leistungsverbrauch für 2 Kerne wie beim großen System Schlussfolgerung: einfachere, aber dafür immer mehr Kerne Die Zukunft wird es weisen, ob dies eintritt , Folie 49
Games with Cellular Automata auf Parallelen Rechnerarchitekturen
Bachelor Games with Cellular Automata auf Parallelen en ( ) Dipl.-Inf. Marc Reichenbach Prof. Dietmar Fey Ziel des s Paralleles Rechnen Keine akademische Nische mehr Vielmehr Allgemeingut für den Beruf
MehrDie Mikroprogrammebene eines Rechners
Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl holen Befehl dekodieren Operanden holen etc.
MehrTECHNISCHE 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
MehrInstruktionssatz-Architektur
Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2005/2006 Übersicht 1 Einleitung 2 Bestandteile der ISA 3 CISC / RISC Übersicht 1 Einleitung 2 Bestandteile
MehrArbeitsfolien - 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
MehrDas Prinzip an einem alltäglichen Beispiel
3.2 Pipelining Ziel: Performanzsteigerung é Prinzip der Fließbandverarbeitung é Probleme bei Fließbandverarbeitung BB TI I 3.2/1 Das Prinzip an einem alltäglichen Beispiel é Sie kommen aus dem Urlaub und
MehrVorlesung 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
MehrKap 4. 4 Die Mikroprogrammebene eines Rechners
4 Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten (Befehl holen, Befehl dekodieren, Operanden holen etc.).
MehrInhalt. 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,
MehrTutorium Rechnerorganisation
Woche 7 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
Mehr11.0 Rechnerarchitekturen
11.0 Rechnerarchitekturen Die Ziele dieses Kapitels sind: Kennen lernen der Rechnerklassifikation nach Flynn Betrachtung von Prozessorarchitekturen auf verschiedenen Abstraktionsebenen - Befehlsarchitektur
MehrName: 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
MehrJohann 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
MehrTutorium Rechnerorganisation
Woche 3 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
MehrProzessorarchitektur. Kapitel 1 - Wiederholung. M. Schölzel
Prozessorarchitektur Kapitel - Wiederholung M. Schölzel Wiederholung Kombinatorische Logik: Ausgaben hängen funktional von den Eingaben ab. x x 2 x 3 z z = f (x,,x n ) z 2 z m = f m (x,,x n ) Sequentielle
MehrL3. Datenmanipulation
L Datenmanipulation Aufbau eines Computers Prozessor, Arbeitsspeicher und system Maschinensprachen und Maschinenbefehle Beispiel einer vereinfachten Maschinensprache Ausführung des Programms und Befehlszyklus
MehrPhilipp Grasl PROZESSOREN
1 PROZESSOREN INHALTSVERZEICHNIS Definition/Verwendung Prozessor Historische Entwicklung Prozessor Aufbau Prozessor Funktionsweise Prozessor Steuerung/Maschinenbefehle Prozessorkern Prozessortakt 2 DEFINITION
MehrDie 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.
MehrTechnische Informatik 1 - HS 2016
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik 1 - HS 2016 Lösungsvorschläge für Übung 8 Datum: 8. 9. 12. 2016 1 Instruktionsparallelität VLIW Gegeben
MehrNeue 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/
MehrHYPER - 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
Mehr2. Computer (Hardware) K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16
2. Computer (Hardware) K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 Version: 14. Okt. 2015 Computeraufbau: nur ein Überblick Genauer: Modul Digitale Systeme (2. Semester) Jetzt: Grundverständnis
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrEin kleiner Einblick in die Welt der Supercomputer. Christian Krohn 07.12.2010 1
Ein kleiner Einblick in die Welt der Supercomputer Christian Krohn 07.12.2010 1 Vorschub: FLOPS Entwicklung der Supercomputer Funktionsweisen von Supercomputern Zukunftsvisionen 2 Ein Top10 Supercomputer
MehrRechnergrundlagen 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
MehrCPU. 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
MehrMulticore Architektur vs. Amdahl`s Gesetz
Fakultätsname Informatik, Professur Technische Informatik Multicore Architektur vs. Amdahl`s Gesetz Dresden, 21.Juli.2010 Motivation Veröffentlichung von IEEE Computer 2008 von Mark D. Hill (University
MehrRO-Tutorien 3 / 6 / 12
RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 4 AM 21.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrMulticore-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
MehrSteuerwerk einer CPU. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck
Steuerwerk einer CPU Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck Übersicht Implementierung des Datenpfads Direkte Implementierung Mikroprogrammierung
MehrCISC-RISC-EPIC. eine Zwangs-Evolution?! Jörg Spilling - DECUS Frankfurter Treffen Seite: 1
CISC-RISC-EPIC eine Zwangs-Evolution?! Jörg Spilling - DECUS Frankfurter Treffen 2008 www.equicon.de Seite: 1 Heutiges Programm: CISC-RISC-EPIC - Begriffserklärung von Neumann Rechnerarchitektur Evolution
Mehr1. Übung - Einführung/Rechnerarchitektur
1. Übung - Einführung/Rechnerarchitektur Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: Was ist Hard- bzw. Software? a Computermaus b Betriebssystem c Drucker d Internetbrowser
MehrIT-Infrastruktur, WS 2014/15, Hans-Georg Eßer
ITIS-D'' IT-Infrastruktur WS 2014/15 Hans-Georg Eßer Dipl.-Math., Dipl.-Inform. Foliensatz D'': Rechnerstrukturen, Teil 3 v1.0, 2014/11/27 Folie D''-1 Dieser Foliensatz Vorlesungsübersicht Seminar Wiss.
MehrTeil Rechnerarchitekturen M07. Multiprogramming und Tasking, Flynn-Klassifikation, Parallelismus. Corinna Schmitt
Teil Rechnerarchitekturen M07 Multiprogramming und Tasking, Flynn-Klassifikation, Parallelismus Corinna Schmitt corinna.schmitt@unibas.ch Multiprogrammierung und -Tasking 2015 Corinna Schmitt Teil Rechnerarchitekturen
MehrMikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit)
Der Demo-Computer besitzt einen 4Bit-Mikroprozessor. Er kann entsprechend Wörter mit einer Breite von 4 Bits in einem Schritt verarbeiten. Die einzelnen Schritte der Abarbeitung werden durch Lampen visualisiert.
MehrWas 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
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Einführung Unsere erste Amtshandlung: Wir schrauben einen Rechner auf Grundlagen der Rechnerarchitektur Einführung 2 Vorlesungsinhalte Binäre Arithmetik MIPS Assembler
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Zugriff auf den Datenspeicher Grundlagen der Rechnerarchitektur Prozessor 19 Betrachten nun Load und Store Word Erinnerung, Instruktionen lw und sw sind vom I Typ Format:
MehrRechner 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
MehrKap.2 Befehlsschnittstelle. Prozessoren, externe Sicht
Kap.2 Befehlsschnittstelle Prozessoren, externe Sicht 2.1 elementare Datentypen, Operationen 2.2 logische Speicherorganisation 2.3 Maschinenbefehlssatz 2.4 Klassifikation von Befehlssätzen 2.5 Unterbrechungen
MehrArchitektur 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
MehrRechnerarchitektur und Betriebssysteme (CS201): Multiprogramming und -Tasking Flynn-Klassifikation, ILP, VLIW
Rechnerarchitektur und Betriebssysteme (CS201): Multiprogramming und -Tasking Flynn-Klassifikation, ILP, VLIW 26. Oktober 2012 Prof. Dr. Christian Tschudin Departement Informatik, Universität Basel Uebersicht
MehrMikroprozessor 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
MehrInhaltsverzeichnis 1 Grundlagen Grundlegende Prozessortechniken...16
Inhaltsverzeichnis 1 Grundlagen...1 1.1 Mikroprozessoren, Mikrocontroller, Signalprozessoren und SoC...1 1.2 PC-Systeme...3 1.3 Eingebettete und ubiquitäre Systeme...5 1.4 Leistungsmessung und Leistungsvergleich...11
MehrGrafikkarten-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
MehrIT für Führungskräfte. Zentraleinheiten. 11.04.2002 Gruppe 2 - CPU 1
IT für Führungskräfte Zentraleinheiten 11.04.2002 Gruppe 2 - CPU 1 CPU DAS TEAM CPU heißt Central Processing Unit! Björn Heppner (Folien 1-4, 15-20, Rollenspielpräsentation 1-4) Harald Grabner (Folien
Mehr1 Einleitung zum RISC Prozessor
1 Einleitung zum RISC Prozessor Wesentliche Entwicklungsschritte der Computer-Architekturen [2, 3]: Familienkonzept von IBM mit System/360 (1964) und DEC mit PDP-8 (1965) eingeführt: Gleiche Hardware-Architekturen
MehrTeil 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
MehrRechneraufbau und Rechnerstrukturen
Rechneraufbau und Rechnerstrukturen von Walter Oberschelp RWTH Aachen und Gottfried Vossen Universität Münster 10. Auflage c 2006 R. Oldenbourg Verlag GmbH, München Inhaltsverzeichnis Auszug... x... aus
MehrParallele Rechnerarchitekturen. Bisher behandelte: Vorlesung 7 (theoretische Grundkonzepte) Nun konkrete Ausprägungen
Parallele Rechnerarchitekturen Bisher behandelte: Vorlesung 7 (theoretische Grundkonzepte) Nun konkrete Ausprägungen Pipelining Beispiel aus dem realen Leben (;-)) Wäschewaschen in WG Füllen der Waschmaschine
MehrJ. Reinier van Kampenhout Robert Hilbrich Hans-Joachim Goltz. Workshop Echtzeit Fraunhofer FIRST
Modellbasierte Generierung von statischen Schedules für sicherheitskritische, eingebettete Systeme mit Multicore Prozessoren und harten Echtzeitanforderungen J. Reinier van Kampenhout Robert Hilbrich Hans-Joachim
Mehrfrü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
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrUntersuchung 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
Mehr2.2 Rechnerorganisation: Aufbau und Funktionsweise
2.2 Rechnerorganisation: Aufbau und Funktionsweise é Hardware, Software und Firmware é grober Aufbau eines von-neumann-rechners é Arbeitsspeicher, Speicherzelle, Bit, Byte é Prozessor é grobe Arbeitsweise
MehrInstitut für Informatik Prof. Dr. D. Hogrefe Dipl.-Inf. R. Soltwisch, Dipl.-Inform. M. Ebner, Prof. Dr. D. Hogrefe Informatik II - SS 04.
Kontrollstrukturen Informatik II SS 2004 Teil 4: Assembler Programmierung Sprünge (bedingte und unbedingte) If-then-else, Case Loop (n Durchläufe) While (Abbruchbedingung) Institut für Informatik Prof.
Mehrdas Grundprinzip findet sich auch heute noch, trotz aller gewaltigen technologischen Veränderungen, in modernen Mikroprozessoren D.
1.1 von Neumann sche Universalrechenautomat (1) Urvater der meisten Rechner ist der klassische Universalrechenautomat (URA) geht zurück auf John von Neumann, Goldstine, Barks (Princeton, 1946) das Grundprinzip
MehrInhaltsverzeichnis. Vorwort...VII. Vorwort zur 2. Auflage... IX. Inhaltsverzeichnis... XI
Vorwort...VII Vorwort zur 2. Auflage... IX Inhaltsverzeichnis... XI 1 Grundlagen...1 1.1 Mikroprozessoren, Mikrocontroller, Signalprozessoren und SoC...1 1.2 PC-Systeme...3 1.3 Eingebettete und ubiquitäre
MehrVorlesung Rechnerarchitektur. Mehrkernarchitekturen
Mehrkernarchitekturen 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
Mehr4 Der Von-Neumann-Rechner als Grundkonzept für Rechnerstrukturen
4 Der Von-Neumann-Rechner als Grundkonzept für Rechnerstrukturen Ein Rechner besteht aus den folgenden Bestandteilen: Rechenwerk Rechenoperationen wie z.b. Addition, Multiplikation logische Verknüpfungen
MehrEHP Einführung Projekt A
Volker Dörsing EHP Einführung Projekt A email: doersing@uni-jena.de praktische Übung www: http://users.minet.uni-jena.de/~ehp-head Vorbereitung, Durchführung, Kolloquium Infos zur Veranstaltung, Versuchsanleitung
MehrHyper-Threading oder Simultaneous Multithreading
Hyper-Threading oder Simultaneous Multithreading ein Referat von Timo Richter im Fach Rechnerstrukturen bei Prof. Dr. Risse an der Hochschule Bremen 1. EINLEITUNG 2 2. VORBETRACHTUNG 2 2.1 Threads 3 2.2
MehrMulticore Herausforderungen an das Software-Engineering. Prof. Dr.-Ing. Michael Uelschen Hochschule Osnabrück 15.09.2010
Multicore Herausforderungen an das Software-Engineering Prof. Dr.-Ing. Michael Uelschen Hochschule Osnabrück 15.09.2010 Inhalt _ Motivation _ Herausforderung 1: Hardware _ Herausforderung 2: Software-Partitionierung
MehrPraxiseinheit: Realisierung einer hardwarebeschleunigten Disparitätenberechnung zur automatischen Auswertung von Stereobildern
Praxiseinheit: Realisierung einer hardwarebeschleunigten Disparitätenberechnung zur automatischen Auswertung von Stereobildern Institut für Betriebssysteme und Rechnerverbund TU Braunschweig 25.10., 26.10.
MehrFragenkatalog Computersysteme Test 25. April 2008
Fragenkatalog Computersysteme Test 25. April 2008 Wolfgang Schreiner Wolfgang.Schreiner@risc.uni-linz.ac.at 6. April 2008 Der Test besteht aus 4 Fragen aus dem folgenden Katalog (mit eventuell leichten
MehrLeistung und Pipelining. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck
Leistung und Pipelining Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck Übersicht Leistung Leistungsmessung Leistungssteigerung Pipelining Einführung in die
MehrGrundlagen der Parallelisierung
Grundlagen der Parallelisierung Philipp Kegel, Sergei Gorlatch AG Parallele und Verteilte Systeme Institut für Informatik Westfälische Wilhelms-Universität Münster 3. Juli 2009 Inhaltsverzeichnis 1 Einführung
MehrMikrocomputertechnik. Einadressmaschine
technik Einadressmaschine Vorlesung 2. Mikroprozessoren Einführung Entwicklungsgeschichte Mikroprozessor als universeller Baustein Struktur Architektur mit Akku ( Nerdi) FH Augsburg, Fakultät für Elektrotechnik
MehrRechneraufbau und Rechnerstrukturen
Rechneraufbau und Rechnerstrukturen von Prof. Dr. Walter Oberschelp, RWTH Aachen und Prof. Dr. Gottfried Vossen, Universität Münster 7, vollständig überarbeitete und aktualisierte Auflage R.Oldenbourg
MehrKonzepte und Methoden der Systemsoftware. Aufgabe 1: Polling vs Interrupts. SoSe bis P
SoSe 2014 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung 3(Musterlösung) 2014-05-05 bis 2014-05-09 Aufgabe 1: Polling vs Interrupts (a) Erläutern Sie
MehrINFORMATIK Oberstufe. Funktionsweise eines Rechners
INFORMATIK Oberstufe Funktionsweise eines Rechners Lehrplan Inf 12.3 (ca. 17 Std.): Grundlegende Kenntnisse über den Aufbau eines Rechners und seiner prinzipiellen Funktionsweise helfen den Schülern, den
MehrUmsetzung in aktuellen Prozessoren
Kapitel 8: Umsetzung in aktuellen Prozessoren 4 Realisierung elementarer Funktionen Reihenentwicklung Konvergenzverfahren 5 Unkonventionelle Zahlensysteme redundante Zahlensysteme Restklassen-Zahlensysteme
Mehr3AA. Prof. Dr. Wolfgang P. Kowalk. Universität Oldenburg WS 2005/2006
3AA Prof. Dr. Wolfgang P. Kowalk Universität Oldenburg WS 2005/2006 Version vom 24.10.2005 Übersicht Einführung in maschinennahe Programmierung Verständnis für grundlegende Vorgänge im Computer Jedes Programm
MehrRO II Übungen ohne Lösungen V16
RO II Übungen ohne Lösungen V16 HRI 23.04.2015 1 Übung 1 (149P) Superskalarität, Parallelität Allgemein, Dynamische Befehlsausführung 1.1 Aufgabe: Superskalarität (27P) 1.) Was bedeutet der Begriff Superskalarität?
MehrRechnerarchitektur. Dr. Andreas Müller TU Chemnitz Fakultät für Informatik Fakultätsrechen- und Informationszentrum anmu@informatik.tu-chemnitz.
Rechnerarchitektur Dr. Andreas Müller TU Chemnitz Fakultät für Informatik Fakultätsrechen- und Informationszentrum anmu@informatik.tu-chemnitz.de Rechnerarchitektur Dr. Andreas Müller TU Chemnitz Fakultät
MehrCISC ( 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
MehrFAKULTÄT FÜR INFORMATIK
FAKULTÄT FÜR INFORMATIK TECHNISCHE UNIVERSITÄT MÜNCHEN Lehrstuhl für Rechnertechnik und Rechnerorganisation Prof. Dr. Arndt Bode Einführung in die Rechnerarchitektur Wintersemester 2016/2017 Tutorübung
MehrEinführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München
Einführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (2) Architektur des Haswell- Prozessors (aus c t) Einführung
MehrAuch hier wieder. Control. RegDst Branch MemRead MemtoReg ALUOp MemWrite ALUSrc RegWrite. Instruction[31 26] (also: das Opcode Field der Instruktion)
Auch hier wieder Aus voriger Wahrheitstabelle lässt sich mechanisch eine kombinatorische Schaltung generieren, die wir im Folgenden mit dem Control Symbol abstrakt darstellen. Instruction[31 26] (also:
MehrGrundlagen der Informatik
Grundlagen der Informatik Logische und mathematische Grundlagen Digitale Daten Computerprogramme als Binärdaten von Neumann-Rechnerarchitektur Einführung in Maschinen-Code Speicherorganisation Betriebssysteme
MehrEinführung in die Systemprogrammierung
Einführung in die Systemprogrammierung Speedup: Grundlagen der Performanz Prof. Dr. Christoph Reichenbach Fachbereich 12 / Institut für Informatik 30. April 2015 Eine Aufgabe aus der Praxis Gegeben ein
MehrImplementierung: Direkt abgebildeter Cache
Implementierung: Direkt abgebildeter Cache Direkt-abgebildeter Cache von 64 KB mit 16-Byte-Linien (Adress- und Wortlänge 32 Bit, Byteadressierung) Address (showing bit positions) 31 30 29 28..... 19 18
MehrTechnische Informatik I, SS 2001
Technische Informatik I SS 2001 PD Dr. A. Strey Abteilung Neuroinformatik Universität Ulm Inhalt Einführung: Überblick über die historische Entwicklung der Rechnerhardware Teil 1: Digitale Logik kurzer
MehrOpenMP - Threading- Spracherweiterung für C/C++ Matthias Klein, Michael Pötz Systemprogrammierung 15. Juni 2009
- Threading- Spracherweiterung für C/C++ Matthias Klein, Michael Pötz Systemprogrammierung 15. Juni 2009 Grundlagen der Parallelen Programmierung Hardware Threads vs. Prozesse Kritische Abschnitte Lange
MehrMikrocontroller und Mikroprozessoren
examen.press Mikrocontroller und Mikroprozessoren Bearbeitet von Theo Ungerer 3. Aufl. 2010. Taschenbuch. XVII, 470 S. Paperback ISBN 978 3 642 05397 9 Format (B x L): 15,5 x 23,5 cm Gewicht: 719 g Weitere
Mehrz/architektur von IBM
von IBM Grundzüge einer modernen Architektur Von Matthias Fäth Gliederung Geschichtlicher Überblick Neuestes Flaggschiff Namensgebung Überblick Warum 64-Bit große Register Kompatibilität zu älteren Systemen
MehrAllgemeine Speed-Up Formel. Gesetz von Gustafson-Barsis
5 Leistungsanalyse Parallelrechner Allgemeine Speed-Up Formel Amdahlsche Gesetz Gesetz von Gustafson-Barsis Karp-Flatt Maß 1 5.1 Allgemeine Speed-Up Formel Allgemeine Speed-Up Formel Speedup = Sequentielle
MehrProjektseminar Parallele Programmierung
HTW Dresden WS 2014/2015 Organisatorisches Praktikum, 4 SWS Do. 15:00-18:20 Uhr, Z136c, 2 Doppelstunden o.g. Termin ist als Treffpunkt zu verstehen Labore Z 136c / Z 355 sind Montag und Donnerstag 15:00-18:20
MehrDer Toy Rechner Ein einfacher Mikrorechner
Der Toy Rechner Ein einfacher Mikrorechner Dr. Gerald Heim Haid-und-Neu-Str. 10-14 76131 Karlsruhe 16. Mai 1995 Allgemeine Informationen 2 Quelle: Phil Kopmann, Microcoded versus Hard-Wired Logic, Byte
MehrProgrammierung Paralleler Prozesse
Vorlesung Programmierung Paralleler Prozesse Prof. Dr. Klaus Hering Sommersemester 2007 HTWK Leipzig, FB IMN Sortierproblem Gegeben: Menge M mit einer Ordnungsrelation (etwa Menge der reellen Zahlen) Folge
MehrMikroController und Mikroprozessoren
Uwe Brinkschulte Theo Ungerer MikroController und Mikroprozessoren 2. überarbeitete Auflage Mit 212 Abbildungen und 41 Tabellen Springer Inhaltsverzeichnis Vorwort Vorwort zur 2. Auflage Inhaltsverzeichnis
MehrEchtzeit Videoverarbeitung
Hardwareplattformen für Echtzeit Videoverarbeitung Herbert Thoma Seite 1 Gliederung Echtzeitanforderungen Prozessorarchitekturen Grundlagen Pipelining Parallele Befehlsausführung Systemkomponenten Speicher
Mehr1 Proseminar: Konzepte von Betriebssystem-Komponenten. Thema: Server OS AS/400 Referend: Sand Rainer. Server OS - AS/400
1 Proseminar: Konzepte von Betriebssystem-Komponenten Server OS - AS/400 Gliederung Was ist eine AS/400? Wie ist OS/400 aufgebaut? Was kann eine AS/400? Bsp.: Logische Partitionierung 2 Proseminar: Konzepte
MehrFragestellung: Wie viele CPU Kerne sollte eine VM unter Virtualbox zugewiesen bekommen?
Fragestellung: Wie viele CPU Kerne sollte eine VM unter Virtualbox zugewiesen bekommen? Umgebung Getestet wurde auf einem Linux-System mit voller invis-server Installation, auf dem eine virtuelle Maschine
MehrKomponenten & Programmierung von Automatisierungssystemen Softwareentwicklung für Mikrocontroller
Komponenten & Programmierung von Automatisierungssystemen Softwareentwicklung für Mikrocontroller Prof. Dr.-Ing. Tilman Küpper Hochschule München Fakultät 03 Einleitung 1 Inhalt der Vorlesung Teil 1 Grundlagen,
MehrEinführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München
Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (1) Was ist ein Rechner? Maschine, die Probleme für
MehrGrundbegriffe der Informatik
Grundbegriffe der Informatik Kapitel 22: Mima-X Thomas Worsch KIT, Institut für Theoretische Informatik Wintersemester 2015/2016 GBI Grundbegriffe der Informatik KIT, Institut für Theoretische Informatik
MehrRISC: Reduced Instruction Set Computer. Technische Informatik I Wintersemester 12/13 1. J. Kaiser, IVS-EOS
RISC: Reduced Instruction Set Computer 1 The CMOS Generations: Speedup through Miniaturization 10-fache Leistungssteigerung 2 Was ist ein Reduced Instruction Set Computer (RISC*)? * Der Begriff RISC wurde
MehrBrückenkurs / Computer
Brückenkurs / Computer Sebastian Stabinger IIS 23 September 2013 Sebastian Stabinger (IIS) Brückenkurs / Computer 23 September 2013 1 / 20 Content 1 Allgemeines zum Studium 2 Was ist ein Computer? 3 Geschichte
Mehr