combinatorial abstraction refinement for feasibility
play

Combinatorial Abstraction Refinement for Feasibility Analysis - PowerPoint PPT Presentation

Combinatorial Abstraction Refinement for Feasibility Analysis Martin Stigge Uppsala University, Sweden Joint work with Wang Yi Problem Overview Workload Model Scheduler Model Task A Task B EDF/Static Prio/... Task C Task A t Task B t


  1. Combinatorial Abstraction Refinement for Feasibility Analysis Martin Stigge Uppsala University, Sweden Joint work with Wang Yi

  2. Problem Overview Workload Model Scheduler Model Task A Task B EDF/Static Prio/... Task C Task A t Task B t Schedulable? Martin Stigge Combinatorial Abstraction Refinement 2

  3. Problem Overview Workload Model Scheduler Model High priority Medium priority A 2 A 3 B 2 EDF/Static Prio/... A 1 A 4 B 1 B 3 DRT Low priority C Our Setting: Task A t • DRT tasks Task B • Static Priorities t Schedulable? • Precise Test Martin Stigge Combinatorial Abstraction Refinement 2

  4. The Digraph Real-Time (DRT) Task Model (S. et al, RTAS 2011) • Generalizes periodic, sporadic, GMF, RRT, . . . • Directed graph for each task • Vertices J : jobs to be released (with WCET and deadline) • Edges ( J i , J j ): minimum inter-release delays p ( J i , J j ) J 5 50 13 J 2 18 29 J 1 25 100 J 4 J 3 12 10 Martin Stigge Combinatorial Abstraction Refinement 3

  5. DRT: Semantics � 5 , 25 � � 10 , 50 � J 5 50 13 J 2 18 29 J 1 25 100 � 6 , 10 � J 4 J 3 12 10 � 2 , 12 � � 1 , 10 � Martin Stigge Combinatorial Abstraction Refinement 4

  6. DRT: Semantics � 5 , 25 � � 10 , 50 � J 5 50 13 J 2 18 29 J 1 25 100 � 6 , 10 � J 4 J 3 12 10 � 2 , 12 � � 1 , 10 � Path π = ( J 1 ) 10 6 t 0 10 Martin Stigge Combinatorial Abstraction Refinement 4

  7. DRT: Semantics � 5 , 25 � � 10 , 50 � J 5 50 13 J 2 18 29 J 1 25 100 � 6 , 10 � J 4 J 3 12 10 � 2 , 12 � � 1 , 10 � Path π = ( J 1 , J 2 ) 10 25 6 5 t 0 10 13 38 13 Martin Stigge Combinatorial Abstraction Refinement 4

  8. DRT: Semantics � 5 , 25 � � 10 , 50 � J 5 50 13 J 2 18 29 J 1 25 100 � 6 , 10 � J 4 J 3 12 10 � 2 , 12 � � 1 , 10 � Path π = ( J 1 , J 2 , J 3 ) 10 25 10 ... 6 5 1 t 0 10 13 38 44 54 13 � 29 Martin Stigge Combinatorial Abstraction Refinement 4

  9. Complexity Results for DRT Schedulability EDF Static Priorities • Strongly coNP-hard • Pseudo-polynomial • Dbf-based analysis • Already for trees or cycles [RTAS 2011] [ECRTS 2012] • Equivalent to Feasibility • Efficient solution? Martin Stigge Combinatorial Abstraction Refinement 5

  10. Complexity Results for DRT Schedulability EDF Static Priorities • Strongly coNP-hard • Pseudo-polynomial • Dbf-based analysis • Already for trees or cycles [RTAS 2011] [ECRTS 2012] • Equivalent to Feasibility • Efficient solution? Martin Stigge Combinatorial Abstraction Refinement 5

  11. Fahrplan Problem Introduction 1 Digraph Real-Time Tasks Complexity Results Analysis Approach 2 Request Functions Rf-based Test Combinatorial Abstraction Refinement 3 Abstraction Trees Refinement Procedure Evaluation 4 Martin Stigge Combinatorial Abstraction Refinement 6

  12. Fahrplan Problem Introduction 1 Digraph Real-Time Tasks Complexity Results Analysis Approach 2 Request Functions Rf-based Test Combinatorial Abstraction Refinement 3 Abstraction Trees Refinement Procedure Evaluation 4 Martin Stigge Combinatorial Abstraction Refinement 6

  13. Testing the Scheduling Window High priority Medium priority Low priority A 2 B 2 A 3 C A 1 B 1 B 3 A 4 Is C schedulable? t Scheduling window of C Martin Stigge Combinatorial Abstraction Refinement 7

  14. Testing the Scheduling Window High priority Medium priority Low priority A 2 B 2 B 2 A 3 C A 1 B 1 B 3 B 3 A 4 Is C schedulable? A 2 , B 1 A 1 B 3 A 3 A 2 B 2 A 1 B 3 A 3 t Scheduling window of C Martin Stigge Combinatorial Abstraction Refinement 7

  15. Request Functions � 5 , 25 � � 10 , 50 � J 5 50 13 J 2 18 29 J 1 25 100 � 6 , 10 � J 4 J 3 12 10 � 2 , 12 � � 1 , 10 � rf ( t ) rf ( J 1 , J 2 , J 3 ) 12 10 8 6 4 2 0 t 0 5 10 15 20 25 30 35 40 45 50 Martin Stigge Combinatorial Abstraction Refinement 8

  16. Request Functions: Schedulability Test Lemma A job J is schedulable iff for all combinations of request functions rf ( T ) of higher priority tasks: � rf ( T ) ( t ) � t . ∃ t � d ( J ) : e ( J ) + (1) T ∈ τ e ( J ) + � rf ( T ) ( t ) t Scheduling window d ( J ) Martin Stigge Combinatorial Abstraction Refinement 9

  17. Request Functions: Schedulability Test Lemma A job J is schedulable iff for all combinations of request functions rf ( T ) of higher priority tasks: � rf ( T ) ( t ) � t . ∃ t � d ( J ) : e ( J ) + (1) T ∈ τ e ( J ) + � rf ( T ) ( t ) t Scheduling window d ( J ) Martin Stigge Combinatorial Abstraction Refinement 9

  18. Request Functions: Schedulability Test Lemma A job J is schedulable iff for all combinations of request functions rf ( T ) of higher priority tasks: � rf ( T ) ( t ) � t . ∃ t � d ( J ) : e ( J ) + (1) T ∈ τ e ( J ) + � rf ( T ) ( t ) Problem: Naive test double exponential! t 1 Number of paths per task Scheduling window d ( J ) 2 Number of combinations Martin Stigge Combinatorial Abstraction Refinement 9

  19. Request Functions: Domination � 5 , 25 � � 10 , 50 � J 5 50 13 J 2 18 29 J 1 25 100 � 6 , 10 � J 4 J 3 12 10 � 2 , 12 � � 1 , 10 � rf ( t ) rf ( J 1 , J 2 , J 3 ) 12 10 8 6 4 2 0 t 0 5 10 15 20 25 30 35 40 45 50 Martin Stigge Combinatorial Abstraction Refinement 10

  20. Request Functions: Domination � 5 , 25 � � 10 , 50 � J 5 50 13 J 2 18 29 J 1 25 100 � 6 , 10 � J 4 J 3 12 10 � 2 , 12 � � 1 , 10 � rf ( t ) rf ( J 1 , J 2 , J 3 ) 12 10 rf ( J 3 , J 4 , J 2 ) 8 6 4 2 0 t 0 5 10 15 20 25 30 35 40 45 50 Martin Stigge Combinatorial Abstraction Refinement 10

  21. Request Functions: Domination � 5 , 25 � � 10 , 50 � J 5 50 13 J 2 18 29 J 1 25 100 � 6 , 10 � J 4 J 3 12 10 � 2 , 12 � � 1 , 10 � rf ( t ) rf ( J 1 , J 2 , J 3 ) 12 10 rf ( J 3 , J 4 , J 2 ) 8 � 6 4 2 0 t 0 5 10 15 20 25 30 35 40 45 50 Martin Stigge Combinatorial Abstraction Refinement 10

  22. Combinatorial Explosion Lemma A job J is schedulable if for all combinations of request functions rf ( T ) of higher priority tasks: � rf ( T ) ( t ) � t . ∃ t � d ( J ) : e ( J ) + (1) T ∈ τ What about the Combinatorial Explosion? Martin Stigge Combinatorial Abstraction Refinement 11

  23. Overapproximation: mrf • Approach: Define an overapproximation • mrf ( T ) ( t ): Maximum of all rf ( T ) ( t ) for a task T • “Request-Bound Function” • “Workload-Arrival Function” • New test: � mrf ( T ) ( t ) � t . ∃ t � d ( J ) : e ( J ) + T ∈ τ • Efficient : Only one test, no combinatorial explosion Martin Stigge Combinatorial Abstraction Refinement 12

  24. Overapproximation: mrf • Approach: Define an overapproximation • mrf ( T ) ( t ): Maximum of all rf ( T ) ( t ) for a task T • “Request-Bound Function” • “Workload-Arrival Function” • New test: � mrf ( T ) ( t ) � t . ∃ t � d ( J ) : e ( J ) + T ∈ τ • Efficient : Only one test, no combinatorial explosion • Problem: Imprecise! rf ( t ) 10 � 2 , 5 � J 1 mrf 20 8 6 rf ( v 2 , v 1 ) 30 5 4 rf ( v 1 , v 2 ) 2 t 0 � 6 , 30 � J 2 50 0 2 4 6 8 Martin Stigge Combinatorial Abstraction Refinement 12

  25. Overapproximation: mrf • Approach: Define an overapproximation • mrf ( T ) ( t ): Maximum of all rf ( T ) ( t ) for a task T • “Request-Bound Function” • “Workload-Arrival Function” • New test: � mrf ( T ) ( t ) � t . ∃ t � d ( J ) : e ( J ) + T ∈ τ • Efficient : Only one test, no combinatorial explosion • Problem: Imprecise! rf ( t ) 10 � 2 , 5 � J 1 mrf 20 8 How can we get efficiency and precision? 6 rf ( v 2 , v 1 ) 30 5 4 rf ( v 1 , v 2 ) 2 t 0 � 6 , 30 � J 2 50 0 2 4 6 8 Martin Stigge Combinatorial Abstraction Refinement 12

  26. Abstraction Tree rf 1 rf 2 rf 5 rf 3 rf 4 Define an abstraction tree per task: • Leaves are concrete rf • Each node: maximum function of child nodes • Root is mrf , maximum of all rf Martin Stigge Combinatorial Abstraction Refinement 13

  27. Abstraction Tree rf 1 rf 2 rf 5 rf 3 rf 4 Define an abstraction tree per task: • Leaves are concrete rf • Each node: maximum function of child nodes • Root is mrf , maximum of all rf Martin Stigge Combinatorial Abstraction Refinement 13

  28. Abstraction Tree rf 1 rf 2 rf 5 rf 3 rf 4 Define an abstraction tree per task: • Leaves are concrete rf • Each node: maximum function of child nodes • Root is mrf , maximum of all rf Martin Stigge Combinatorial Abstraction Refinement 13

  29. Abstraction Tree rf 1 rf 2 rf 5 rf 3 rf 4 Define an abstraction tree per task: • Leaves are concrete rf • Each node: maximum function of child nodes • Root is mrf , maximum of all rf Martin Stigge Combinatorial Abstraction Refinement 13

  30. Abstraction Tree mrf rf 1 rf 2 rf 5 rf 3 rf 4 Define an abstraction tree per task: • Leaves are concrete rf • Each node: maximum function of child nodes • Root is mrf , maximum of all rf Martin Stigge Combinatorial Abstraction Refinement 13

Recommend


More recommend