WCET-Analyse in Mehrkern- Systemen
|
|
- Paula Pfaff
- vor 5 Jahren
- Abrufe
Transkript
1 WCET-nalyse in Mehrkern- Systemen Sebastian Rietsch Folie 1
2 Inhalt 1. Motivation. Messbasierter nsatz 3. Statische WCET-nalyse 1. Pfadbasierte Bestimmung, Timing Schema, IPET. Hardware-nalyse 4. WCET(m) Schätzung mittels SCE Technologie 5. Schluss Folie
3 Inhalt 1. Motivation. Messbasierter nsatz 3. Statische WCET-nalyse 1. Pfadbasierte Bestimmung, Timing Schema, IPET. Hardware-nalyse 4. WCET(m) Schätzung mittels SCE Technologie 5. Schluss Folie 3
4 Motivation ufgaben von Echtzeitsystemen müssen Deadlines einhalten, deshalb müssen deren usführungszeit bekannt sein. Worst Case Execution Time (WCET) bhängig von der Zielhardware Schranke, Schätzwert nforderungen an den ermittelten Wert: Darf niemals kleiner als die wahre WCET sein Soll möglichst genau sein Folie 4
5 Veranschaulichung Quelle: R. Wilhelm, The Worst-Case Execution Time Problem Overview of Methods and Survey of Tools Folie 5
6 Inhalt 1. Motivation. Messbasierter nsatz 3. Statische WCET-nalyse 1. Pfadbasierte Bestimmung, Timing Schema, IPET. Hardware-nalyse 4. WCET(m) Schätzung mittels SCE Technologie 5. Schluss Folie 6
7 Messbasierter nsatz Dynamische nalyse Repräsentative Menge an Eingaben Messung der usführungszeiten auf Hardware oder Simulator Hinreichend große nzahl an Messungen WOET (Worst Observed Execution Time) Unsicher: u.u. nicht alle möglichen Kontrollflüsse gemessen Startzustand des Prozessors beeinflusst usführungszeit nomalien Folie 7
8 Inhalt 1. Motivation. Messbasierter nsatz 3. Statische WCET-nalyse 1. Pfadbasierte Bestimmung, Timing Schema, IPET. Hardware-nalyse 4. WCET(m) Schätzung mittels SCE Technologie 5. Schluss Folie 8
9 Statische WCET-nalyse 1. Kontrollfluss-nalyse Überführung des Programmcodes in geeignete Repräsentation Ermittlung möglicher barbeitungspfade (implizit oder explizit) und Flussfakten. Hardware-nalyse Einfluss der Hardwarezustände auf die usführungszeit Modellbildung 3. bschätzung der WCET Ermittlung der WCET aus Informationen über Kontrollfluss und Hardware Folie 9
10 Control Flow Graph (CFG) int foo(int x){ int i = 0, ret = 0; while(i<10){ if(x<100){ } ret += 1337; } else{ ret = 100; } if(ret > 500){ } else{ } i++; } return ret; ret -= 100; ret += 100 // //B //C //D //E //F //G //H start B 5 C D 1 E 3 F G 5 5 H end Folie 10
11 Pfadbasierte Bestimmung Idee: Suche längsten Pfad durch den CFG Falls dieser Pfad realisierbar ist (Verzweigungen schliessen sich nicht gegenseitig aus), wurde Pfad mit WCET gefunden nsonsten: nimm zweitlängsten Pfad usw. Vorteile: Eignet sich für einfache Programme ohne Schleifenverschachtelung und geringer Rekursionstiefe Hardware-nalyse ist gut integrierbar Nachteile: Exponentielle Komplexität Folie 11
12 Timing Schema Idee: ufbau eines Syntaxbaums des Programms Besteht aus Sequentiellen Blöcken (seq) Verzweigungen (if) Schleifen (loop) T() sei die WCET eines Blocks Bottom-Up Traversierung des Baumes und zusammenfassen der Strukturen nach festen Regel T(seq(, B)) = T() + T(B) T(if() then (B) else (C)) = T() + max(t(b), T(C)) T(while(, B, maxiter)) = T() + (T() + T(B)) * maxiter Folie 1
13 Timing Schema int foo(int x){ int i = 0, ret = 0; while(i<10){ if(x<100){ } ret += 1337; } else{ ret = 100; } if(ret > 500){ } else{ } i++; } return ret; ret -= 100; ret += 100 // //B //C //D //E //F //G //H while maxiter = 10 seq if seq B C D if H E F G Folie 13
14 Timing Schema start while maxiter = 10 B seq 5 C D 1 E if seq 3 F G 5 5 H B C D if H end E F G Folie 14
15 Timing Schema start start while maxiter = 10 B B seq 5 C D 1 5 C D 1 E if seq 3 F G 5 5 H E,F,G 5 H 7 B C D if H end end E F G Folie 15
16 Timing Schema start while maxiter = 10 B seq 5 C D 1 if seq E,F,G 7 5 H B C D E,F,G H end Folie 16
17 Timing Schema start start while maxiter = 10 B seq 5 C D 1 B,C,D 7 if seq E,F,G 7 5 H 5 E,F,G H 7 B C D E,F,G H end end Folie 17
18 Timing Schema start while maxiter = 10 seq B,C,D 7 B,C,D seq E,F,G 7 5 H E,F,G H end Folie 18
19 Timing Schema start start while maxiter = 10 seq B,C,D 7 B,C,D 7 B,C,D seq E,F,G 7 5 H 1 E,F,G,H E,F,G H end end Folie 19
20 Timing Schema start while maxiter = 10 seq B,C,D 7 B,C,D E,F,G,H 1 E,F,G,H end Folie 0
21 Timing Schema start start while maxiter = 10 seq B,C,D 7 19 B,C,D,E, F,G,H B,C,D E,F,G,H 1 E,F,G,H end end Folie 1
22 Timing Schema start while maxiter = 10 B,C,D,E, F,G,H 19 B,C,D,E, F,G,H end Folie
23 Timing Schema start start while maxiter = B,C,D,E, F,G,H +(+19)*10 B,C,D,E, F,G,H 1 B,C,D,E, F,G,H end end Folie 3
24 Timing Schema Vorteile: Einfach, geringer ufwand Skaliert gut mit Größe des Programms Nachteil: Korrelation zwischen nicht-lokalen Codeteilen wird nicht berücksichtigt (z.b. sich ausschließende Verzweigungen) Nichtrealisierbare Pfade (infeasible paths) fließen in die Berechnung mit ein Überapproximation Schwierige Integration der Hardware-nalyse Folie 4
25 Implicit Path Enumeration Technique (IPET) Idee: Jeder Knoten i des CFG erhält neben seiner WCET t i einen Zähler x i, der angibt wie oft dieser Block ausgeführt wird Kante von Knoten i nach j erhält Zähler x ij ufstellung von Nebenbedinungen aus dem Code oder manuellen nnoationen (Strukturelle Bedingungen, maximale Schleifeniteration, ) Folgendes Optimierungsproblem ist zu maximieren: i t i x i Folie 5
26 Implicit Path Enumeration Technique (IPET) start B 5 C D 1 E 3 F G 5 5 H end Folie 6
27 Implicit Path Enumeration Technique (IPET) x start start x x B B x C x D 5 C D 1 x E E x F x G 3 F G 5 5 H x H x end end Folie 7
28 Implicit Path Enumeration Technique (IPET) x start x start x start x B x B x BC x C B x BD x D 5 C D 1 x end x CE x E E x DE x H x EF x EG 3 F x F x G G 5 x FH 5 H x H x GH x end end Folie 8
29 Implicit Path Enumeration Technique (IPET) x start x start x start x B x start = 1, x end = 1 x B x BC x C B x BD x D 5 C D 1 x end x CE x E E x DE x H x EF x EG 3 F x F x G G 5 x FH 5 H x H x GH x end end Folie 9
30 Implicit Path Enumeration Technique (IPET) x start start x start = 1, x end = 1 x end x x B x BC x C B x start x D 5 C D 1 x CE x E x B E x BD x DE x EF x EG 3 F x F x G G 5 x H Strukturelle Bedingungen: x start = x start x end = x end x = x start +x H = x end + x B x B = x B = x BC + x BD x C = x BC = x CE x D = x BD = x DE x E = x CE +x DE = x EF +x EG x F = x EF = x FH x G = x EG = x GH x H = x FH + x GH = x H x FH 5 H x H x GH x end end Folie 30
31 Implicit Path Enumeration Technique (IPET) x start start x start = 1, x end = 1 x end x x B x BC x C B 5 C D 1 x CE x E E x EF x EG 3 F x F x G G 5 5 H x H x start x B x BD x D x DE x FH x GH x H Strukturelle Bedingungen: x start = x start x end = x end x = x start +x H = x end + x B x B = x B = x BC + x BD x C = x BC = x CE x D = x BD = x DE x E = x CE +x DE = x EF +x EG x F = x EF = x FH x G = x EG = x GH x H = x FH + x GH = x H x = 11 x end end Folie 31
32 Implicit Path Enumeration Technique (IPET) x start start x start = 1, x end = 1 x end x x B x BC x C B 5 C D 1 x CE x E E x EF x EG 3 F x F x G G 5 5 H x H x start x B x BD x D x DE x FH x GH x H Strukturelle Bedingungen: x start = x start x end = x end x = x start +x H = x end + x B x B = x B = x BC + x BD x C = x BC = x CE x D = x BD = x DE x E = x CE +x DE = x EF +x EG x F = x EF = x FH x G = x EG = x GH x H = x FH + x GH = x H x = 11 WCET = max(x + x B + 5x C + x D + 3x F + 5x G + 5x H ) x end end Folie 3
33 Implicit Path Enumeration Technique (IPET) Vorteile: Komplexe Flussrestriktionen möglich z.b. x i + x j 1 (infeasible path) Hardware-nalyse ist integrierbar Verfahren zur Lösung des Optimierungsproblems (ILP, CP) existieren Nachteile: Lösung ist in der Regel NP-hart usführungsreihenfolge kann nicht durch Flussrestriktionen beschrieben werden Folie 33
34 Inhalt 1. Motivation. Messbasierter nsatz 3. Statische WCET-nalyse 1. Pfadbasierte Bestimmung, Timing Schema, IPET. Hardware-nalyse 4. WCET(m) Schätzung mittels SCE Technologie 5. Schluss Folie 34
35 Hardware-nalyse Bisher: Blöcke eines Programms sind unabhängig voneinander, bei modernen Prozessoren ist dies jedoch nicht der Fall Summe lokaler WCETs globale WCET Über-/Unterapproximation Features: Cache, Pipeline Sprungvorhersage Out-of-Order-Execution Superskalarität Spekulation Modellbildung Folie 35
36 Multicore-Systeme Bieten bessere Performanz werden immer beliebter Probleme Intercore-Interferenzen geteilter Ressourcen nomalien Gegenseitige Cache-Verdrängung DRM- und Bus-uslastung Kommunikation und Synchronisation Globales Scheduling Folie 36
37 Multicore-Systeme Folgen Starke bstraktion notwendig um Sicherheit der Schätzung zu gewährleisten npassung des Systems um Vorhersagbarkeit zu verbessern Performanz verschlechtert sich ufgaben können nicht mehr unabhängig voneinander analysiert werden Singlecore Verfahren u.u. nicht mehr anwendbar Modellierung wird komplexer Folie 37
38 Inhalt 1. Motivation. Messbasierter nsatz 3. Statische WCET-nalyse 1. Pfadbasierte Bestimmung, Timing Schema, IPET. Hardware-nalyse 4. WCET(m) Schätzung mittels SCE Technologie 5. Schluss Folie 38
39 Was ist SCE? Single Core Equivalence Technologie Exportierung virtueller Singlecore-Maschinen aus einem Multicore-System Verteilung geteilter Ressourcen (Cache, DRM) unter Kernen Kerne können getrennt voneinander analysiert werden WCET(m), WCET ist von der nzahl aktiver Kerne abhängig Folie 39
40 SCE Mechanismen Colored page lockdown Festhalten oft benutzter Seiten im Cache (lockdown) Neupositionierung der Seiten im Hauptspeicher (page coloring) PLLOC Kerne bekommen private DRM-Bänke MemGuard Gleimässige ufteilung der DRM-Bandbreite Beschräkung der Menge an Speicheranfragen, die eine Kern in einem festgelegten Zeitintervall stellen darf Folie 40
41 Multicore-System Core 1 Core Core m Geteilter Cache Speicher Controller DRM I/O Peripherie Folie 41
42 Multicore-System Core 1 Core Core m Zugewiesener Cache Zugewiesener Cache Zugewiesener Cache SC/1 SC/m I/O Peripherie DRM/1 DRM/m Folie 4
43 Multicore-System Core 1 Core Core m Zugewiesener Cache Zugewiesener Cache Zugewiesener Cache SC/1 SC/m I/O Peripherie Colored Lockdown MemGuard DRM/1 DRM/m PLLOC Folie 43
44 Progressive Lockdown Curve Quelle: Folie 44
45 Rechenverzögerung durch Speicherzugriffe Voraussetzungen der bschätzung DRM Controller und Bus rbiter arbeiten nach Rundlauf Verfahren garantiert, dass pro Periode jeder Kern gleichviele Speicheranfragen stellen darf Minimale und maximale Dauer einer Speicheranfrage wurde ermittelt Rechnung der Kerne kann verzögert werden durch Wettkampf um Bandbreite Regulation durch MemGuard Folie 45
46 Rechenverzögerung durch Speicherzugriffe Maximale Verzögerung durch Wettkampf lle Kerne stellen gleichzeitig K q Speicheranfragen Jede nfrage dauert L max Kern ist eine Dauer von (m 1)K q L max blockiert Maximale Verzögerung durch Regulation Nur ein Kern stellt K q nfragen Jede nfrage dauert L min Kern ist eine Dauer von P K q L min blockiert Herleitung eines Verzögerungsterms in bhängigkeit der Cache- Fehler einer ufgabe L min : minimale Dauer einer Speicheranfrage L max : maximaledauer einer Speicheranfrage P: Dauer der Regulationsperiode K q : maximale Speicheranfrage pro Regulationsperiode Folie 46
47 Vorgehen bei der Implementierung des Systems 1. Bestimmung der progressive lockdown curve aller ufgaben in Isolation. DRM ufteilung durch PLLOC und MemGuard 3. Verteilung der ufgaben auf die Kerne 4. Festlegung der Menge an fest im Cache gehaltenen Seiten jeder ufgabe 5. Planbarkeitsanalyse 6. Falls Planbarkeitsanalyse fehlschlägt: Wiederhole 3. und/oder 4. Folie 47
48 Planbarkeitsanalyse Voraussetzung Rate Monotonic Scheduling ntwortzeit einer ufgabe setzt sich zusammen aus: WCET in Isolation WCETs höherpriorer ufgaben in Isolation Rechenverzögerung durch Speicheranfragen Ergebnis: Iterative Formel, mit der WCET(m) einer ufgabe berechnet werden kann Direkte Planbarkeitsanalyse Folie 48
49 Inhalt 1. Motivation. Messbasierter nsatz 3. Statische WCET-nalyse 1. Pfadbasierte Bestimmung, Timing Schema, IPET. Hardware-nalyse 4. WCET(m) Schätzung mittels SCE Technologie 5. Schluss Folie 49
50 Schluss Relative junger Forschungszweig, angetrieben durch Prozessorrevolution Unerlässlich um Zuverlässigkeit von (harten) Echtzeitsystemen zu verfizieren Trade-off zwischen Komplexität der nalyse und Genauigkeit In der Regel: Benutzung von Tools zur Bestimmung der WCET (RapiTime, Bound-T, ait, ) bei Singlecore-Systemen Folie 50
Echtzeitsysteme. Zeitliche Analyse von Echtzeitanwendungen. Peter Ulbrich. 28. Oktober Lehrstuhl Informatik 4
Echtzeitsysteme Zeitliche Analyse von Echtzeitanwendungen Peter Ulbrich Lehrstuhl Informatik 4 28. Oktober 2014 c fs, pu (Lehrstuhl Informatik 4) Echtzeitsysteme WS 14/15 1 / 31 Gliederung 1 Übersicht
MehrEchtzeitsysteme. Zeitliche Analyse von Echtzeitanwendungen. Peter Ulbrich
Echtzeitsysteme Zeitliche Analyse von Echtzeitanwendungen Peter Ulbrich Lehrstuhl für Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg https://www4.cs.fau.de 13.
MehrVorlesung Echtzeitsysteme II
1 / 51 Vorlesung Echtzeitsysteme II Thema 6: Worst-Case Execution Timing (WCET) Robert Baumgartl 24. November 2015 2 / 51 Literatur keine dedizierten Lehrbücher, da junges Gebiet Überblick über Forschungsstand:
Mehr54. Analysewerkzeuge für Worst-Case Execution Time (Attributanalyse) 54.1 AiT - Worst-Case Execution Time Analyzer. Obligatorische Literatur
54. Analysewerkzeuge für Worst-Case Execution Time (Attributanalyse) 2 Obligatorische Literatur Reinhold Heckmann, Christian Ferdinand. Worst-Case Execution Time Prediction by Static Program Analysis.
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
MehrVerlässliche Echtzeitsysteme
Verlässliche Echtzeitsysteme Verifikation nicht-funktionaler Eigenschaften Peter Ulbrich Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme)
MehrImmediate Priority Ceiling
Vereinfachtes Protokoll: Immediate priority ceiling: Prozesse, die ein Betriebsmittel s belegen, bekommen sofort die Priorität ceil(s) zugewiesen. Anwendungsgebiet: Immediate Priority Ceiling Verwendung
MehrVerlässliche Echtzeitsysteme
Verlässliche Echtzeitsysteme Verifikation nicht-funktionaler Eigenschaften Peter Ulbrich Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme)
MehrLiteratur. Vorlesung Echtzeitsysteme II. Veranschaulichung 1. Motivation. Statische vs. dynamische Analyse. WCET-Ermittlung
Literatur Vorlesung Echtzeitsysteme II hema 6: Worst-Case Execution iming (WCE) Robert Baumgartl 24. November 25 keine dedizierten Lehrbücher, da junges ebiet Überblick über orschungsstand: Reinhard Wilhelm
MehrEin Benchmarkgenerator zur Bewertung von WCET-Analysatoren
Ein Benchmarkgenerator zur Bewertung von WCET-Analysatoren 16. November 2017 Christian Eichler eichler@cs.fau.de Lehrstuhl für Verteilte Systeme und Betriebssysteme Motivation Motivation: WCET-Analysatoren
MehrSichere Zukunftsvorhersagen durch Modellierung und Approximation
Sichere Zukunftsvorhersagen durch Modellierung und Approximation Jan Reineke @ saarland university computer science Forschungstage Informatik 24. Juni 2016 Der Kontext: Harte Echtzeitsysteme Sicherheitskritische
MehrVerlässliche Echtzeitsysteme
Verlässliche Echtzeitsysteme Verifikation nicht-funktionaler Eigenschaften Peter Ulbrich Lehrstuhl für Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg https://www4.cs.fau.de
MehrComputergrundlagen Moderne Rechnerarchitekturen
Computergrundlagen Moderne Rechnerarchitekturen Axel Arnold Institut für Computerphysik Universität Stuttgart Wintersemester 2010/11 Aufbau eines modernen Computers DDR3- Speicher Prozessor Prozessor PEG
MehrVerlässliche Echtzeitsysteme
Verlässliche Echtzeitsysteme Verifikation nicht-funktionaler Eigenschaften Peter Ulbrich Lehrstuhl für Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg https://www4.cs.fau.de
MehrEchtzeitsysteme. Übungen zur Vorlesung. Analyse von Ausführungszeiten
Echtzeitsysteme Übungen zur Vorlesung Analyse von Ausführungszeiten Florian Schmaus Peter Wägemann Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU) Lehrstuhl für Informatik 4 (Verteilte Systeme
MehrDer Dreyfus-Wagner Algorithmus für das Steiner Baum Problem
Der Dreyfus-Wagner Algorithmus für das Steiner Baum Problem Andreas Moser Dietmar Ebner Christian Schauer Markus Bauer 9. Dezember 2003 1 Einführung Der in der Vorlesung gezeigte Algorithmus für das Steiner
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Wintersemester 2012/13 25. Vorlesung Dynamisches Programmieren Prof. Dr. Alexander Wolff Lehrstuhl für Informatik I Klausurvorbereitung Tipp: Schreiben Sie sich alle Fragen
MehrInformatik II, SS 2014
Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 20 (23.7.2014) All Pairs Shortest Paths, String Matching (Textsuche) Algorithmen und Komplexität Vorlesungsevaluation Sie sollten alle eine
MehrSoftware Echtzeitverhalten in den Griff Bekommen
Software Echtzeitverhalten in den Griff Bekommen B.Sc.Markus Barenhoff [www.embedded-tools.de] Dr. Nicholas Merriam [www.rapitasystems.com] Übersicht Reaktionszeit Nettolaufzeit Optimierung Worst-Case
MehrWiederholung. Divide & Conquer Strategie
Wiederholung Divide & Conquer Strategie Binäre Suche O(log n) Rekursives Suchen im linken oder rechten Teilintervall Insertion-Sort O(n 2 ) Rekursives Sortieren von a[1..n-1], a[n] Einfügen von a[n] in
MehrComputergrundlagen Moderne Rechnerarchitekturen
Aufbau eines modernen Computers Computergrundlagen Moderne Rechnerarchitekturen Axel Arnold Institut für Computerphysik Universität Stuttgart DDR3- Speicher Prozessor Prozessor PEG Graphikkarte(n) weitere
MehrDevice Treiber für FlexPath- Netzwerkprozessoren
Device Treiber für FlexPath- Netzwerkprozessoren Michael Meitinger Rainer Ohlendorf Dr. Thomas Wild Prof. Dr. Andreas Herkersdorf 1 Übersicht Übersicht FlexPath Einsatz von Device Treibern in der FlexPath
MehrAusgewählte Kapitel eingebetteter Systeme
Ausgewählte Kapitel eingebetteter Systeme Echtzeitfähige Ereignisgetriebene Scheduling-Strategien Friedrich-Alexander-Universität Erlangen-Nürnberg 08.06.2005 Übersicht Problemdefinition Scheduling-Strategien
MehrWeitere Verbesserungen
Weitere Verbesserungen Welcher Cache liefert aktuellen Block falls mehrere Caches Block im Zustand S halten? Lösung: Einführung eines weiteren Zustands O (Owner) Zustand O besagt: Eigentümer des Blocks
MehrNP-vollständige Probleme
Effiziente Algorithmen Lösen NP-vollständiger Probleme 256 NP-vollständige Probleme Keine polynomiellen Algorithmen, falls P NP. Viele wichtige Probleme sind NP-vollständig. Irgendwie müssen sie gelöst
MehrKapitel 1 Parallele Modelle Wie rechnet man parallel?
PRAM- PRAM- DAG- R UND R Coles und Kapitel 1 Wie rechnet man parallel? Vorlesung Theorie Paralleler und Verteilter Systeme vom 11. April 2008 der Das DAG- Das PRAM- Das werkmodell Institut für Theoretische
MehrLösungen von Übungsblatt 12
Lösungen von Übungsblatt 12 Algorithmen (WS 2018, Ulrike von Luxburg) Lösungen zu Aufgabe 1 Eine (kanonische) Möglichkeit, die Branch-Schritte auszuführen ergibt sich wie folgt: Das ursprüngliche Problem
MehrLiefert das Protokoll Kohärenz?
Liefert das Protokoll Kohärenz? Konstruktion einer (totalen) Ordnung der Speicheroperationen unter Beachtung der Programmordnungen Voraussetzung: atomare Bus-Transaktionen und Speicheroperationen alle
MehrEinführung. Anwendung. logischer Adreßraum. Kontrollfluß (Thread) = CPU führt Instruktionen aus. Was charakterisiert einen Kontrollfluß?
Kontrollflüsse Einführung 1 Motivation Kontrollfluß Anwendung logischer Adreßraum Kontrollfluß (Thread) = führt Instruktionen aus Was charakterisiert einen Kontrollfluß? Programmzähler Registerinhalte
MehrRestbussimulation von Time-Triggered Ethernet
Restbussimulation von Time-Triggered Ethernet Anwendungen 2 : florian.bartols@informatik.haw-hamburg.de 04. Mai 2011 2 / 30 Steigender Bedarf im Automobil Elektronischen Komponenten Bandbreite im Bordnetzwerk
MehrAusgewählte Kapitel eingebetteter Systeme
Ausgewählte Kapitel eingebetteter Systeme Verfahren zur Bestimmung der WCET Andreas Kaiser Friedrich-Alexander University Erlangen-Nuremberg Übersicht Wieso WCET Berechnung? Methoden zur Bestimmung der
MehrWCET-Analyseverfahren in der automobilen Softwareentwicklung
WCET-Analyseverfahren in der automobilen Softwareentwicklung Martin Däumler 1 Robert Baumgartl 2 Matthias Werner 1 1 Technische Universität Chemnitz 2 HTW Dresden 28. November 2008 M. Däumler et al (TUC,
MehrAlgorithmen und Datenstrukturen
Technische Universität München SoSe 2017 Fakultät für Informatik, I-16 Lösungsblatt 4 Dr. Stefanie Demirci 31. Mai 2017 Rüdiger Göbl, Mai Bui Algorithmen und Datenstrukturen Aufgabe 1 Komplexität Berechnung
MehrGroße Lösungsräume. Leon Schmidtchen Hallo Welt Seminar - LS Leon Schmidtchen Große Lösungsräume Hallo Welt Seminar - LS2
Große Lösungsräume Leon Schmidtchen 1.06.201 Hallo Welt Seminar - LS 2!1 Gliederung Motivation Brute Force Backtracking Pruning Leon Schmidtchen Branch & Bound 1.06.201 Hallo Welt Seminar - LS 2 Wann soll
MehrAlgorithmische Methoden zur Netzwerkanalyse
Algorithmische Methoden zur Netzwerkanalyse Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Die Forschungsuniversität Meyerhenke, in der Institut für Theoretische Informatik
MehrElementare Konzepte von
Elementare Konzepte von Programmiersprachen Teil 2: Anweisungen (Statements) Kapitel 6.3 bis 6.7 in Küchlin/Weber: Einführung in die Informatik Anweisungen (statements) in Java Berechnung (expression statement)
MehrMulticore in Echtzeitsystemen (1)
Multicore in Echtzeitsystemen (1) Liyuan Zhang Hauptseminar AKSS im SS 2009 Ausgewählte Kapitel der Systemsoftware: Multicore- und Manycore-Systeme Überblick Einleitung Uniprozessor in Echtzeitsystemen
MehrFolien aus der Vorlesung Optimierung I SS2013
Folien aus der Vorlesung Optimierung I SS2013 Dr. Jens Maßberg Institut für Optimierung und Operations Research, Universität Ulm July 10, 2013 Datenstrukturen für Graphen und Digraphen Graph Scanning Algorithmus
MehrVorlesung 2 KÜRZESTE WEGE
Vorlesung 2 KÜRZESTE WEGE 34 Kürzeste Wege im Graphen Motivation! Heute:! Kürzeste Wege von einem Knoten (SSSP)! Kürzeste Wege zwischen allen Knotenpaaren (APSP)! Viele Anwendungen:! Navigationssysteme!
MehrTop-down Bottom-up Divide & Conquer Dynamisches Programmieren Caching (Memoization) Branch-and-Bound Greedy
2.2 Entwurfsparadigmen Top-down Bottom-up Divide & Conquer Dynamisches Programmieren Caching (Memoization) Branch-and-Bound Greedy 1 Top-Down Zerlege das gegebene Problem in Teilschritte Zerlege Teilschritte
Mehr3.6 Branch-and-Bound-Verfahren
36 Branch-and-Bound-Verfahren Die Branch-and-Bound -Methode beruht darauf, auf eine intelligente Weise alle zulässigen Lösungen eines kombinatorischen Optimierungsproblems aufzulisten und mit Hilfe von
MehrVerteilte Systeme. Verteilte Systeme. 5 Prozeß-Management SS 2016
Verteilte Systeme SS 2016 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 31. Mai 2016 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/14) i
MehrEinführung in die Objektorientierte Programmierung Vorlesung 17: Dynamische Programmierung. Sebastian Küpper
Einführung in die Objektorientierte Programmierung Vorlesung 17: Dynamische Programmierung Sebastian Küpper Redundanz Rekursiver Lösungen Rekursion kann elegante Bescheibungen zur Problemlösung ergeben
MehrBeispiele von Branch Delay Slot Schedules
Beispiele von Branch Delay Slot Schedules Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Prozessor 97 Weniger
MehrKlausur. Betriebssysteme SS 2007
Matrikelnummer: 9999999 Klausur FB Informatik und Mathematik Prof. R. Brause Betriebssysteme SS 2007 Vorname: Nachname: Matrikelnummer: Geburtsdatum: Studiengang: Bitte tragen Sie auf jeder Seite Ihre
MehrBitte verwenden Sie nur dokumentenechtes Schreibmaterial!
VO 182.713 Prüfung Echtzeitsysteme 27. März 2015 KNr. MNr. Zuname, Vorname Ges.)(100) 1.)(35) 2.)(25) 3.)(15) 4.)(25) Zusatzblätter: Bitte verwenden Sie nur dokumentenechtes Schreibmaterial! 1 Grundlagen
MehrC- Kurs 04 Anweisungen
C- Kurs 04 Anweisungen Dipl.- Inf. Jörn Hoffmann jhoffmann@informa@k.uni- leipzig.de Universität Leipzig Ins@tut für Informa@k Technische Informa@k Ausdrücke Institut für Informatik Anweisungen C-Programm
Mehr11. Übung Algorithmen I
Timo Bingmann, Christian Schulz INSTITUT FÜR THEORETISCHE INFORMATIK, PROF. SANDERS KIT Timo Universität Bingmann, des LandesChristian Baden-Württemberg Schulz und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
Mehrp max = 4 T = 8 Work = 28 3 I = Work / T = 3,5 2 Cost = p max * T = 32 U = I / p max = 87,5% 1
Massivparallele Modelle und Architekturen Wintersemester 2010/2011 Lösungsvorschlag 1. Übung 1. Aufgabe: Leistungsbewertung paralleler Systeme Betrachtet werden soll der Odd-Even-Sort-Algorithmus mit n
MehrProzessorarchitektur. Sprungvorhersage. M. Schölzel
Prozessorarchitektur Sprungvorhersage M. Schölzel Inhalt Sprungvorhersage statische Methoden dynamische Methoden Problem Fetch-Phase Befehlswarteschlange Speicher b? Neue Adresse für noch nicht bekannt
MehrAlgorithmen und Datenstrukturen 2. Stefan Florian Palkovits, BSc Juni 2016
Algorithmen und Datenstrukturen 2 Übung 1 Stefan Florian Palkovits, BSc 0926364 e0926364@student.tuwien.ac.at 12. Juni 2016 Aufgabe 1: Es existiert eine Reduktion von Problem A auf Problem B in O(n 3 +
MehrAlgorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Lerneinheit 3: Greedy Algorithmen Prof. Dr. Christoph Karg Studiengang Informatik Hochschule Aalen Sommersemester 2016 10.5.2016 Einleitung Einleitung Diese Lerneinheit
MehrZustellerkonzepte in Mehrkern-Systemen
Zustellerkonzepte in Mehrkern-Systemen Moritz König 12. Januar 2016 Gliederung 1. Motivation 2. Grundsätzliche Herangehensweisen 2.1. Unterbrecherbetrieb 2.2. Hintergrundbetrieb 2.3. Slack-Stealing 2.4.
MehrEntwurf eines FPGA-Cores zur Simulationsbeschleunigung zeitkontinuierlicher Modelle im HiL Kontext
Entwurf eines FPGA-Cores zur Simulationsbeschleunigung zeitkontinuierlicher Modelle im HiL Kontext Till Fischer 03.11.2011 FZI Forschungszentrum Informatik Embedded Systems & Sensors Engineering (ESS)
Mehrp max = 4 T = 8 Work = 28 3 I = Work / T = 3,5 2 Cost = p max * T = 32 U = I / p max = 87,5% 1
Massivparallele Modelle und Architekturen Wintersemester 13/14 Lösungsvorschlag 1. Übung 1. Aufgabe: Leistungsbewertung paralleler Systeme Betrachtet werden soll der Odd-Even-Sort-Algorithmus mit n Eingangswerten
MehrC-Propädeutikum Anweisungen
C-Propädeutikum Anweisungen Stefan Freitag freitag@uni-leipzig.de Universitätsrechenzentrum Universitätsbibliothek Universität Leipzig basiert auf den Originalfolien von Jörn Hoffmann Ausdrücke Institut
MehrDer folgende Vortrag basiert auf dem Text A Polynomial Time Algorithm for the N-Queens Problem von Rok Sosic und Jun Gu aus dem Jahre 1990.
Ein polynomieller Algorithmus für das N-Damen Problem 1 Einführung Der folgende Vortrag basiert auf dem Text A Polynomial Time Algorithm for the N-Queens Problem von Rok Sosic und Jun Gu aus dem Jahre
MehrAlgorithmen und Komplexität
Algorithmen und Komplexität Dynamische Programmierung Markus Ullrich Norbert Baum Fachbereich Informatik - IIb07 Hochschule Zittau/Görlitz 28. Mai 2009 1 / 29 Wie sieht es mit langen Ketten aus? A 1 A
MehrApproximationsalgorithmen
Approximationsalgorithmen 1. Vorlesung Joachim Spoerhase Alexander Wolff Lehrstuhl für Informatik I Wintersemester 2017/18 Bücher zur Vorlesung Vijay V. Vazirani Approximation Algorithms Springer-Verlag
MehrInformatik II: Algorithmen & Datenstrukturen. Blättern Sie nicht um bevor Sie dazu aufgefordert werden!
Albert-Ludwigs-Universität Institut für Informatik Prof. Dr. F. Kuhn Informatik II: Algorithmen & Datenstrukturen Montag, 29. August, 2014, 14:00 17:00 Name:...........................................................
MehrTechnische Informatik 1 Übung 8 Instruktionsparallelität (Rechenübung) Andreas Tretter 8./9. Dezember Bitte immer eine Reihe freilassen
Technische Informatik 1 Übung 8 Instruktionsparallelität (Rechenübung) Andreas Tretter 8./9. Dezember 2016 Bitte immer eine Reihe freilassen Ziele der Übung Verschiedene Arten von Instruktionsparallelität
MehrSoftware Maintenance. Anmerkung zu Program Slicing UNIV.-PROF. DIPL.-ING. DR. FRANZ WOTAWA
Software Maintenance UNIV.-PROF. DIPL.-ING. DR. FRANZ WOTAWA Technische Universität Graz, Institut für Softwaretechnologie wotawa@ist.tugraz.at Anmerkung zu Program Slicing Infolge werden wir uns den Static
MehrOptimieren von Schnittplänen
30. Juli, 015 Inhaltsverzeichnis 1 Einführung 3 4 Worum geht es? Wir wollen möglichst effizient Druckbögen zerschneiden Dazu verwenden wir nur Guillotinen-Schnitte Worum geht es? Wir wollen möglichst effizient
MehrDatenstrukturen und Algorithmen. 7. Suchen in linearen Feldern
Datenstrukturen und Algorithmen 7. Suchen in linearen Feldern VO 708.031 Suchen in linearen Feldern robert.legenstein@igi.tugraz.at 1 Inhalt der Vorlesung 1. Motivation, Einführung, Grundlagen 2. Algorithmische
MehrC++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22
C++ Teil 2 Sven Groß IGPM, RWTH Aachen 16. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 2 16. Apr 2015 1 / 22 Themen der letzten Vorlesung Hallo Welt Elementare Datentypen Ein-/Ausgabe Operatoren Sven
MehrAlgorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen Lerneinheit : Dynamisches Programmieren Prof. Dr. Christoph Karg Studiengang Informatik Hochschule Aalen Sommersemester.. Einleitung Diese Lerneinheit widmet sich einer
MehrAktuelle RTOS-Entwicklungen aus der Forschung
Aktuelle RTOS-Entwicklungen aus der Forschung Lennart Downar Seminar Fehlertoleranz und Echtzeit 16. Februar 2016 Aktuelle RTOS-Entwicklungen aus der Forschung Lennart Downar 1/28 Übersicht 1 Einführung
MehrAlgorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS Oktober 2016
Technische Universität Wien Institut für Computergraphik und Algorithmen Algorithms and Complexity Group 186.815 Algorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS 2016 5. Oktober 2016 Machen Sie
MehrOpenCL. Programmiersprachen im Multicore-Zeitalter. Tim Wiersdörfer
OpenCL Programmiersprachen im Multicore-Zeitalter Tim Wiersdörfer Inhaltsverzeichnis 1. Was ist OpenCL 2. Entwicklung von OpenCL 3. OpenCL Modelle 1. Plattform-Modell 2. Ausführungs-Modell 3. Speicher-Modell
MehrAllgemeine Lösung mittels Hazard Detection Unit
Allgemeine Lösung mittels Hazard Detection Unit Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Prozessor 83
MehrUniversität Karlsruhe (TH)
Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Programmtransformationen: Vom PRAM Algorithmus zum MPI Programm Prof. Dr. Walter F. Tichy Dr. Victor Pankratius Ali Jannesari Modell und
MehrAbstrakte Algorithmen und Sprachkonzepte
Abstrakte Algorithmen und Sprachkonzepte Thomas Röfer Begriff des Algorithmus Algorithmenaufbau Programmiersprachliche Grundkonzepte Interative und rekursive Algorithmen Rückblick Aufbau und Funktionsweise
MehrAdiabatisches Quantencomputing
DLR.de Folie > Adiabatisches Quantencomputing > Elisabeth Lobe, Tobias Stollenwerk > 5.5.205 Adiabatisches Quantencomputing Elisabeth Lobe, Tobias Stollenwerk Simulations- und Softwaretechnik HPCN Workshop,
MehrBerechnung von Abständen
3. Kreis- und Wegeprobleme Abstände in Graphen Abstände in Graphen Definition 3.4. Es sei G = (V, E) ein Graph. Der Abstand d(v, w) zweier Knoten v, w V ist die minimale Länge eines Weges von v nach w.
MehrEntwurf und Implementierung eines energieneutralen Echtzeit-Betriebssystems
Entwurf und Implementierung eines energieneutralen Echtzeit-Betriebssystems Phillip Raffeck Lehrstuhl für Verteilte Systeme und Betriebssysteme Workshop Echtzeit 2016: Internet der Dinge 17. November 2016
MehrGrundlagen: Algorithmen und Datenstrukturen
Grundlagen: Algorithmen und Datenstrukturen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2010
MehrGrundlagen der Automatisierungstechnik. (Automatisierungstechnik 1) 5. Echtzeit
Grundlagen der Automatisierungstechnik (Automatisierungstechnik 1) 5. Echtzeit Definition von Echtzeit Häufiges Missverständnis Echtzeit bedeutet schnell FALSCH Richtige Definition Ein Echtzeitsystem garantiert
MehrFPGA-basierte Automatisierungssysteme
Fakultät Informatik Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur FPGA-basierte Automatisierungssysteme Stephan Hensel Dresden, 05.12.2012 Gliederung
Mehr1.3 Knuth-Morris-Pratt-Algorithmus
1.3 Knuth-Morris-Pratt-Algorithmus Präprozessing bestimmt längste Ränder der Präfixe von P Die Kenntnis der Ränder erspart Vergleiche bei periodischen Suchwörtern Laufzeit: Θ(m) für das Präprozessing,
MehrNäherungsalgorithmen (Approximationsalgorithmen) WiSe 2008/09 in Trier. Henning Fernau Universität Trier
Näherungsalgorithmen (Approximationsalgorithmen) WiSe 2008/09 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 1 Näherungsalgorithmen Gesamtübersicht Organisatorisches Einführung / Motivation
MehrKlausur. Betriebssysteme SS
Klausur FB Informatik und Mathematik Prof. R. Brause Betriebssysteme SS 2011 14.7.2011 Vorname: Nachname: Matrikelnummer: Geburtsdatum: Studiengang: Bitte tragen Sie auf jeder Seite Ihre Matrikelnummer
MehrFormulierung mittels Dynamischer Programmierung
Formulierung mittels Dynamischer Programmierung Beobachtung: die Anzahl der Teilprobleme A i j n mit i j n ist nur Folgerung: der naïve rekursive Algo berechnet viele Teilprobleme mehrfach! Idee: Bottom-up-Berechnung
MehrVerteilte Echtzeit-Systeme
- Verteilte Echtzeit-Systeme Hans-Albrecht Schindler Wintersemester 2017/18 Teil C: Echtzeit-Betriebssysteme Abschnitt 6: Echtzeit-Betriebssysteme CSI Technische Universität Ilmenau www.tu-ilmenau.de 6.1
Mehrmyavr Programmierung in C
myavr Programmierung in C Stefan Goebel Februar 2017 Stefan Goebel myavr Programmierung in C Februar 2017 1 / 12 Grundgerüst... braucht man immer! #include // Register- und Konstantendefinitionen
MehrSoftware Engineering Informatik. Grundlagen der Statischen Analyse und ihre Werkzeuge
Grundlagen der Statischen Analyse und ihre Werkzeuge Übersicht 1. Statische Analyse Allgemein 2. Grundlagen 3. Abstrakte Interpretation 4. Werkzeuge der Statischen Analyse 5. Zusammenfassung 2 Sichere
MehrRechnernetze I SS Universität Siegen Tel.: 0271/ , Büro: H-B Stand: 10.
Rechnernetze I SS 2014 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 10. ugust 2015 Betriebssysteme / verteilte Systeme Rechnernetze I (1/13) i Rechnernetze
MehrApproximationsalgorithmen. 19. Dezember / 28
Approximationsalgorithmen 19. Dezember 2017 1 / 28 Optimierungsprobleme Das Ziel: Bearbeite schwierige Optimierungsprobleme der Form opt y f (x, y) so dass L(x, y). Die Zielfunktion f (x, y) ist zu minimieren
MehrInhalt. Annäherung an das Nichtberechenbare - Statische Programmanalyse - Reinhard Wilhelm. Interessante Fragen über Programme
Annäherung an das Nichtberechenbare - Statische Programmanalyse - Reinhard Wilhelm Inhalt Eigenschaften von Programmen Approximation Effective Abstractions (P. Cousot) Voraussage des Cacheverhaltens Interessante
MehrKap. 6.6: Kürzeste Wege
Kap. 6.6: Kürzeste Wege Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 1./. VO DAP SS 009./9. Juli 009 1 Nachtest für Ausnahmefälle Di 1. Juli 009, 16:00 Uhr,
MehrVertiefungsrichtung Rechnerarchitektur
srichtung () ( für ) Prof. Dietmar Fey Ziele der srichtung RA Vertiefen des Verständnis vom Aufbau, Funktionsweise von Rechnern und Prozessoren Modellierung und Entwurf von Rechnern und Prozessoren ()
MehrSeminar - Multicore Programmierung
1 / 35 Seminar - Multicore Programmierung Performanz Max Binder Fakultät für Informatik und Mathematik Universität Passau 10. Februar 2011 2 / 35 Inhaltsverzeichnis 1 Einleitung Hinführung Definition Entwicklung
MehrAlgorithmische Methoden zur Netzwerkanalyse
Algorithmische Methoden zur Netzwerkanalyse Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische
MehrDatenstrukturen und Algorithmen
Prof. Dr. Erika Ábrahám Datenstrukturen und Algorithmen 1/1 Datenstrukturen und Algorithmen Vorlesung 14: Prof. Dr. Erika Ábrahám Theorie Hybrider Systeme Informatik 2 http://ths.rwth-aachen.de/teaching/ss-14/
MehrKap. 6.6: Kürzeste Wege
0.0.00 Nachtest für Ausnahmefälle Kap..: Kürzeste Wege Professor Dr. Lehrstuhl für Algorithm Engineering, LS Fakultät für Informatik, TU Dortmund./. VO DAP SS 00./. Juli 00 Di. Juli 00, :00 Uhr, OH, R.
Mehr