On Using Linearly Priced Timed Automata for Flow Analysis

Slides:



Advertisements
Similar presentations
Clocked Mazurkiewicz Traces and Partial Order Reductions for Timed Automata D. Lugiez, P. Niebert, S. Zennou Laboratoire d Informatique Fondamentale de.
Advertisements

Heuristic Search techniques
Complexity Classes: P and NP
Masahiro Fujita Yoshihisa Kojima University of Tokyo May 2, 2008
Scheduling in Distributed Systems Gurmeet Singh CS 599 Lecture.
Greedy Algorithms.
Explicit Preemption Placement for Real- Time Conditional Code via Graph Grammars and Dynamic Programming Bo Peng, Nathan Fisher, and Marko Bertogna Department.
UPPAAL Introduction Chien-Liang Chen.
Hybrid System Verification Synchronous Workshop 2003 A New Verification Algorithm for Planar Differential Inclusions Gordon Pace University of Malta December.
Timed Automata.
Greedy Algorithms Greed is good. (Some of the time)
Testing Concurrent/Distributed Systems Review of Final CEN 5076 Class 14 – 12/05.
UPPAAL Andreas Hadiyono Arrummaisha Adrifina Harya Iswara Aditya Wibowo Juwita Utami Putri.
Verification of Hybrid Systems An Assessment of Current Techniques Holly Bowen.
Compatibility between shared variable valuations in timed automaton network model- checking Zhao Jianhua, Zhou Xiuyi, Li Xuandong, Zheng Guoliang Presented.
Review of topics Final exam : -May 2nd to May 7 th - Projects due on May 7th.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Algorithm Strategies Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
A Schedulability-Preserving Transformation of BDF to Petri Nets Cong Liu EECS 290n Class Project December 10, 2004.
Solving the Protein Threading Problem in Parallel Nocola Yanev, Rumen Andonov Indrajit Bhattacharya CMSC 838T Presentation.
Programming Fundamentals (750113) Ch1. Problem Solving
End-to-End Design of Embedded Real-Time Systems Kang G. Shin Real-Time Computing Laboratory EECS Department The University of Michigan Ann Arbor, MI
Threshold Voltage Assignment to Supply Voltage Islands in Core- based System-on-a-Chip Designs Project Proposal: Gall Gotfried Steven Beigelmacher 02/09/05.
272: Software Engineering Fall 2012 Instructor: Tevfik Bultan Lecture 4: SMT-based Bounded Model Checking of Concurrent Software.
Data Structures and Algorithms Graphs Minimum Spanning Tree PLSD210.
ULB, November 2004 As cheap as possible: Linearly Priced Timed Automata Gerd Behrmann, Ed Brinksma, Ansgar Fehnker, Thomas Hune, Kim Larsen, Paul Pettersson,
Design Space Exploration
ECE 720T5 Winter 2014 Cyber-Physical Systems Rodolfo Pellizzoni.
Load Balancing and Termination Detection Load balance : - statically before the execution of any processes - dynamic during the execution of the processes.
ParaScale : Exploiting Parametric Timing Analysis for Real-Time Schedulers and Dynamic Voltage Scaling Sibin Mohan 1 Frank Mueller 1,William Hawkins 2,
Transformation of Timed Automata into Mixed Integer Linear Programs Sebastian Panek.
1 Automatic Refinement and Vacuity Detection for Symbolic Trajectory Evaluation Orna Grumberg Technion Haifa, Israel Joint work with Rachel Tzoref.
Timed Use Case Maps Jameleddine Hassine Concordia University, Montreal, Canada URN Meeting, Ottawa, January 16-18, 2008.
Computer Science 340 Software Design & Testing UML Sequence Diagrams.
Mark Marron 1, Deepak Kapur 2, Manuel Hermenegildo 1 1 Imdea-Software (Spain) 2 University of New Mexico 1.
Resource Mapping and Scheduling for Heterogeneous Network Processor Systems Liang Yang, Tushar Gohad, Pavel Ghosh, Devesh Sinha, Arunabha Sen and Andrea.
6. A PPLICATION MAPPING 6.3 HW/SW partitioning 6.4 Mapping to heterogeneous multi-processors 1 6. Application mapping (part 2)
1 Outline:  Optimization of Timed Systems  TA-Modeling of Scheduling Tasks  Transformation of TA into Mixed-Integer Programs  Tree Search for TA using.
Modeling and Analysis of Printer Data Paths using Synchronous Data Flow Graphs in Octopus Ashwini Moily Under the supervision of Dr. Lou Somers, Prof.
CSCI1600: Embedded and Real Time Software Lecture 11: Modeling IV: Concurrency Steven Reiss, Fall 2015.
CSCI1600: Embedded and Real Time Software Lecture 33: Worst Case Execution Time Steven Reiss, Fall 2015.
CS412/413 Introduction to Compilers Radu Rugina Lecture 18: Control Flow Graphs 29 Feb 02.
1 Control Flow Graphs. 2 Optimizations Code transformations to improve program –Mainly: improve execution time –Also: reduce program size Can be done.
High Performance Embedded Computing © 2007 Elsevier Lecture 4: Models of Computation Embedded Computing Systems Mikko Lipasti, adapted from M. Schulte.
Controller Synthesis For Timed Automata Authors : Eugene Asarin, Oded Maler, Amir Pnueli and Joseph Sifakis Yean-Ru Chen Embedded System Laboratory of.
Timing Anomalies in Dynamically Scheduled Microprocessors Thomas Lundqvist, Per Stenstrom (RTSS ‘99) Presented by: Kaustubh S. Patil.
UPPAAL Real-Time Systems Lab. Seolyoung, Jeong.
SS 2017 Software Verification Timed Automata
Shortest Paths.
Factor Graphs and the Sum-Product Algorithm
Gabor Madl Ph.D. Candidate, UC Irvine Advisor: Nikil Dutt
CSCI1600: Embedded and Real Time Software
Network Flow 2016/04/12.
Analysis of Algorithms
Shortest Paths.
Alternating tree Automata and Parity games
Programming Fundamentals (750113) Ch1. Problem Solving
CSEP590 – Model Checking and Automated Verification
Over-Approximating Boolean Programs with Unbounded Thread Creation
Making Change Coins: 2 and
Trace-based Just-in-Time Type Specialization for Dynamic Languages
Ants and the TSP.
Discrete Controller Synthesis
Lecture 14 Shortest Path (cont’d) Minimum Spanning Tree
Shortest Paths.
Lecture 13 Shortest Path (cont’d) Minimum Spanning Tree
CSCI1600: Embedded and Real Time Software
Data Structures and Algorithms
Discrete Optimization
Presentation transcript:

