Cache. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011
|
|
- Ulrike Glöckner
- vor 7 Jahren
- Abrufe
Transkript
1 Cache Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 Cache 1/
2 Einleitung Hauptspeicherzugriffe sind langsam die wichtigsten Daten in der CPU zwischenspeichern was sind die wichtigsten Daten? die Daten, die demnächst (wieder) gebraucht werden welche Daten werden (vermutlich) demnächst gebraucht? die Daten, die zuletzt häufig gebraucht wurden ( temporale Lokalität ) die Daten, die nahe den zuletzt gebraucht Daten liegen ( räumliche Lokalität ) verschiedene Platzierungs-, Ersetzungs- und Rückschreibstategien Cache 2/
3 Cache-Position Cache 3/
4 Cache-Position Hinweis: 1st Level = Primary = L1 = Upstream 2nd Level = Secondary = L2 3rd Level = = L3 = Downstream Cache 4/
5 Virtueller Cache Cache 5/
6 Virtueller Cache Virtueller Cache: Vorteil: Adress-Umrechnung durch MMU vielfach nicht nötig Nachteil: bei Kontextwechseln (MMU rechnet Adressen anders um) Cache-Flush notwendig Cache 6/
7 Physikalischer Cache Cache 7/
8 Physikalischer Cache Physikalischer Cache: Vorteil: bei Kontextwechseln (MMU rechnet Adressen anders um) kein Cache-Flush notwendig Nachteil: Adress-Umrechnung durch MMU immer nötig Cache 8/
9 Harvard-Architektur Cache 9/
10 Harvard-Architektur Cache 10/
11 Caches Frage Wie groß sollte welcher Cache (mindestens) sein? Cache 11/
12 Caches-Blöcke Hinweis: Es werden i.a. nicht einzelne Bytes gecacht, sondern zusammenhängende Blöcke mit mehreren Bytes (z.b. 32 Bytes) Ausnutzung der räumlichen Lokalität Ausnutzung der Breite des externen Datenbusses Ausnutzung der Burst-Möglichkeit von externen Bussen geringerer Aufwand bei der Speicherung der zugehörigen Adressen Cache 12/
13 Caches-Blöcke Cache 13/
14 Caches-Blöcke Cache 14/
15 Caches-Blöcke Wie groß sollte bei unserer Beispiel-CPU die Cache-Block-Größe mindestens sein? Cache 15/
16 Caches-Blöcke Frage Es existiere folgendes Array (H und W seien große Zahlen): int array[h][w]; Welcher Algorithmus ist vermutlich der Schnellere: Algorithmus 1: sum = 0; for (x = 0; x < W; x++) { } for (y = 0; y < H; x++) { sum += array[y][x]; } Algorithmus 2: sum = 0; for (y = 0; y < H; x++) { for (x = 0; x < W; x++) { sum += array[y][x]; } } Cache 16/
17 Caches-Blöcke Frage Beim Pipelining sind Sprünge unangenehm. Eine Möglichkeit, sie zu umgehen ist Loop-Unrolling. Beispiel: Code: sum = 0; for (i = 0; i < 5; i++) { sum += array[i]; } Code mit Loop-Unrolling: sum = array[0]; sum += array[1]; sum += array[2]; sum += array[3]; sum += array[4]; Was bedeutet dies im Zusammenhang mit Caches? Cache 17/
18 Caches Frage Diskutieren Sie Delayed Branching im Zusammenhang mit Caches! Cache 18/
19 Caches Frage Beschreiben Sie, wie ein Cache die temporale Lokalität, räumliche Lokalität von Daten/Instruktionen nutzt! Cache 19/
20 Caches Platzierungsstrategie: wenn ein Datum aus dem Hauptspeicher zwsichengespeichert werden soll, muss ein Platz im Cache ausgewählt werden Ersetzungsstrategie: wenn der Cache gefüllt ist, muss ein altes Datum aus dem Cache entfernt werden, bevor ein neues Datum aufgenommen werden kann Schreibstrategie: wann werden im Cache modifizierte Daten in den Hauptspeicher zurückgeschrieben Cache 20/
21 Caches Platzierungsstrategien: Direct-Mapped: jeder Adresse im Hauptspeicher ist genau eine Speicherzelle des Caches zugeordnet N-Set-Associative: jeder Adresse im Hauptspeicher ist genau eine von N Speicherzellen des Caches zugeordnet Full-Associative: jeder Adresse des Hauptspeichers kann jede Speicherzelle des Caches zugeordnet werden Cache 21/
22 Direct-Mapped Caches Ein direct-mapped cache mit E Einträgen bildet die Adresse im Cache (CA) aus der Adresse im Speicher (MA) durch Berechnung von CA = MA mod E Cache 22/
23 Direct-Mapped Caches Cache 23/
24 Direct-Mapped Caches D.h. dass jeder Speicheradresse genau eine Cache-Adresse zugeordnet ist. Jeder Cache-Adresse entsprechen jedoch i.a. mehrere Speicheradressen. Daher muss zusätzlich zum gecachten Wert noch die Adresse des Wertes im Hauptspeichers vermerkt werden. Da ein Teil der Adresse schon in der Adresse des Caches implizit enthalten ist, reicht sogenanntes Tag : CA = MA mod E, Tag = MA/E Cache 24/
25 Direct-Mapped Caches Frage Es gilt: CA = MA mod E, Tag = MA/E Wie sollte E aussehen, damit die Lösung in Hardware möglichst einfach ist? Cache 25/
26 Direct-Mapped Caches Cache 26/
27 Direct-Mapped Caches Frage Wofür ist das Valid -Bit notwendig? Cache 27/
28 Direct-Mapped Caches Frage Es soll ein direct mapped Cache aufgebaut werden. Gegeben sind folgende Werte: die CPU besitzt einen 32-Bit-Adressbus der Cache soll 1 MByte Daten aufnehmen jede Cache-Zeile soll 64 Bits aufnehmen können es soll auf jedes Byte zugegriffen werden können Wieviele Bits werden für den Byte-Offset, den Index und das Tag benötigt? Wieviele Bits müssen jetzt wirklich im Cache gespeichert werden? Cache 28/
29 1-aus-N-Dekoder Frage Wie kann man eine einfache Hardware bauen, die folgendes Input-Output-Verhalten hat ( 1-aus-N-Dekoder ): EN I 2 I 1 I 0 O 0 O 1 O 2 O 3 O Cache 29/
30 Direct-Mapped Caches Frage Überlegen Sie sich, wie dieses Struktur-Bild eines direct-mapped Caches in Hardware übersetzt werden kann! Cache 30/
31 Direct-Mapped Caches Frage Kann ein Direct-Mapped-Cache gleichzeitig beschrieben und ausgelesen werden? Könnte man diese Eigenschaft gebrauchen? Cache 31/
32 Direct-Mapped Caches Frage Wie fügt sich der Cache in die Reihe CPU-Core Cache Main-Bus ein? Wie muss das Interface des Caches aussehen? Cache 32/
33 Direct-Mapped Caches Frage In der Werbung sieht man ab und zu Sprüche wie Die CPU besitzt einen 3 MByte großen First-Level-Cache Was sagen Sie dazu? Cache 33/
34 Direct-Mapped Caches Frage Zwei 32-Bit-CPUs besitzen jeweils 1 KByte große Direct-Mapped-Caches. In der einen CPU ist dieser organisiert als Cache mit 256 Cache-Zeilen zu je 4 Byte In der anderen CPU ist dieser organisiert als Cache mit 64 Cache-Zeilen zu je 16 Byte Welche Variante ist in Hardware einfacher aufzubauen? Welche CPU ist besser? Diskutieren Sie die Vor- und Nachteile! Cache 34/
35 Direct-Mapped Caches Frage Eine CPU besitze je einen Direct-Mapped-Cache für Instruktionen und Daten. Die Cache-Blöcke seien jeweils 4 Speicherworte groß. Überlegen Sie sich den Inhalt der Caches beim Ablauf folgendes Programmes: 16: xor %r2, %r2, %r2 17: add $2048, %r0, %r3 18: xor %r4, %r4, %r4 19: jmp +4 20: load (%r3), %r5 21: add %r5, %r4, %r4 22: add $1, %r2, %r2 23: add $1, %r3, %r3 24: cmp $16, %r2, %r2 25: jne -6 Warum sind die Adresse 16 und 2048 besonders gut gewählte Zahlen? Cache 35/
36 N-Set-Associative Caches Direct-Mapped Caches: Vorteil: sehr einfach => große Caches möglich Nachteil: in vielen Situationen wertlos (wenn mehrfach nacheinander auf Speicherzelle X und X + k E zugegriffen wird) => N-Set-Associative Caches Cache 36/
37 N-Set-Associative Caches Definition N-Set-Associative Cache : Jedes Datum kann an N Stellen im Cache gespeichert werden. (mit: E ist ganzzahliges Vielfaches von N) Cache 37/
38 N-Set-Associative Caches Ist ein Datum an mehreren Stellen speicherbar, müssen mehrere Tags gleichzeitig untersucht werden. => N-Set-Associative Caches benötigen N Vergleicher Cache 38/
39 N-Set-Associative Caches Cache 39/
40 Full-Associative Caches Spezialfall N = E: Jedes Datum kann in jeder Cache-Speicherzelle gespeichert werden: voll-assoziativer Cache Cache 40/
41 Caches Daumenregel: sehr großer Cache => direct-mapped mittlerer Cache => N-set-associative sehr kleiner Cache => full-associative Cache 41/
42 Ersetzungsstrategien Ist der Cache voll, muss vor dem Einlagern eines neuen Adress-/Werte-Paares ein altes aus dem Cache verworfen werden. Zwei gängige Verfahren gibt es: zufällig: hier wird irgendein zufälliges Paar ausgewählt LRU: (least recently used) hier wird das am längsten nicht mehr benutzte Paar überschrieben Pseudo-LRU: ähnlich LRU aber Hardware-mäßig einfacher (s.u.) das Zufallsverfahren ist in manchen Situationen besser als das (Pseudo-)LRU-Verfahren Cache 42/
43 LRU-Ersetzung LRU für zwei Einträge ist einfach: ein Bit kennzeichnet den jeweils zuletzt benutzten Eintrag echtes LRU für vier und mehr Einträge ist (zu) aufwändig Cache 43/
44 LRU-Ersetzung Frage Wie könnte man ein echtes LRU-Verfahren implementieren? Welche Informationen müsste man dafür im Cache speichern? Cache 44/
45 LRU-Ersetzung Vereinfachtes (Pseudo-) LRU für vier und mehr Einträge: jeweils zwei Einträge werden paarweise mit je einem Bit über LRU verwaltet jeweils zwei auf diese Art verwaltete LRU-Paare werden jeweils wieder mit je einem Bit über LRU verwaltet... Cache 45/
46 LRU-Ersetzung Cache 46/
47 LRU-Ersetzung Frage Auf folgende Adressen wird der Reihe nach in einem Cache zugegriffen, dessen Cache-Blöcke jeweils 16 Worte groß sind (voll-assoziativer Cache mit 4 Einträgen): 0x22, 0x78, 0x93, 0x50, 0x94, 0x37, 0x41, 0x74, 0x45, 0x5A Wie verhält sich das Pseudo-LRU-Verfahren im Vergleich zum LRU-Verfahren? Cache 47/
48 LRU-Ersetzung Anzahl der zusätzlichen Pseudo-LRU-Bits: 4-set-associative: 3 Bits 8-set-associative: 7 Bits 16-set-associative: 15 Bits... N-set-associative: N 1 Bits => i.a. werden nur Assoziativitätsgrade bis höchstens 8 oder 16 verwendet Cache 48/
49 LRU-Ersetzung Frage Bisher wurden die Pseudo-LRU-Verwaltungs-Bits neu berechnet, wenn auf den Cache zugegriffen wurde. Ist mit Zugriff eine Lese- oder ein Schreib-Zugriff gemeint? Oder werden die Bits in beiden Fällen angepasst? Cache 49/
50 LRU-Ersetzung Frage Wie müsste ein Pseudo-LRU-Cache Hardware-mäßig aufgebaut werden? Cache 50/
51 LRU-Ersetzung Frage Kann ein Cache mit LRU-Ersetzung gleichzeitig beschrieben und ausgelesen werden? Cache 51/
52 LRU-Ersetzung Frage Kann man einen 14-fach-assoziativen Speicher bauen? Macht das Sinn? Cache 52/
53 Schreibstrategien Hier zunächst der Ansatz: Im Cache geänderte Daten werden auch sofort im Hauptspeicher aktualisiert bzw. in die I/O-Geräten geschrieben. Andere Strategien: später... Cache 53/
Speicher. Speicher. Speicherhierarchie. Speicher. Interessante Zahlen:
Übersicht 1 Einleitung Hauptspeicher 2 Hauptspeicher 3 Caches, Cache-Kohärenz Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009
MehrBesprechung des 8. Übungsblattes Einführung in Caches Cache-Organisation Cache-Ersetzungsstrategien Aufgaben (an der Tafel) Testklausur
Themen heute Besprechung des 8. Übungsblattes Einführung in Caches Cache-Organisation Cache-Ersetzungsstrategien Aufgaben (an der Tafel) Testklausur Besprechung des 8. Übungsblattes Aufgabe 2.6. In diesem
MehrCache II. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011
Cache II Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 Cache II 1/14 2012-02-29 Schreibstrategien Es sind verschiedene Fälle
Mehré Er ist software-transparent, d.h. der Benutzer braucht nichts von seiner Existenz zu wissen. Adreßbus Cache- Control Datenbus
4.2 Caches é Cache kommt aus dem Französischen: cacher (verstecken). é Er kann durch ein Anwendungsprogramm nicht explizit adressiert werden. é Er ist software-transparent, d.h. der Benutzer braucht nichts
MehrGrundlagen der Informatik III Wintersemester 2010/ Vorlesung Dr.-Ing. Wolfgang Heenes
Grundlagen der Informatik III Wintersemester 2010/2011 15. Vorlesung Dr.-Ing. Wolfgang Heenes int main() { printf("hello, world!"); return 0; } msg: main:.data.asciiz "Hello, world!".text.globl main la
MehrTechnische Informatik 1 - HS 2017
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik 1 - HS 2017 Übung 11 Datum: 21. 22. 12. 2017 Virtueller Speicher 1 Performanz Gehen Sie von einem virtuellen
MehrGrob-Struktur des Prozessor-Speichersystems
2.3.2 Speicherstruktur (1) Grob-Struktur des Prozessor-Speichersystems Chipsatz (Erklärung s. später, Folie 104) 22.4.-27.5.2013, Folie 52 2.3.2 Speicherstruktur (2) Zugriff Prozessor zumeist auf schnelle
MehrBesprechung des 9. Übungsblattes Virtuelle Speicherverwaltung Aufgaben
Themen heute Besprechung des 9. Übungsblattes Virtuelle Speicherverwaltung Aufgaben Besprechung des 9. Übungsblattes Aufgabe 2 Ist in einer Aufgabe wie hier keine explizite Wortbreite angegeben, nicht
MehrTutorium Rechnerorganisation
Woche 10 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
MehrIn heutigen Computern findet man schnellen/teuren als auch langsamen/billigen Speicher
Speicherhierarchie In heutigen Computern findet man schnellen/teuren als auch langsamen/billigen Speicher Register Speicherzellen, direkt mit der Recheneinheit verbunden Cache-Speicher Puffer-Speicher
MehrLösungsvorschlag zur 5. Übung
Prof. Frederik Armknecht Sascha Müller Daniel Mäurer Grundlagen der Informatik 3 Wintersemester 09/10 Lösungsvorschlag zur 5. Übung 1 Präsenzübungen 1.1 Schnelltest a) Welche Aussagen über Caches sind
MehrCache Grundlagen. Schreibender Cache Zugriff. SS 2012 Grundlagen der Rechnerarchitektur Speicher 22
Cache Grundlagen Schreibender Cache Zugriff SS 212 Grundlagen der Rechnerarchitektur Speicher 22 Eine einfache Strategie Schreibt man nur in den Cache, werden Cache und darunter liegender Speicher inkonsistent.
Mehr(Cache-Schreibstrategien)
Übungsblatt 2 Aufgabe 1 (Digitale Datenspeicher) 1. Nennen Sie einen digitalen Datenspeicher, der mechanisch arbeitet. 2. Nennen Sie zwei rotierende magnetische digitale Datenspeicher. 3. Nennen Sie zwei
MehrÜbung zu Einführung in die Informatik # 10
Übung zu Einführung in die Informatik # 10 Tobias Schill tschill@techfak.uni-bielefeld.de 15. Januar 2016 Aktualisiert am 15. Januar 2016 um 9:58 Erstklausur: Mi, 24.02.2016 von 10-12Uhr Aufgabe 1* a),
MehrCache-Speicher. Design Digitaler Systeme. Prof. Dr.-Ing. Rainer Bermbach
Cache-Speicher Design Digitaler Systeme Prof. Dr.-Ing. Rainer Bermbach Übersicht Cache-Speicher Warum Cache-Speicher? Cache-Strukturen Aufbau und Organisation von Caches Cache-Architekturen Cache-Strategien
MehrQuiz. Gegeben sei ein 16KB Cache mit 32 Byte Blockgröße. Wie verteilen sich die Bits einer 32 Bit Adresse auf: Tag Index Byte Offset.
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 32 Bit Adresse 31 3 29... 2 1 SS 212 Grundlagen der Rechnerarchitektur
MehrGrundlagen der Rechnerarchitektur. Speicher
Grundlagen der Rechnerarchitektur Speicher Übersicht Speicherhierarchie Cache Grundlagen Verbessern der Cache Performance Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 2 Speicherhierarchie
MehrGrundlagen der Informatik III Wintersemester 2010/2011
Grundlagen der Informatik III Wintersemester 2010/2011 Wolfgang Heenes, atrik Schmittat 12. Aufgabenblatt 07.02.2011 Hinweis: Der Schnelltest und die Aufgaben sollen in den Übungsgruppen bearbeitet werden.
MehrJust-In-Time-Compiler (2)
Just-In-Time-Compiler (2) Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2011/2012 Just-In-Time-Compiler (2) 1/13 2011-09-12 Just-In-Time-Compiler
MehrÜbung Praktische Informatik II
Übung Praktische Informatik II FSS 2009 Benjamin Guthier Lehrstuhl für Praktische Informatik IV Universität Mannheim guthier@pi4.informatik.uni-mannheim.de 22.05.09 11-1 Heutige große Übung Ankündigung
MehrAufgabe 4 : Virtueller Speicher
Sommer 216 Technische Informatik I Lösungsvorschlag Seite 16 Aufgabe 4 : Virtueller Speicher (maximal 27 Punkte) 4.1: Generelle Funktionsweise (maximal 5 Punkte) (a) (1 Punkt) Nennen Sie zwei Gründe, weshalb
MehrLösungsvorschlag zur 6. Übung
rof. Frederik Armknecht Sascha Müller Daniel Mäurer Grundlagen der Informatik 3 Wintersemester 9/1 Lösungsvorschlag zur 6. Übung 1 räsenzübungen 1.1 Schnelltest a) Caches und virtueller Speicher können
MehrGrundlagen der Rechnerarchitektur. Speicher
Grundlagen der Rechnerarchitektur Speicher Übersicht Speicherhierarchie Cache Grundlagen Verbessern der Cache Performance Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 2 Speicherhierarchie
MehrLehrveranstaltung: PR Rechnerorganisation Blatt 10. Thomas Aichholzer
Aufgabe 10.1 Gegeben sei folgendes Code-Fragment, das zwei geschachtelte Schleifen implementiert: addi $t0, $a0, 100 outer: addi $t1, $a1, 200 inner: lw $t4, 0($t0) lw $t5, 0($t1) add $t2, $t0, $t1 add
Mehr, 2014W Übungsgruppen: Mo., Mi.,
VU Technische Grundlagen der Informatik Übung 7: Speichermanagement 183.579, 2014W Übungsgruppen: Mo., 12.01. Mi., 14.01.2015 Aufgabe 1: Cache-Adressierung Ein Prozessor mit einer Adresslänge von 20 Bit
MehrTechnische Informatik I. Übung 3 Speicherhierarchie. v t d 0 d 1 d 2 d 3 0 1 2 3. Technische Informatik I Übung 3. Technische Informatik I Übung 3
Institut für Kommunikationsnetze und Rechnersysteme Technische Informatik I Paul J. Kühn, Matthias Meyer Übung 3 Speicherhierarchie Inhaltsübersicht Aufgabe 3.1 Daten-Cache Aufgabe 3.2 Virtueller Speicher
MehrJust-In-Time-Compiler (2)
Just-In-Time-Compiler (2) Dr.-Ing. Volkmar Sieh Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2015/2016 V. Sieh Just-In-Time-Compiler
MehrÜbungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 9 und Präsenzaufgaben Übung 10
Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 9 und Präsenzaufgaben Übung 10 Dominik Schoenwetter Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität
MehrGrundlagen der Informatik III Wintersemester 2010/2011
Grundlagen der Informatik III Wintersemester 2010/2011 Wolfgang Heenes, Patrik Schmittat 6. Aufgabenblatt mit Lösungsvorschlag 06.12.2010 Hinweis: Der Schnelltest und die Aufgaben sollen in den Übungsgruppen
MehrSchriftliche Prüfung
OTTO-VON-GUERICKE-UNIVERSITÄT MAGDEBURG FAKULTÄT FÜR INFORMATIK Schriftliche Prüfung im Fach: Rechnersysteme Studiengang: Bachelor (PF CSE / IF; WPF CV / WIF) am: 30. Juli 2008 Bearbeitungszeit: 120 Minuten
MehrCache Blöcke und Offsets
Cache Blöcke und Offsets Ein Cache Eintrag speichert in der Regel gleich mehrere im Speicher aufeinander folgende Bytes. Grund: räumliche Lokalität wird wie folgt besser ausgenutzt: Bei Cache Miss gleich
Mehr6 Exkurs: Assoziativspeicher
6 Exkurs: Assoziativspeicher alternative Möglichkeit der Speicherung von Informationen in einem Computer: Assoziativspeicher (inhaltsadressierbarer Speicher bzw. CAM = Content Addressable Memory) : bei
Mehr6 Exkurs: Assoziativspeicher (2) 6 Exkurs: Assoziativspeicher. 7.1 Speicherhierarchie. 7 Caches
6 Exkurs: Assoziativspeicher alternative Möglichkeit der Speicherung von Informationen in einem Computer: Assoziativspeicher (inhaltsadressierbarer Speicher bzw. CAM = Content Addressable Memory) : bei
MehrTechnische Informatik 1 - Übung & 22. Dezember Philipp Miedl
Technische Informatik 1 - Übung 11 21. & 22. Dezember 2017 Philipp Miedl Philipp Miedl 21.12.2017 22.12.2017 1 Motivation Aufteilen des Hauptspeichers auf mehrere Prozesse Philipp Miedl 21.12.2017 22.12.2017
MehrGrundlagen der Informatik III Wintersemester 2010/2011
Grundlagen der Informatik III Wintersemester 21/211 Wolfgang Heenes, atrik Schmittat 12. Aufgabenblatt mit Lösungsvorschlag 7.2.211 Hinweis: Der Schnelltest und die Aufgaben sollen in den Übungsgruppen
MehrSpeicherhierarchie, Caches, Consistency Models
Speicherhierarchie, Caches, Consistency Models Maximilian Langknecht Lehrstuhl für Rechnerarchitektur Betreuer: Prof. Dr. Ulrich Brüning 1 Inhaltsverzeichnis Speicherhierarchie Warum gibt es Speicherhierarchie?
MehrVirtueller Speicher und Memory Management
Virtueller Speicher und Memory Management Speicher-Paradigmen Programmierer ein großer Adressraum linear adressierbar Betriebssystem eine Menge laufender Tasks / Prozesse read-only Instruktionen read-write
MehrSysteme I: Betriebssysteme Kapitel 8 Speicherverwaltung
Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Version 21.12.2016 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen
MehrTutorium Rechnerorganisation
Woche 11 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
Mehr(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl
Übung zur Vorlesung Grundlagen Betriebssysteme und Systemsoftware (Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl (gbs-ws11@mailschlichter.informatik.tu-muenchen.de) http://www11.in.tum.de/veranstaltungen/grundlagenbetriebssystemeundsystemsoftwarews1112
MehrComputational Engineering I
DEPARTMENT INFORMATIK Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg Martensstraße 3, 91058 Erlangen 12.02.2014 Klausur zu Computational Engineering I............
MehrRO-Tutorien 15 und 16
Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 10 am 29.06.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft
MehrSchriftliche Prüfung. Aufgaben OTTO-VON-GUERICKE-UNIVERSITÄT MAGDEBURG FAKULTÄT FÜR INFORMATIK. Technische Informatik II. am:
OTTO-VON-GUERICKE-UNIVERSITÄT MAGDEBURG FAKULTÄT FÜR INFORMATIK Schriftliche Prüfung im Fach: Studiengang: Technische Informatik II Informatik am: 11. 02. 2005 Bearbeitungszeit: 180 min zugelassene Hilfsmittel:
MehrLösung von Übungsblatt 2
Lösung von Übungsblatt 2 Aufgabe 1 (Digitale Datenspeicher) 1. Nennen Sie einen digitalen Datenspeicher, der mechanisch arbeitet. Lochstreifen, Lochkarte, CD/DVD beim Pressen. 2. Nennen Sie zwei rotierende
MehrPaging. Einfaches Paging. Paging mit virtuellem Speicher
Paging Einfaches Paging Paging mit virtuellem Speicher Einfaches Paging Wie bisher (im Gegensatz zu virtuellem Speicherkonzept): Prozesse sind entweder ganz im Speicher oder komplett ausgelagert. Im Gegensatz
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Speicher Übersicht Speicherhierarchie Cache Grundlagen Verbessern der Cache Performance Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 2 Speicherhierarchie
MehrTeil 2: Speicherstrukturen
Inhalt Teil 2: Speicherstrukturen Hauptspeicher Cache Assoziativspeicher Speicherverwaltungseinheit ( Memory Management Unit ) 1 Virtueller Speicher Trennung von virtuellem Adreßraum (mit virtuellen Adressen)
MehrGrundlagen der Informationsverarbeitung:
Grundlagen der Informationsverarbeitung: Speicherhierarchie Prof. Dr.-Ing. habil. Ulrike Lucke Durchgeführt von Prof. Dr. rer. nat. habil. Mario Schölzel Maximaler Raum für Titelbild (wenn kleiner dann
MehrNaiver Ansatz. Blöcke und Seiten. Betriebssysteme I Sommersemester 2009 Kapitel 6: Speicherverwaltung und Dateisysteme
Betriebssysteme I Sommersemester 2009 Kapitel 6: Speicherverwaltung und Dateisysteme Hans-Georg Eßer Hochschule München Teil 3: Zusammenhängende Speicherzuordnung 06/2009 Hans-Georg Eßer Hochschule München
MehrKlausur Betriebssysteme
Prof. Dr. Michael Jäger FB MNI Klausur Betriebssysteme 5.2.2016 Die Dauer der Klausur beträgt 90 Minuten. Es sind keine Unterlagen und Hilfsmittel erlaubt. Bitte bearbeiten Sie die Aufgaben soweit wie
Mehr, 2015W Übungsgruppen: Mo., Mi.,
VU Technische Grundlagen der Informatik Übung 7: Speichermanagement 183.579, 2015W Übungsgruppen: Mo., 11.01. Mi., 13.01.2016 Aufgabe 1: Cache-Adressierung Ihr Cachingsystem soll 32 GiB an Speicher auf
MehrRechnergrundlagen SS Vorlesung
Rechnergrundlagen SS 2007 13. Vorlesung Inhalt Cache Lesen Schreiben Überschreiben Memory Management Unit (MMU) Translation Lookaside Buffer (TLB) Klausurvorbereitung Inhalte der Klausur Rechnergrundlagen
Mehr1. Welche Speichereinheiten werden belegt, wenn die folgenden Strategien eingesetzt werden?
Sommersemester 009 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Hausübung 05 Abgabe am 0.07.009 (Kästen D) Aufgabe : Speicherzuteilung (6++=8 Punkte) Es sei der
MehrAssembler - Einleitung
Assembler - Einleitung Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler - Einleitung 1/19 2008-04-01 Teil 1: Hochsprache
MehrComputational Engineering I
DEPARTMENT INFORMATIK Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg Martensstraße 3, 91058 Erlangen 25.01.2016 Probeklausur zu Computational Engineering
MehrEinführung in die Systemprogrammierung
Einführung in die Systemprogrammierung Caches in der Praxis Prof. Dr. Christoph Reichenbach Fachbereich 12 / Institut für Informatik 17. Juli 2015 Cache-Architektur Mehrere Cache-Stufen, z.b.: Speicherplatz
MehrLösung von Übungsblatt 2
Lösung von Übungsblatt 2 Aufgabe 1 (Digitale Datenspeicher) 1. Nennen Sie einen digitalen Datenspeicher, der mechanisch arbeitet. Lochstreifen, Lochkarte, CD/DVD beim Pressen. 2. Nennen Sie zwei rotierende
MehrSpeicherverwaltung (Swapping und Paging)
Speicherverwaltung (Swapping und Paging) Rückblick: Segmentierung Feste Einteilung des Speichers in einzelne Segmente 750k 0 Rückblick: Segmentierung Feste Einteilung des Speichers in einzelne Segmente
Mehr, SS2012 Übungsgruppen: Do., Mi.,
VU Technische Grundlagen der Informatik Übung 7: Speicher und Peripherie 183.579, SS2012 Übungsgruppen: Do., 31.05. Mi., 06.06.2012 Aufgabe 1: Ihre Kreativität ist gefragt! Um die Qualität der Lehrveranstaltung
MehrKonzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff
Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff von Athanasia Kaisa Grundzüge eines Zwischenspeichers Verschiedene Arten von Zwischenspeicher Plattenzwischenspeicher in LINUX Dateizugriff
MehrÜbungen zu Grundlagen der Rechnerarchitektur und -organisation (ÜGRa)
Übungen zu Grundlagen der Rechnerarchitektur und -organisation (ÜGRa) Aufgabenblatt 07 Ausgabe: 2016-06-13 Abgabe: 2016-06-27 Aufgabe 1: Die MIPS-Architektur ist eine typische Register-Register-Architektur
MehrWie groß ist die Page Table?
Wie groß ist die Page Table? Im vorigen (typischen) Beispiel verwenden wir 20 Bits zum indizieren der Page Table. Typischerweise spendiert man 32 Bits pro Tabellen Zeile (im Vorigen Beispiel brauchten
MehrSpeicherorganisation
Speicherorganisation John von Neumann 1946 Ideal wäre ein unendlich großer, undendlich schneller und undendlich billiger Speicher, so dass jedes Wort unmittelbar, d.h. ohne Zeitverlust, zur Verfügung steht
MehrLinux Paging, Caching und Swapping
Linux Paging, Caching und Swapping Inhalte Paging Das Virtuelle Speichermodell Die Page Table im Detail Page Allocation und Page Deallocation Memory Mapping & Demand Paging Caching Die verschiedenen Caches
MehrAlgorithm Engineering. Alexander Kröller, Abteilung Algorithmik, IBR
#7 Terminchaos Nächste Vorlesungen: 27. 5. Vertretung durch Prof. Fekete 3. 6. Exkursionswoche 10. 6. Vertretung durch N.N. 17. 6. back to normal... Experiment Durchlaufe zwei gleichgrosse Arrays: Sortierte
MehrRO-Tutorien 15 und 16
Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 11 am 06.07.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft
MehrPrüfungsklausur SS 14
Prüfungsklausur 31231 SS 14 Prof. Dr. J. Keller 23.08.2014 1 FernUniversität Hagen Prüfungsklausur 31231 23.08.2014 Seite 2 Inhaltsverzeichnis 1 Codierungsverfahren 3 2 Speichermedien und Peripheriegeräte
MehrAufgabe 2 - Erweiterung um PIC und Interrupts
Aufgabe 2 - Erweiterung um PIC und Interrupts Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS2010/2011 Aufgabe 2 - Erweiterung um
MehrFreispeicherverwaltung
Freispeicherverwaltung Allgemeine Techniken und Anwendung unter Linux Martin Wahl, 17.11.03 Freispeicherverwaltung 1 Überblick Allgemeines Suchstrategien Verwaltungsstrategien externer / interner Verschnitt
MehrBetriebssysteme Teil 10 B: Fragen rund um Seitenfehler
Betriebssysteme Teil 10 B: Fragen rund um Seitenfehler 1 Überlegungen Wenn wir einige Seiten eines Programms in den Speicher laden, brauchen wir eine Strategie, welche Seiten als nächstes geladen werden
MehrSpeicherarchitektur (16)
Zuweisungsstrategien für Cacheblocks: direct-mapped Speicherarchitektur (16) voll-assoziativ mengen-assoziativ Beispiel: Vorlesung Rechnersysteme SS `09 E. Nett 15 Speicherarchitektur (16) Konfigurationsmöglichkeiten
Mehr183.579, WS2012 Übungsgruppen: Mo., 07.01. Do., 10.01.2013
VU Technische Grundlagen der Informatik Übung 7: Speicher, Peripherie 183.579, WS2012 Übungsgruppen: Mo., 07.01. Do., 10.01.2013 Aufgabe 1: Ihre Kreativität ist gefragt! Um die Qualität der Lehrveranstaltung
MehrAufbau und Funktionsweise eines Computers
Aufbau und Funktionsweise eines Computers Thomas Röfer Hardware und Software von Neumann Architektur Schichtenmodell der Software Zahlsysteme Repräsentation von Daten im Computer Praktische Informatik
Mehr1. räumliche Lokalität - Nach dem Zugriff auf eine bestimmte Adresse erfolgt in naher Zukunft ein erneuter Zugriff auf ein dazu benachbartes Datum.
Aufgabe 1 a) Warum besitzen nahezu alle modernen Prozessoren einen Cache? Zur Überbrückung der Prozessor-Speicher-Lücke. Geschwindigkeit des Arbeitsspeichers ist nicht in gleichem Maße gestiegen wie die
MehrSysteme I: Betriebssysteme Kapitel 8 Speicherverwaltung
Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Version 11.01.2017 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, historische Entwicklung, unterschiedliche Arten von Betriebssystemen
MehrTechnische Realisierung (1)
Technische Realisierung () Einfachstes Modell: Prozess (Daten+Code) befindet sich im Hintergrundspeicher Bei teilweise eingelagerten Prozessen: Zusätzlich Teile im Hauptspeicher Logische Adressen überdecken
MehrBetriebssysteme (BTS)
.Vorlesung Betriebssysteme (BTS) Christian Baun cray@unix-ag.uni-kl.de Hochschule Mannheim Fakultät für Informatik Institut für Betriebssysteme..007 Organisatorisches zur Übung Verteilung auf die beiden
MehrBetriebssysteme BS-S SS Hans-Georg Eßer. Foliensatz S: Speicherverwaltung. Dipl.-Math., Dipl.-Inform. v1.0, 2015/04/14
BS-S Betriebssysteme SS 2015 Hans-Georg Eßer Dipl.-Math., Dipl.-Inform. Foliensatz S: Speicherverwaltung v1.0, 2015/04/14 Betriebssysteme, SS 2015 Hans-Georg Eßer Folie S-1 Übersicht: BS Praxis und BS
MehrBusse. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009
Busse Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009 Busse 1/40 2008-10-13 Übersicht 1 Einleitung 2 Bus-Konfiguration
MehrSchriftliche Prüfung
OTTO VON GUERICKE UNIVERSITÄT MAGOEBURG FAKULTÄT FÜR INFORMATIK Schriftliche Prüfung im Fach: Technische Informatik I Studiengang: B (PF IF/IngIF;WPF CV/WIF), M (WPF DigiEng) am: Bearbeitungszeit: 24.
MehrTutorium Rechnerorganisation
Woche 11 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
MehrVorlesung: Rechnerstrukturen, Teil 2 (Modul IP7)
Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) J. Zhang zhang@informatik.uni-hamburg.de Universität Hamburg AB Technische Aspekte Multimodaler Systeme
MehrBusse. Dr.-Ing. Volkmar Sieh WS 2005/2006. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg
Einleitung Bus-Konfiguration Bus-Arbitrierung Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2005/2006 Einleitung Bus-Konfiguration Bus-Arbitrierung
MehrFreispeicherverwaltung Martin Wahl,
Freispeicherverwaltung Martin Wahl, 17.11.03 Allgemeines zur Speicherverwaltung Der physikalische Speicher wird in zwei Teile unterteilt: -Teil für den Kernel -Dynamischer Speicher Die Verwaltung des dynamischen
MehrDas Konzept der Speicherhierarchie
Das Konzept der Speicherhierarchie Small is fast, daher sind kleine Speicher schneller (und kosten mehr pro Byte). Vergrößerung von Speichern und schnellerer Zugriff sind aber Schlüsselfunktionen in der
MehrRechnerorganisation. Überblick über den Teil 13
Rechnerorganisation Teil 3 9. Juni 2 KC Posch Überblick über den Teil 3 Arbiter: Wie können sich 2 aktive Partner vertragen? Direkter Speicherzugriff: Ein Ko Prozessor zum Daten Schaufeln Die Verbesserung
MehrRechnerorganisation. 1. Juni 201 KC Posch
.6.2 Rechnerorganisation. Juni 2 KC Posch .6.2 2 .6.2 Front Side Bus Accelerated Graphics Port 28 MHz Front Side Bus North Bridge RAM idge South Bri IDE USB PCI Bus 3 .6.2 Front Side Bus Front Side Bus
MehrPhysische Datenorganisation
Physische Datenorganisation Speicherhierarchie Hintergrundspeicher / RAID ( B-Bäume Hashing R-Bäume ) Kapitel 7 1 Überblick: Speicherhierarchie Register Cache Hauptspeicher Plattenspeicher Archivspeicher
MehrRechnerstrukturen. 5. Speicher. Inhalt. Vorlesung Rechnerstrukturen Wintersemester 2002/03. (c) Peter Sturm, Universität Trier 1.
Rechnerstrukturen 5. Speicher 5.1 Motivation Speichertypen RAM / ROM Dynamisches RAM Inhalt Cache-Speicher Voll Assoziativ n-wege Assoziativ Direct Mapping 5.2 (c) Peter Sturm, Universität Trier 1 Der
MehrG. Caches. G.1.1 Kontext & Orientierung
G.1.1 Kontext & Orientierung G. Caches Caches sind kleine, aber schnelle Zwischen- bzw. Pufferspeicher. Assoziative Adressierung anstelle von direkter Adressierung. Für Code, Daten & virtuelle Adressen.
MehrÜbungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 8 und Präsenzaufgaben Übung 9
Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 8 und Präsenzaufgaben Übung 9 Dominik Schoenwetter Erlangen, 30. Juni 2014 Lehrstuhl für Informatik 3 (Rechnerarchitektur)
MehrSpeicherarchitektur (1)
Speicherarchitektur () Die 3 wichtigsten Speichertechnologien: Technologie Typische Zugriffszeiten $ pro Megabyte 997 SRAM 5 25 ns $00 $250 DRAM 60 20 ns $5 $0 Magnetplatten 0 20 Millionen ns $0,0 $0,20
MehrSchreiben von Pages. Schreiben einer Page in den Swap Space ist sehr teuer (kostet millionen von CPU Zyklen).
Schreiben von Pages Schreiben einer Page in den Swap Space ist sehr teuer (kostet millionen von CPU Zyklen). Write Through Strategie (siehe Abschnitt über Caching) ist hier somit nicht sinnvoll. Eine sinnvolle
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
Mehr