Design and Analysis of Time-Critical Systems Cache Analysis and Predictability
|
|
- Silvester Gibbs
- 5 years ago
- Views:
Transcription
1 esign and nalysis of Time-ritical Systems ache nalysis and Predictability Jan saarland university ES Summer School 2017 Fiuggi, Italy computer science
2 n nalogy alvin and Hobbes by Bill Watterson November 26,
3 an We Predict Software Behavior? Security: l oes this app leak my private data? l re buffer overflow attacks possible? Verification: l an this program crash? l oes it behave according to specification? Timing nalysis: l What is the maximum runtime of this program? l Important Subproblems: Which address will be accessed? Will this memory access result in a cache hit? 3
4 Prediction is Impossible! lan Turing: The halting problem is undecidable. lan Turing Henry Gordon Rice: ny non-trivial property of programs is undecidable. 4
5 pproximative Solutions Program nalysis for Property X Yes on t know No 5
6 Underapproximation: Testing Test the program on a finite subset of its inputs: Undetected fault etected fault all behaviours of the program test cases Program testing can be used to show the presence of bugs, but never to show their absence! ijkstra (1970) 6
7 Sound Static Program nalysis (bstract Interpretation) Over-approximate all possible behaviors: ll violations detected Infeasible behaviours all behaviours of the program Warning: False positive 7
8 Static nalysis in a Nutshell Set of initial states + inputs oncrete Behaviors safe approximation bstract Behaviors 8
9 How to achieve safe approximation? 1. Every abstract state s # represents a set (s # ) of rete states: 9
10 How to achieve safe approximation? 2. Local onsistency: abstract successors over-approximate rete successors may represent more states à imprecision 10
11 How to achieve safe approximation? oncrete Behaviors safe approximation bstract Behaviors Local onsistency Local onsistency 11
12 pplication: Static ache nalysis ache: Small, but fast memory that buffers part of main memory hi! hei!? E? miss hit [EB] [B] [B] hei! E? PU ache Main Memory Goal of static cache analysis is to classify memory accesses as guaranteed cache hits 12
13 oncrete ache States: Least-Recently-Used Replacement Notion of ge B most-recently-used least-recently-used E B F most-recently-used least-recently-used 13
14 oncrete ache Behavior: Least-Recently-Used Replacement How do rete cache states change upon memory accesses? ccess to : hit ccess to E: miss B B E B 14
15 Brainstorming: Predicting ache Hits Want to soundly predict cache hits. How to compactly represent sets of rete states for this purpose? 15
16 bstract Must ache States ompactly represent sets of rete states: {B} {,} {} oncrete states in which: B s age is at most 1, s and s age is at most 2 and s age is at most 3. Upper bound on ages of memory blocks 16
17 bstract Must ache States ompactly represent sets of rete states: B {B} {,} B B {} B Upper bound on ages of memory blocks 17
18 bstract Must ache States ompactly represent sets of rete states:? 18
19 bstract Must ache Behavior How do abstract cache states change upon memory accesses? {B} {,} {} ccess to : definite hit {} {,B} {} ccess to E: potential miss {E} {} {,B} 19
20 bstract Must ache Behavior: Local onsistency ccess to : hit {} {B} {,} {,B} {} {} B B B B ccess to B B 20
21 Integration with Pipeline nalysis uring microarchitectural analysis, analysis states are pairs: (pipeline state, cache state) Upon uncertainty, e.g. whether a cache hit or miss happens, split. If two analysis states agree on the pipeline state, the cache states are joined. 21
22 Properties of the Join Soundness: Must not lose any rete states: () ( B) (B) ( B) Precision: Want the best representation that is sound, i.e. the one that represents the fewest rete states. 22
23 Join for bstract Must ache States {} {,F} {} {}? {E} = {} {} {,} {} F F E???... à Take the maximum of the age bounds! 23
24 Example nalysis: Loop entry [,,, ]?t[,? [{},, {},,] t =[,,,,, ] ] = [,,, ] [{},,, ]? B [{},?,, ] [{B},? {},, ] t [{}, {},, ] = [, {},, ] exit [{},?, {}, ] No hits can be predicted! Why? 24
25 ontext-sensitive nalysis: Virtual Loop Peeling (Unrolling) The problem: The first iteration of a loop will always result in cache misses Similarly for the first execution of a recursive function solution: istinguish the first iteration of a loop from others istinguish function calls by calling context 25
26 ontext-sensitive nalysis: Example entry [{},,, ] B exit [{}, {},, ] B [,,, ] [{},,, ] [, {},, ] [{},, {}, ] [{}, {},, ] ccesses to and are provably hits after the first iteration ccesses to B and can still not be classified, but they can miss at most once à Need Persistence nalysis [, {}, {}, ] Note: Loop is only peeled virtually, i.e. during analysis not in the binary! exit 26
27 Brainstorming: Predicting ache Misses Want to soundly predict cache misses. How to compactly represent sets of rete states for this purpose? 27
28 Predicting ache Misses: bstract May ache States {} {B, } {, E, F} oncrete states in which: s age is at least 0, B s and s age is at least 1, and s, E s, and F s age is at least 2. Lower bound on ages of memory blocks Blocks with a lower bound greater or equal to the cache size are guaranteed not to be in the cache. How is this useful in WET analysis? 28
29 bstract May ache Behavior How do abstract cache states change upon memory accesses? ccess to : potential hit ccess to E: definite miss {B} {} {E} {F} {B} {} {,} {F} {B} {} {,} {F} Notice subtle difference to must update! 29
30 Join for bstract May ache States {,} {F} {} {}? {E} = {} {} {,} {E} {F} {} à Take the minimum of the age bounds! 30
31 Timing Predictability Uncertainty in WET nalysis distribution of execution times nalysis-guaranteed timing bounds Overest.= uncertainty penalty LB BET WET UB Execution time Precision of WET analysis determined by amount of uncertainty Uncertainty in cache analysis depends on replacement policy 31
32 Uncertainty in ache nalysis read z 1. Initial cache contents unknown. read y read x 2. ifferent paths lead to these points. 3. annot resolve address of z. write z =) mount of uncertainty determined by ability to recover information 32
33 ache Predictability Metrics Evict Fill [fed] [gfe] [dex] [fec] [fde] [gfd] [hgf ] omplete Uncertainty omplete ertainty 33
34 Interpretation of Predictability Metrics Evict: Fill: l Number of accesses until any analysis can start predicting guaranteed cache misses l Number of accesses until any analysis can precisely predict any access as hit or miss à The two metrics bound the precision of any static cache analysis. an thus serve as benchmark for analyses. 34
35 Popular ache Replacement Policies Least-Recently-Used (LRU) used in INTEL PENTIUM I, MIPS 24K/34K, M OPTERON First-In First-Out (FIFO) used in MOTOROL POWERP 56X, INTEL XSLE, RM9, RM11 Not Most-Recently-Used (NMRU) used in INTEL ITNIUM Pseudo-LRU (PLRU) used in INTEL PENTIUM II-IV, INTEL ORE, INTEL XEON, POWERP 75X 35
36 Observation: LRU Replacement is Robust ccess to ccess to B ccess to ccess to {} {B} {} {} {B} {} {} {} {B} {} rbitrary ache State à Predictability Metrics: Evict(k) = Fill(k) = k B where k = associativity 36
37 Predictability Metrics: FIFO Like LRU in the miss case But: Ignores hits a b c d? a b c? a b c? a b c? a b c d? a b In the worst case k-1 hits and k misses: (k = associativity) à Evict(k) = 2k-1 nother k accesses to obtain complete knowledge: à Fill(k) = 3k-1 37
38 Predictability Metrics: PLRU Tree bits point to block to be replaced 1 c 0 e a b c d a b c d a e c d ccesses rejuvenate neighborhood l ctive blocks keep their (inactive) neighborhood in the cache nalysis yields: l Evict(k) = k/2 log 2 k +1 l Fill(k) = k/2 log 2 k + k
39 Evaluation of Policies Policy Evict(k) Fill(k) LRU k k FIFO 2k-1 3k-1 NMRU 2k-2 3k-4 PLRU k/2 log k + 1 k/2 log k + k-1 1. LRU is optimal w.r.t. metrics à Use LRU when you have the choice. 2. How to build static analyses that are optimal w.r.t. metrics? à [SIGMETRIS, LTES, SS, WET, ERTS] 39
40 onclusions ache nalysis for Least-Recently-Used: l Efficiently represents sets of cache states by bounding the age of memory blocks From above: must analysis From below: may analysis l Requires context sensitivity for precision ache Predictability Metrics: l Equate predictability with forgetfulness l LRU is particularly forgetful 40
41 Literature bstract ousot, ousot: bstract interpretation: a unified lattice model for static Interpretation: analysis of programs by construction or approximation of fixpoints, In: Proceedings POPL, 1977 LRU: Predictability: Other Policies: FIFO: Persistence: NMRU: Survey: Ferdinand, Wilhelm: Efficient and precise cache behavior prediction for realtime systems, Real-Time Systems, 1999 Reineke, Grund, Berg, Wilhelm: Timing predictability of cache replacement policies, Real-Time Systems 37(2), 2007 Reineke, Grund: Relative competitive analysis of cache replacement policies, In: Proceedings LTES, 2008 Grund, Reineke: bstract interpretation of FIFO replacement, In: Proceedings SS, 2009 Grund, Reineke: Precise and efficient FIFO-replacement analysis based on static phase detection, In: Proceedings ERTS, 2010 Guan, Yang, Lv, Yi: FIFO cache analysis for WET estimation: a quantitative approach, In: Proceedings TE, 2013 ullmann: ache persistence analysis: Theory and practice, M TES, 2013 Guan, Lv, Yi, Yu: WET analysis with MRU cache: challenging LRU for predictability, M TES, 2014 Lv, Guan, Reineke, Wilhelm, Yi: survey on static cache analysis for realtime systems, LITES 3(1),
Caches in WCET Analysis
Caches in WCET Analysis Jan Reineke Department of Computer Science Saarland University Saarbrücken, Germany ARTIST Summer School in Europe 2009 Autrans, France September 7-11, 2009 Jan Reineke Caches in
More informationTiming analysis and timing predictability
Timing analysis and timing predictability Caches in WCET Analysis Reinhard Wilhelm 1 Jan Reineke 2 1 Saarland University, Saarbrücken, Germany 2 University of California, Berkeley, USA ArtistDesign Summer
More informationWorst-Case Execution Time Analysis. LS 12, TU Dortmund
Worst-Case Execution Time Analysis Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 02, 03 May 2016 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 53 Most Essential Assumptions for Real-Time Systems Upper
More informationWorst-Case Execution Time Analysis. LS 12, TU Dortmund
Worst-Case Execution Time Analysis Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 09/10, Jan., 2018 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 43 Most Essential Assumptions for Real-Time Systems Upper
More informationToward Precise PLRU Cache Analysis
Toward Precise PLRU Cache Analysis Daniel Grund Jan Reineke 2 Saarland University, Saarbrücken, Germany 2 University of California, Berkeley, USA Workshop on Worst-Case Execution-Time Analysis 2 Outline
More informationDesign and Analysis of Time-Critical Systems Response-time Analysis with a Focus on Shared Resources
Design and Analysis of Time-Critical Systems Response-time Analysis with a Focus on Shared Resources Jan Reineke @ saarland university ACACES Summer School 2017 Fiuggi, Italy computer science Fixed-Priority
More informationTiming analysis and predictability of architectures
Timing analysis and predictability of architectures Cache analysis Claire Maiza Verimag/INP 01/12/2010 Claire Maiza Synchron 2010 01/12/2010 1 / 18 Timing Analysis Frequency Analysis-guaranteed timing
More informationStatic Program Analysis using Abstract Interpretation
Static Program Analysis using Abstract Interpretation Introduction Static Program Analysis Static program analysis consists of automatically discovering properties of a program that hold for all possible
More informationOn the analysis of random replacement caches using static probabilistic timing methods for multi-path programs
Real-Time Syst (208) 54:307 388 https://doi.org/0.007/s24-07-9295-2 On the analysis of random replacement caches using static probabilistic timing methods for multi-path programs Benjamin Lesage David
More informationCEC 450 Real-Time Systems
E 450 Real-ime Systems Lecture 4 Rate Monotonic heory Part September 7, 08 Sam Siewert Quiz Results 93% Average, 75 low, 00 high Goal is to learn what you re not learning yet Motivation to keep up with
More informationICS 233 Computer Architecture & Assembly Language
ICS 233 Computer Architecture & Assembly Language Assignment 6 Solution 1. Identify all of the RAW data dependencies in the following code. Which dependencies are data hazards that will be resolved by
More informationAlgorithmic verification
Algorithmic verification Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2018 Outline Overview Model checking Symbolic execution Outline Overview Model checking Symbolic execution Program verification
More informationCache-Oblivious Algorithms
Cache-Oblivious Algorithms 1 Cache-Oblivious Model 2 The Unknown Machine Algorithm C program gcc Object code linux Execution Can be executed on machines with a specific class of CPUs Algorithm Java program
More informationDecision Procedures. Jochen Hoenicke. Software Engineering Albert-Ludwigs-University Freiburg. Winter Term 2016/17
Decision Procedures Jochen Hoenicke Software Engineering Albert-Ludwigs-University Freiburg Winter Term 2016/17 Jochen Hoenicke (Software Engineering) Decision Procedures Winter Term 2016/17 1 / 436 Program
More informationCache-Oblivious Algorithms
Cache-Oblivious Algorithms 1 Cache-Oblivious Model 2 The Unknown Machine Algorithm C program gcc Object code linux Execution Can be executed on machines with a specific class of CPUs Algorithm Java program
More informationProblem. Problem Given a dictionary and a word. Which page (if any) contains the given word? 3 / 26
Binary Search Introduction Problem Problem Given a dictionary and a word. Which page (if any) contains the given word? 3 / 26 Strategy 1: Random Search Randomly select a page until the page containing
More informationA Definition and Classification of Timing Anomalies
Definition and Classification of Timing nomalies Jan Reineke 1, Björn Wachter 1, Stephan Thesing 1, Reinhard Wilhelm 1, Ilia Polian 2, Jochen Eisinger 2, and Bernd Becker 2 1 Saarland University Im Stadtwald
More informationWeighted Activity Selection
Weighted Activity Selection Problem This problem is a generalization of the activity selection problem that we solvd with a greedy algorithm. Given a set of activities A = {[l, r ], [l, r ],..., [l n,
More informationDynamic Dependency Monitoring to Secure Information Flow
Dynamic Dependency Monitoring to Secure Information Flow Paritosh Shroff Scott F. Smith Mark Thober Department of Computer Science Johns Hopkins University {pari,scott,mthober}@cs.jhu.edu Abstract Although
More informationCaches in WCET Analysis Predictability, Competitiveness, Sensitivity
Caches in WCET Analysis Predictability, Competitiveness, Sensitivity Dissertation Zur Erlangung des Grades des Doktors der Ingenieurwissenschaften der Naturwissenschaftlich-Technischen Fakultäten der Universität
More informationON THE INCOMPARABILITY OF CACHE ALGORITHMS IN TERMS OF TIMING LEAKAGE
Logical Methods in Computer Science Volume 15, Issue 1, 2019, pp. 21:1 21:19 https://lmcs.episciences.org/ Submitted Jul. 04, 2018 Published Mar. 05, 2019 ON THE INCOMPARABILITY OF CACHE ALGORITHMS IN
More informationGreat Theoretical Ideas
15-251 Great Theoretical Ideas in Computer Science Gödel s Legacy: Proofs and Their Limitations Lecture 25 (November 16, 2010) The Halting Problem A Quick Recap of the Previous Lecture Is there a program
More informationFall 2008 CSE Qualifying Exam. September 13, 2008
Fall 2008 CSE Qualifying Exam September 13, 2008 1 Architecture 1. (Quan, Fall 2008) Your company has just bought a new dual Pentium processor, and you have been tasked with optimizing your software for
More informationDiscrete Mathematics and Probability Theory Spring 2014 Anant Sahai Note 20. To Infinity And Beyond: Countability and Computability
EECS 70 Discrete Mathematics and Probability Theory Spring 014 Anant Sahai Note 0 To Infinity And Beyond: Countability and Computability This note ties together two topics that might seem like they have
More informationBusiness Process Regulatory Compliance is Hard
IEEE TRANSACTIONS ON SERVICE COMPUTING, VOL. X, NO. X, X X 1 Business Process Regulatory Compliance is Hard Silvano Colombo Tosatto, Guido Governatori and Pierre Kelsen Abstract Verifying whether a business
More informationVerification of Real-Time Systems Numerical Abstractions
Verification of Real-Time Systems Numerical Abstractions Jan Reineke Advanced Lecture, Summer 2015 Recap: From Local to Global Correctness: Kleene Iteration Abstract Domain F # F #... F # γ a γ a γ a Concrete
More informationSmoothing a Program Soundly and Robustly
Smoothing a Program Soundly and Robustly Swarat Chaudhuri 1 and Armando Solar-Lezama 2 1 Rice University 2 MIT Abstract. We study the foundations of smooth interpretation, a recentlyproposed program approximation
More informationarxiv: v1 [cs.ds] 12 Oct 2015
On the Smoothness of Paging Algorithms Jan Reineke and Alejandro Salinger 2 Department of Computer Science, Saarland University, Saarbrücken, Germany reineke@cs.uni-saarland.de 2 SAP SE, Walldorf, Germany
More informationThe priority promotion approach to parity games
The priority promotion approach to parity games Massimo Benerecetti 1, Daniele Dell Erba 1, and Fabio Mogavero 2 1 Università degli Studi di Napoli Federico II 2 Università degli Studi di Verona Abstract.
More informationPath Testing and Test Coverage. Chapter 9
Path Testing and Test Coverage Chapter 9 Structural Testing Also known as glass/white/open box testing Structural testing is based on using specific knowledge of the program source text to define test
More informationPath Testing and Test Coverage. Chapter 9
Path Testing and Test Coverage Chapter 9 Structural Testing Also known as glass/white/open box testing Structural testing is based on using specific knowledge of the program source text to define test
More informationCache Related Preemption Delay for Set-Associative Caches
Cache Related Preeption Delay for Set-Associative Caches Resilience Analysis Sebastian Alteyer, Claire Burguière, Jan Reineke AVACS Workshop, Oldenburg 2009 Why use preeptive scheduling? Preeption often
More informationECE 571 Advanced Microprocessor-Based Design Lecture 10
ECE 571 Advanced Microprocessor-Based Design Lecture 10 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 23 February 2017 Announcements HW#5 due HW#6 will be posted 1 Oh No, More
More informationPrioritized Garbage Collection Using the Garbage Collector to Support Caching
Prioritized Garbage Collection Using the Garbage Collector to Support Caching Diogenes Nunez, Samuel Z. Guyer, Emery D. Berger Tufts University, University of Massachusetts Amherst November 2, 2016 D.
More informationTheory of Computer Science. Theory of Computer Science. D8.1 Other Halting Problem Variants. D8.2 Rice s Theorem
Theory of Computer Science May 15, 2017 D8. Rice s Theorem and Other Undecidable Problems Theory of Computer Science D8. Rice s Theorem and Other Undecidable Problems Malte Helmert University of Basel
More informationCS5371 Theory of Computation. Lecture 14: Computability V (Prove by Reduction)
CS5371 Theory of Computation Lecture 14: Computability V (Prove by Reduction) Objectives This lecture shows more undecidable languages Our proof is not based on diagonalization Instead, we reduce the problem
More informationProgram Analysis Probably Counts
Probably Counts 1 c.hankin@imperial.ac.uk joint work with Alessandra Di Pierro 2 and Herbert Wiklicky 1 1 Department of Computing, 2 Dipartimento di Informatica, Università di Verona Computer Journal Lecture,
More informationCS 243 Lecture 11 Binary Decision Diagrams (BDDs) in Pointer Analysis
CS 243 Lecture 11 Binary Decision Diagrams (BDDs) in Pointer Analysis 1. Relations in BDDs 2. Datalog -> Relational Algebra 3. Relational Algebra -> BDDs 4. Context-Sensitive Pointer Analysis 5. Performance
More informationLecture 2: Paging and AdWords
Algoritmos e Incerteza (PUC-Rio INF2979, 2017.1) Lecture 2: Paging and AdWords March 20 2017 Lecturer: Marco Molinaro Scribe: Gabriel Homsi In this class we had a brief recap of the Ski Rental Problem
More informationGeneral Diagnostic Engine: GDE
eneral iagnostic ngine: onsistency based diagnosis 1 Introduction 2 omputational approach: arlos lonso onzález elarmino Pulido Junquera SI. pto. Informática, Universidad de Valladolid onsistency ased iagnosis
More information1 Definition of a Turing machine
Introduction to Algorithms Notes on Turing Machines CS 4820, Spring 2017 April 10 24, 2017 1 Definition of a Turing machine Turing machines are an abstract model of computation. They provide a precise,
More informationIntroduction to Abstract Interpretation. ECE 584 Sayan Mitra Lecture 18
Introduction to Abstract Interpretation ECE 584 Sayan Mitra Lecture 18 References Patrick Cousot,RadhiaCousot:Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction
More informationThe Fast Optimal Voltage Partitioning Algorithm For Peak Power Density Minimization
The Fast Optimal Voltage Partitioning Algorithm For Peak Power Density Minimization Jia Wang, Shiyan Hu Department of Electrical and Computer Engineering Michigan Technological University Houghton, Michigan
More informationTHEORY OF COMPUTATION (AUBER) EXAM CRIB SHEET
THEORY OF COMPUTATION (AUBER) EXAM CRIB SHEET Regular Languages and FA A language is a set of strings over a finite alphabet Σ. All languages are finite or countably infinite. The set of all languages
More informationEnsuring Average Recovery with Adversarial Scheduler
Ensuring Average Recovery with Adversarial Scheduler Jingshu Chen, Mohammad Roohitavaf, and Sandeep S. Kulkarni Michigan State University, US {chenji15, roohitav, sandeep}@cse.msu.edu Abstract In this
More informationEnergy-Efficient Management of Reconfigurable Computers 82. Processor caches are critical components of the memory hierarchy that exploit locality to
Energy-Efficient Management of Reconfigurable Computers 82 4 cache reuse models 4.1 Overview Processor caches are critical components of the memory hierarchy that exploit locality to keep frequently-accessed
More informationFoundations of Cryptography
- 111 - Foundations of Cryptography Notes of lecture No. 10B & 11 (given on June 11 & 18, 1989) taken by Sergio Rajsbaum Summary In this lecture we define unforgeable digital signatures and present such
More informationReal-Time Scheduling and Resource Management
ARTIST2 Summer School 2008 in Europe Autrans (near Grenoble), France September 8-12, 2008 Real-Time Scheduling and Resource Management Lecturer: Giorgio Buttazzo Full Professor Scuola Superiore Sant Anna
More informationNP Complete Problems. COMP 215 Lecture 20
NP Complete Problems COMP 215 Lecture 20 Complexity Theory Complexity theory is a research area unto itself. The central project is classifying problems as either tractable or intractable. Tractable Worst
More informationAn Informal introduction to Formal Verification
An Informal introduction to Formal Verification Osman Hasan National University of Sciences and Technology (NUST), Islamabad, Pakistan O. Hasan Formal Verification 2 Agenda q Formal Verification Methods,
More informationAutomatic Resource Bound Analysis and Linear Optimization. Jan Hoffmann
Automatic Resource Bound Analysis and Linear Optimization Jan Hoffmann Beyond worst-case analysis Beyond worst-case analysis of algorithms Beyond worst-case analysis of algorithms Resource bound analysis
More informationEmbedded Systems 23 BF - ES
Embedded Systems 23-1 - Measurement vs. Analysis REVIEW Probability Best Case Execution Time Unsafe: Execution Time Measurement Worst Case Execution Time Upper bound Execution Time typically huge variations
More informationLoop Invariants and Binary Search. Chapter 4.4, 5.1
Loop Invariants and Binary Search Chapter 4.4, 5.1 Outline Iterative Algorithms, Assertions and Proofs of Correctness Binary Search: A Case Study Outline Iterative Algorithms, Assertions and Proofs of
More informationLimits of Computability
Limits of Computability Wolfgang Schreiner Wolfgang.Schreiner@risc.jku.at Research Institute for Symbolic Computation (RISC) Johannes Kepler University, Linz, Austria http://www.risc.jku.at Wolfgang Schreiner
More informationSemantic Equivalences and the. Verification of Infinite-State Systems 1 c 2004 Richard Mayr
Semantic Equivalences and the Verification of Infinite-State Systems Richard Mayr Department of Computer Science Albert-Ludwigs-University Freiburg Germany Verification of Infinite-State Systems 1 c 2004
More informationWarm-Up Problem. Please fill out your Teaching Evaluation Survey! Please comment on the warm-up problems if you haven t filled in your survey yet.
Warm-Up Problem Please fill out your Teaching Evaluation Survey! Please comment on the warm-up problems if you haven t filled in your survey yet Warm up: Given a program that accepts input, is there an
More informationNetwork Algorithms and Complexity (NTUA-MPLA) Reliable Broadcast. Aris Pagourtzis, Giorgos Panagiotakos, Dimitris Sakavalas
Network Algorithms and Complexity (NTUA-MPLA) Reliable Broadcast Aris Pagourtzis, Giorgos Panagiotakos, Dimitris Sakavalas Slides are partially based on the joint work of Christos Litsas, Aris Pagourtzis,
More informationTopic 17. Analysis of Algorithms
Topic 17 Analysis of Algorithms Analysis of Algorithms- Review Efficiency of an algorithm can be measured in terms of : Time complexity: a measure of the amount of time required to execute an algorithm
More informationRevisiting the Cache Miss Analysis of Multithreaded Algorithms
Revisiting the Cache Miss Analysis of Multithreaded Algorithms Richard Cole Vijaya Ramachandran September 19, 2012 Abstract This paper concerns the cache miss analysis of algorithms when scheduled in work-stealing
More informationThere are two main techniques for showing that problems are undecidable: diagonalization and reduction
Reducibility 1 There are two main techniques for showing that problems are undecidable: diagonalization and reduction 2 We say that a problem A is reduced to a problem B if the decidability of A follows
More informationLearning to Verify Branching Time Properties
Learning to Verify Branching Time Properties Abhay Vardhan and Mahesh Viswanathan Dept. of Computer Science, Univ. of Illinois at Urbana-Champaign, USA Abstract. We present a new model checking algorithm
More informationAbstract Interpretation II
Abstract Interpretation II Semantics and Application to Program Verification Antoine Miné École normale supérieure, Paris year 2015 2016 Course 11 13 May 2016 Course 11 Abstract Interpretation II Antoine
More informationExact Analysis of TTL Cache Networks
Exact Analysis of TTL Cache Networks Daniel S. Berger, Philipp Gland, Sahil Singla, and Florin Ciucu IFIP WG 7.3 Performance October 7, 2014 Classes of Caching Classes of Caches capacity-driven eviction
More informationA Fast Heuristic for GO and MINLP
A Fast Heuristic for GO and MINLP John W. Chinneck, M. Shafique, Systems and Computer Engineering Carleton University, Ottawa, Canada Introduction Goal: Find a good quality GO/MINLP solution quickly. Trade
More informationCS264: Beyond Worst-Case Analysis Lecture #4: Parameterized Analysis of Online Paging
CS264: Beyond Worst-Case Analysis Lecture #4: Parameterized Analysis of Online Paging Tim Roughgarden January 19, 2017 1 Preamble Recall our three goals for the mathematical analysis of algorithms: the
More informationAutomatic determination of numerical properties of software and systems
Automatic determination of numerical properties of software and systems Eric Goubault and Sylvie Putot Modelling and Analysis of Interacting Systems, CEA LIST MASCOT-NUM 2012 Meeting, March 21-23, 2012
More informationComplexity Theory Part I
Complexity Theory Part I Problem Problem Set Set 77 due due right right now now using using a late late period period The Limits of Computability EQ TM EQ TM co-re R RE L D ADD L D HALT A TM HALT A TM
More informationAnalysis of Algorithms CMPSC 565
Analysis of Algorithms CMPSC 565 LECTURES 38-39 Randomized Algorithms II Quickselect Quicksort Running time Adam Smith L1.1 Types of randomized analysis Average-case analysis : Assume data is distributed
More informationInformation Flow Analysis via Path Condition Refinement
Information Flow Analysis via Path Condition Refinement Mana Taghdiri, Gregor Snelting, Carsten Sinz Karlsruhe Institute of Technology, Germany FAST September 16, 2010 KIT University of the State of Baden-Wuerttemberg
More informationEmbedded systems engineering Distributed real-time systems
Embedded systems engineering Distributed real-time systems David Kendall David Kendall CM0605/KF6010 Lecture 09 1 / 15 Time is Central to Real-time and Embedded Systems Several timing analysis problems:
More informationQuicksort algorithm Average case analysis
Quicksort algorithm Average case analysis After today, you should be able to implement quicksort derive the average case runtime of quick sort and similar algorithms Q1-3 For any recurrence relation in
More informationAscertaining Uncertainty for Efficient Exact Cache Analysis
Ascertaining Uncertainty for Efficient Exact Cache Analysis Valentin Touzeau 1, Claire Maïza 1, David Monniaux 1, and Jan Reineke 2 1 Univ. Grenoble Alpes, VERIMAG, F-38000 Grenoble, France CNRS, VERIMAG,
More informationAutomatic Verification of Parameterized Data Structures
Automatic Verification of Parameterized Data Structures Jyotirmoy V. Deshmukh, E. Allen Emerson and Prateek Gupta The University of Texas at Austin The University of Texas at Austin 1 Outline Motivation
More information1 Showing Recognizability
CSCC63 Worksheet Recognizability and Decidability 1 1 Showing Recognizability 1.1 An Example - take 1 Let Σ be an alphabet. L = { M M is a T M and L(M) }, i.e., that M accepts some string from Σ. Prove
More informationRecap. CS514: Intermediate Course in Operating Systems. What time is it? This week. Reminder: Lamport s approach. But what does time mean?
CS514: Intermediate Course in Operating Systems Professor Ken Birman Vivek Vishnumurthy: TA Recap We ve started a process of isolating questions that arise in big systems Tease out an abstract issue Treat
More informationDepartment of Electrical and Computer Engineering University of Wisconsin - Madison. ECE/CS 752 Advanced Computer Architecture I.
Last (family) name: Solution First (given) name: Student I.D. #: Department of Electrical and Computer Engineering University of Wisconsin - Madison ECE/CS 752 Advanced Computer Architecture I Midterm
More informationFault Collapsing in Digital Circuits Using Fast Fault Dominance and Equivalence Analysis with SSBDDs
Fault Collapsing in Digital Circuits Using Fast Fault Dominance and Equivalence Analysis with SSBDDs Raimund Ubar, Lembit Jürimägi (&), Elmet Orasson, and Jaan Raik Department of Computer Engineering,
More informationProcess Algebras and Concurrent Systems
Process Algebras and Concurrent Systems Rocco De Nicola Dipartimento di Sistemi ed Informatica Università di Firenze Process Algebras and Concurrent Systems August 2006 R. De Nicola (DSI-UNIFI) Process
More informationAlgorithms and Data Structures
Algorithms and Data Structures, Divide and Conquer Albert-Ludwigs-Universität Freiburg Prof. Dr. Rolf Backofen Bioinformatics Group / Department of Computer Science Algorithms and Data Structures, December
More informationGreat Theoretical Ideas in Computer Science. Lecture 7: Introduction to Computational Complexity
15-251 Great Theoretical Ideas in Computer Science Lecture 7: Introduction to Computational Complexity September 20th, 2016 What have we done so far? What will we do next? What have we done so far? > Introduction
More informationTheory of Computer Science. Theory of Computer Science. D7.1 Introduction. D7.2 Turing Machines as Words. D7.3 Special Halting Problem
Theory of Computer Science May 2, 2018 D7. Halting Problem and Reductions Theory of Computer Science D7. Halting Problem and Reductions Gabriele Röger University of Basel May 2, 2018 D7.1 Introduction
More informationEAHyper: Satisfiability, Implication, and Equivalence Checking of Hyperproperties
EAHyper: Satisfiability, Implication, and Equivalence Checking of Hyperproperties Bernd Finkbeiner, Christopher Hahn, and Marvin Stenger Saarland Informatics Campus, Saarland University, Saarbrücken, Germany
More informationCOMS W4995 Introduction to Cryptography October 12, Lecture 12: RSA, and a summary of One Way Function Candidates.
COMS W4995 Introduction to Cryptography October 12, 2005 Lecture 12: RSA, and a summary of One Way Function Candidates. Lecturer: Tal Malkin Scribes: Justin Cranshaw and Mike Verbalis 1 Introduction In
More informationReasoning About Imperative Programs. COS 441 Slides 10b
Reasoning About Imperative Programs COS 441 Slides 10b Last time Hoare Logic: { P } C { Q } Agenda If P is true in the initial state s. And C in state s evaluates to s. Then Q must be true in s. Program
More informationVerification as Learning Geometric Concepts
Verification as Learning Geometric Concepts Rahul Sharma 1, Saurabh Gupta 2, Bharath Hariharan 2, Alex Aiken 1, and Aditya V. Nori 3 1 Stanford University, {sharmar,aiken}@cs.stanford.edu 2 University
More informationRSA Key Extraction via Low- Bandwidth Acoustic Cryptanalysis. Daniel Genkin, Adi Shamir, Eran Tromer
RSA Key Extraction via Low- Bandwidth Acoustic Cryptanalysis Daniel Genkin, Adi Shamir, Eran Tromer Mathematical Attacks Input Crypto Algorithm Key Output Goal: recover the key given access to the inputs
More information1 Column Generation and the Cutting Stock Problem
1 Column Generation and the Cutting Stock Problem In the linear programming approach to the traveling salesman problem we used the cutting plane approach. The cutting plane approach is appropriate when
More information(a) Definition of TMs. First Problem of URMs
Sec. 4: Turing Machines First Problem of URMs (a) Definition of the Turing Machine. (b) URM computable functions are Turing computable. (c) Undecidability of the Turing Halting Problem That incrementing
More informationNotes on Abstract Interpretation
Notes on Abstract Interpretation Alexandru Sălcianu salcianu@mit.edu November 2001 1 Introduction This paper summarizes our view of the abstract interpretation field. It is based on the original abstract
More informationBloom Filter Redux. CS 270 Combinatorial Algorithms and Data Structures. UC Berkeley, Spring 2011
Bloom Filter Redux Matthias Vallentin Gene Pang CS 270 Combinatorial Algorithms and Data Structures UC Berkeley, Spring 2011 Inspiration Our background: network security, databases We deal with massive
More informationDistributed Systems Part II Solution to Exercise Sheet 10
Distributed Computing HS 2012 Prof. R. Wattenhofer / C. Decker Distributed Systems Part II Solution to Exercise Sheet 10 1 Spin Locks A read-write lock is a lock that allows either multiple processes to
More informationStatic Program Analysis
Static Program Analysis Thomas Noll Software Modeling and Verification Group RWTH Aachen University https://moves.rwth-aachen.de/teaching/ss-18/spa/ Recap: Interprocedural Dataflow Analysis Outline of
More informationPrinciples of Computing, Carnegie Mellon University. The Limits of Computing
The Limits of Computing Intractability Limits of Computing Announcement Final Exam is on Friday 9:00am 10:20am Part 1 4:30pm 6:10pm Part 2 If you did not fill in the course evaluations please do it today.
More information1 Introduction. 1.1 The Problem Domain. Self-Stablization UC Davis Earl Barr. Lecture 1 Introduction Winter 2007
Lecture 1 Introduction 1 Introduction 1.1 The Problem Domain Today, we are going to ask whether a system can recover from perturbation. Consider a children s top: If it is perfectly vertically, you can
More informationCS612 Algorithm Design and Analysis
CS612 Algorithm Design and Analysis Lecture 16. Paging problem 1 Institute of Computing Technology Chinese Academy of Sciences, Beijing, China 1 The slides are made based on Algorithm Design, Randomized
More informationFinally the Weakest Failure Detector for Non-Blocking Atomic Commit
Finally the Weakest Failure Detector for Non-Blocking Atomic Commit Rachid Guerraoui Petr Kouznetsov Distributed Programming Laboratory EPFL Abstract Recent papers [7, 9] define the weakest failure detector
More informationTableau-based decision procedures for the logics of subinterval structures over dense orderings
Tableau-based decision procedures for the logics of subinterval structures over dense orderings Davide Bresolin 1, Valentin Goranko 2, Angelo Montanari 3, and Pietro Sala 3 1 Department of Computer Science,
More informationarxiv: v1 [cs.dc] 3 Oct 2011
A Taxonomy of aemons in Self-Stabilization Swan ubois Sébastien Tixeuil arxiv:1110.0334v1 cs.c] 3 Oct 2011 Abstract We survey existing scheduling hypotheses made in the literature in self-stabilization,
More informationDynamic Noninterference Analysis Using Context Sensitive Static Analyses. Gurvan Le Guernic July 14, 2007
Dynamic Noninterference Analysis Using Context Sensitive Static Analyses Gurvan Le Guernic July 14, 2007 1 Abstract This report proposes a dynamic noninterference analysis for sequential programs. This
More informationAbstract Interpretation, or Non-Standard Semantics, or Picking the Right Abstraction
Abstract Interpretation, or NonStandard Semantics, or Picking the Right Abstraction Meeting 14, SI 5535, Spring 29 Announcements Homework 3 is graded Graded out of 19, out of 38 on moodle because of.5
More information