1 / 10

MdH – 23/11/2005 Meeting

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 )

sukey
Download Presentation

MdH – 23/11/2005 Meeting

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. 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

  3. Example of LPTA Min from left to right: 14

  4. 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

  5. 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

  6. 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

  7. 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 Min and Max Algorithms

  8. 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)

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

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

More Related