On Using Linearly Priced Timed Automata for Flow Analysis MdH – 23/11/2005 Meeting On Using Linearly Priced Timed Automata for Flow Analysis

What is a LPTA? Timed Automata with extension: cost accumulation during behavior More formally: tuple A=(L, C, l0, E, I, P) Cost for taking an edge is Pe, and for staying n cycles in a state is Ps*n (should be > 0) Look for min cost ending of traces ending in a goal state Can “guide” the state space exploration with manually entered heuristics Use branch and bound techniques

Example of LPTA Min from left to right: 14

LPTA and Scheduling Problems Optimal Task Graph Scheduling (TGS): schedule a number of interdependent tasks on heterogeneous processors Use a network of TA to simulate the multiple processes Inter-process Interaction: synchronization channels Time duration: Guarded edges over clock variables Associate cost to edges and states Uses work on priced symbolic state for solving

Similarity to Flow Analysis Flow analysis: extract the dynamic behavior of the prog Flow extraction, representation, calculation conversion LPTA: good for extraction and representation at least (safe and tight # of iterations) Cost is time (can also be modeled as clock guards…) Network of TA can simulate multiple processes

Cont’d Instead of trying to find the optimal path cost-wise, we try to find the *least* optimal price Need to modify Branch and Bound algorithm Alternatively: use negative cost for guards: the more transitions, the better=WCET (need to extend the framework a little bit) Priced Symbolic State ↔ Symbolic Evaluation method Reachability Analysis ↔ Infeasible Path Determination Priced Clock Region ↔ State Space Reduction

Min and Max Algorithms Cost = inf Passed =empty Waiting = {(l0, C0)} While Waiting != empty select (l, C) from Waiting if (l, C) ╞  and min(C) < cost then Cost = min(C) if  (l, C’) in Passed: C’ !subset C then add (l, C) to Passed  (m, D), (l, C) ~>(m, D): add (m, D) to Waiting Return Cost Cost = 0 Passed =empty Waiting = {(l0, C0)} While Waiting != empty select (l, C) from Waiting if (l, C) ╞  and max(C) > cost then Cost = max(C) if  (l, C’) in Passed: C’ !subset C then add (l, C) to Passed  (m, D), (l, C) ~>(m, D): add (m, D) to Waiting Return Cost

Obvious Corollaries Problems: Still need to derive platform specific timing to quantify actual WCET Need to convert existing code to LPTA and extract platform dependent models Recursion! BUT: Can work on a higher level than either source/intermediate/machine code Allows for upstream formal testing Simplicity of modeling aspect Powerful tools for analysis exist (notably Uppaal CORA)

Tiny Uppaal Example Taken from Ebbe’s thesis Note: we’re not using the CORA variant

Closing Thoughts Concepts still need refinement How does LPTA compare to syntax/time trees? Is it really useful?