Systeme 1: Architektur

Ähnliche Dokumente
Architektur von Parallelrechnern 50

Proseminar Rechnerarchitekturen. Parallelcomputer: Multiprozessorsysteme

2 Rechnerarchitekturen

Kapitel 1 Parallele Modelle Wie rechnet man parallel?

Johann Wolfgang Goethe-Universität

Technische Informatik - Eine Einführung

Intel 80x86 symmetrische Multiprozessorsysteme. Eine Präsentation im Rahmen des Seminars Parallele Rechnerarchitekturen von Bernhard Witte

CPU Speicher I/O. Abbildung 11.1: Kommunikation über Busse

Architektur paralleler Plattformen

Hardware-Architekturen

Parallelrechner (1) Anwendungen: Simulation von komplexen physikalischen oder biochemischen Vorgängen Entwurfsunterstützung virtuelle Realität

Assembler Kontrollstrukturen

Mehrprozessorarchitekturen

Rechneraufbau und Rechnerstrukturen


Computational Biology: Bioelektromagnetismus und Biomechanik

Überblick. Einleitung. Befehlsschnittstelle Mikroarchitektur Speicherarchitektur Ein-/Ausgabe Multiprozessorsysteme,...

Assembler (NASM) Crashkurs von Sönke Schmidt

L3. Datenmanipulation

Die Mikroprogrammebene eines Rechners

Kap 4. 4 Die Mikroprogrammebene eines Rechners

6. Parallele Algorithmen

Computer-Architektur Ein Überblick

INFORMATIK Oberstufe. Funktionsweise eines Rechners

IT für Führungskräfte. Zentraleinheiten Gruppe 2 - CPU 1

Rechnergrundlagen SS Vorlesung

Verteilte Betriebssysteme

Beispiel Parallelisierung 2D Laplace. Lagrange Formulierung/Hyperelastisches Material. Finite Differenzen Diskretisierung

3AA. Prof. Dr. Wolfgang P. Kowalk. Universität Oldenburg WS 2005/2006

Datenpfad einer einfachen MIPS CPU

Enterprise Computing

Gliederung Seite 1. Gliederung

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

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

Datenpfad einer einfachen MIPS CPU

Pipelining. Die Pipelining Idee. Grundlagen der Rechnerarchitektur Prozessor 45

Inhaltsangabe. 2.1 DieCPU Der Speicher Die Busse Klassifikation der von-neumann-rechner... 37

Informatik 12 Kapitel 3 - Funktionsweise eines Rechners

2. Computer (Hardware) K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16

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

In heutigen Computern findet man schnellen/teuren als auch langsamen/billigen Speicher

1 Rechnerstrukturen 1: Der Sehr Einfache Computer

Vorlesung "Struktur von Mikrorechnern" (CBS)

Was ist die Performance Ratio?

Einführung in die Informatik

Instruktionssatz-Architektur

DIGITALE SCHALTUNGEN II

Rechneraufbau und Rechnerstrukturen

Paralleles Rechnen. (Architektur verteilter Systeme) von Thomas Offermann Philipp Tommek Dominik Pich

Quiz. Gegeben sei ein 16KB Cache mit 32 Byte Blockgröße. Wie verteilen sich die Bits einer 32 Bit Adresse auf: Tag Index Byte Offset.

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

Einführung in die Informatik

Geräteentwurf mit Mikroprozessoren 1

Hugepages, NUMA or nothing on Linux?

Shangrila. One Instruction Set Computer

Auch hier wieder. Control. RegDst Branch MemRead MemtoReg ALUOp MemWrite ALUSrc RegWrite. Instruction[31 26] (also: das Opcode Field der Instruktion)

Mehrprozessorarchitekturen (SMP, Cluster, UMA/NUMA)

Parallelverarbeitung. Parallelverarbeitung. 2. Grundlagen. 2. Grundlagen. 2.1 Parallelität

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

System-Architektur und -Software

Das Prinzip an einem alltäglichen Beispiel

Lösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009

Grundlagen der Informationsverarbeitung:

1 Konzepte der Parallelverarbeitung

Übungen zur Vorlesung Technische Informatik I, SS 2002 Hauck / Guenkova-Luy / Prager / Chen Übungsblatt 5 Rechenwerke / Scheduling

Parallelrechner: Klassifikation. Parallelrechner: Motivation. Parallelrechner: Literatur. Parallelrechner: PC-Technologie SMP-Multiprozessorsysteme 69

Technische Informatik II Rechnerarchitektur

Grundlagen der Rechnerarchitektur

Grundlagen der Rechnerarchitektur. Einführung

Was ist Rechnerleistung

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

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

Rechnerarchitektur SS 2014

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

x86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013

Bsys2 Zusammenfassung. Definition Die CPU ist das Gehirn des Computers. Sie holt Befehle aus dem Speicher und führt sie aus.

1 Einführung Ziele der Vorlesung Die Idee Lernkarte Selbsttest-Frage 3 Literaturhinweise 3

Teil VIII Von Neumann Rechner 1

Rechnerstrukturen 1: Der Sehr Einfache Computer

Raytracing auf Desktop PCs Optimizing Cache Usage (Intel Corp.)

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

Grundlagen der Programmierung 2. Parallele Verarbeitung

Teil 2: Rechnerorganisation

Kode-Erzeugung für Registersatz-Maschinen

Rechnernetze und Organisation

Digitaltechnik und Rechnerstrukturen. 2. Entwurf eines einfachen Prozessors

Ein Verteiltes System ist eine Ansammlung von unabhängigen Rechnern, die für seine Benutzer wie ein einzelnes Computersystem aussieht.

Praxiseinheit: Realisierung einer hardwarebeschleunigten Disparitätenberechnung zur automatischen Auswertung von Stereobildern

2 Reproduktion oder Verwendung dieser Unterlage bedarf in jedem Fall der Zustimmung des Autors.

Informatikgrundlagen I Grundlagen der Informatik I

Technische Informatik 1

Kap.2 Befehlsschnittstelle. Prozessoren, externe Sicht

Vorlesung 3: Verschiedenes

Beispielvortrag: HPCG auf Intel Haswell-EP

Computer-Systeme. Teil 5: Central Processing Unit (CPU)

Computer-Systeme Teil 5: Central Processing Unit (CPU)

Grundlagen der Rechnerarchitektur

Klausur Paralleles Rechnen (Richtwert 60 min) 10. Dez. 2015

10. Die Adressierungsarten des MSP 430

Transkript:

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 pro Prüfung Prüfungsgespräch keine Vorbereitungszeit nötig

slide 3 Maschinenprogramm...... steuert direkt das Verhalten des Prozessors instruction set architecture

slide 4 Beispiel eines Prozessorinstruktionssatzes (unvollständig, Pentium II)

slide 5 Bedingte Sprünge CMP Op1, Op2 vergleiche die Operanden Op1 und Op2 hierdurch wird faktisch eine Subtraktion Op2 - Op1 durchgeführt und daraufhin so genannte Flaggen im Prozessor gesetzt (flags; Flaggenregister [flag register]) JLT Adr jump if less than; Sprung, falls im vorherigen Vergleichsbefehl Op1 kleiner als Op2 war JGT Adr jump if greater than; Sprung, falls im vorherigen Vergleichsbefehl Op1 grösser als Op2 war JLE Adr jump if less than or equal; Sprung, falls im vorherigen Vergleichsbefehl Op1 kleiner als oder gleich Op2 war JGE Adr jump if greater than or equal; Sprung, falls im vorherigen Vergleichsbefehl Op1 grösser als oder gleich Op2 war JEQ Adr jump if equal; Sprung, falls im vorherigen Vergleichsbefehl Op1 gleich Op2 war JNE Adr jump if not equal; Sprung, falls im vorherigen Vergleichsbefehl Op1 nicht gleich Op2 war

slide 6 Beispielprogramm MOV R1, #0 MOV R2, #1024 MOV R3, #1040 loop: ADD (R2), R1 ADD #4, R2 CMP R2, R3 JLT loop??? Was wissen wir hier??? R1 enthält die Summe der (4 Bytes grossen) Worte an den Speicheradressen 1024, 1028, 1032, 1036

slide 7 Probieren Sie selbst Schreiben Sie ein Maschinenprogramm, das an die Adresse 3000 springt, falls der Inhalt von Register R1 grösser als 500 und kleiner als oder gleich 15000 ist, an die Adresse 3000000, falls der Inhalt von Register R1 kleiner als oder gleich 500 ist, sonst an die Adresse 3 springt.

slide 8 Und zu guter letzt Schreiben Sie ein Programm, das die ersten n Fibonacci Zahlen berechnet und im Speicher ab Adresse 4000 ablegt. n ist hierin der Wert in Register R1. Die Fibonacci Zahlen sind definiert als: 1, 1, 2, 3, 5, 8, 13, 21, 34,... f 0 = 1 f 1 = 1 f n = f n-2 + f n-1, für n 2.

slide 9 Parallelarchitekturen Motivation: Effizienz Bsp. Matrizenmultiplikation: in der Ergebnismatrix werden alle Einträge gemäss dem Schema Zeile mal Spalte hat der Computer so viele Prozessoren, wie die Ergebnismatrix (z.b. n m) Einträge enthält, könnte jeder Eintrag gleichzeitig durch einen Prozessor berechnet werden Beschleunigung um den Faktor n m kann bei grossen Matrizen erheblich sein z.b.: 1000 1000 Matrizen; theoretisch 1 Sekunde statt ca. 11.5 Tagen man bräuchte allerdings einen Computer mit 1 000 000 Prozessoren

slide 10 Parallelarchitekturen SISD = Single Instruction Single Data normaler (nicht-paralleler Computer) von Neumann Rechner SIMD = Single Instruction Multiple Data Vektorrechner Array-Rechner MISD = Multiple Instructions Single Data existiert nicht MIMD = Multiple Instructions Multiple Data Parallelrechner Rechner-Cluster aufgeteilte und lokale Speicherarchitekturen

slide 11 Übersicht über Parallelarchitekturen

slide 12 SIMD Es wird pro Zeiteinheit die gleiche Operation von allen Prozessoren ausgeführt ein Programm für alle Prozessoren Jeder Prozessor arbeitet allerdings auf einem anderen Datensatz Verknüpfungen aus der Vektorgeometrie und - analysis sind effizient durchführbar Einsatz bei bestimmten numerischen Problemen z.b. vektor- und matrizenlastige Algorithmen Number crunching

slide 13 SIMD schematisch

slide 14 MIMD - gemeinsamer Speicher (Teilweise) unabhängige Prozessoren, die alle auf den gleichen Speicher zugreifen Interprozessorkommunikation über Speicherinhalt SMP = symmetric multi-processor ein Systemtakt für alle Prozessoren synchronisierte Prozessorzyklen (fetch cycles) NUMA = non-uniform memory access jeder Prozessor stellt in gewisser Weise einen unabhängigen Computer dar nur, dass alle diese Computer einen gemeinsamen Speicher haben Prozessoren laufen asynchron

slide 15 Gemeinsamer Speicher schematisch

slide 16 MIMD - Lokaler Speicher Cluster unabhängiger Computer mit eigenem, lokalem Speicher Kommunikation über Kommunikationskanäle in einen so genannten Verbindungsnetzwerk In diese Kategorie fallen auch alle Arten von Rechnernetzen Aktuelle Schlagworte: E-Science Grid Computing

slide 17 Lokaler Speicher schematisch

slide 18 Allgemeine Architektur

slide 19 Bus Architektur

slide 20 Speicherports

slide 21 Komplexe Architektur

slide 22 Resultierende Probleme Gleichzeitige Speicherzugriffe Transaktionslösungen locking von Speicheradressen manche dieser Probleme treten auch im Kontext von Datenbanken auf viele Benutzer, eine Datenbanktabelle viele Prozessoren, ein Speicher Cache-/Speicheraktualität (Cache-Kohärenz) enthält der lokale Cache-Speicher eines Prozessors noch den tatsächlichen Speicherinhalt nicht nur ich, auch andere verändern den Speicherinhalt Die dargestellten Probleme werden noch in anderen Vorlesungen behandelt Datenbanken verteilte Systeme

slide 23 Das war s für heute. Das ist alles, was ich in der Vorlesungsreihe machen wollte. Nächste Woche: Wiederholung/Fragen zur Prüfungsvorbereitung Eine schönen Rest der Woche!