modeling and analysis of data flow graphs using the
play

Modeling and Analysis of Data Flow Graphs using the Digraph - PowerPoint PPT Presentation

Modeling and Analysis of Data Flow Graphs using the Digraph Real-Time Task Model Morteza Mohaqeqi, Jakaria Abdullah, and Wang Yi Uppsala University Ada-Europe 2016 Overview Introduction Data Flow Graphs: [ 1 , 3 ] [ 2 ] Signal processing a


  1. Modeling and Analysis of Data Flow Graphs using the Digraph Real-Time Task Model Morteza Mohaqeqi, Jakaria Abdullah, and Wang Yi Uppsala University Ada-Europe 2016

  2. Overview Introduction Data Flow Graphs: [ 1 , 3 ] [ 2 ] Signal processing a b Stream processing [ 2 ] [ 1 , 1 , 4 ] Data dependency Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 1 / 19

  3. Overview Introduction Data Flow Graphs: [ 1 , 3 ] [ 2 ] Signal processing a b Stream processing [ 2 ] [ 1 , 1 , 4 ] Data dependency Design Objectives Throughput maximization Design Constraints Buffer overflow/underflow avoidance Schedulability Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 1 / 19

  4. Overview An Overview The Problem: Our Approach: A Set of Data A Set of Data Flow Graphs Flow Graphs Transform Schedule Real-Time Tasks Processor Schedule Processor Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 2 / 19

  5. Overview An Overview The Problem: Our Approach: A Set of Data A Set of Data Flow Graphs Flow Graphs Transform Schedule Real-Time Tasks Processor Schedule Processor Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 2 / 19

  6. Overview An Overview The Problem: Our Approach: A Set of Data A Set of Data Flow Graphs Flow Graphs Transform Schedule Real-Time Tasks Periodic Processor Schedule Processor Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 2 / 19

  7. Overview An Overview The Problem: Our Approach: A Set of Data A Set of Data Flow Graphs Flow Graphs Transform Schedule Real-Time Tasks Digraph RT Processor Schedule Processor Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 2 / 19

  8. Overview Previous Work a b periodic periodic DRT periodic periodic task task Our work Our work Strictly Period Schedule Strictly period schedule Digraph Real-Time (DRT) Digraph Real-Time (DRT) [Bouakaz 2014] [Bouakaz 2014] task model [Stigge et al 2011] task model [Stigge et al 2013] Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 3 / 19

  9. Overview Previous Work a b periodic periodic DRT periodic periodic task task Our work Our work Strictly Period Schedule Strictly period schedule Digraph Real-Time (DRT) Digraph Real-Time (DRT) [Bouakaz 2014] [Bouakaz 2014] task model [Stigge et al 2011] task model [Stigge et al 2013] Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 3 / 19

  10. Outline Introduction 1 Method 2 Evaluation 3 Conclusion 4 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 4 / 19

  11. Introduction (Static) Data Flow Graphs Synchronous Cyclo-Static Data Flow Data Flow [ 2 ] [ 1 ] [ 1 , 3 ] [ 2 ] a b a b [ 2 ] [ 1 , 1 , 4 ] Fixed token production Variable token production (consumption) rate (consumption) rate Fixed execution time Variable execution time Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 5 / 19

  12. Introduction Semantics Empty buffer [ 2 ] [ 1 ] a b size = 2 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 6 / 19

  13. Introduction Semantics Empty buffer ’ a ’ can be fired [ 2 ] [ 1 ] a a b size = 2 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 6 / 19

  14. Introduction Semantics Full buffer [ 2 ] [ 1 ] a b size = 2 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 6 / 19

  15. Introduction Semantics Full buffer ’ a ’ cannot be fired ’ b ’ can be fired [ 2 ] [ 1 ] a b b size = 2 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 6 / 19

  16. Introduction Semantics ’ a ’ cannot be fired ’ b ’ can be fired [ 2 ] [ 1 ] a b b size = 2 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 6 / 19

  17. Introduction Semantics Empty buffer ’ a ’ can be fired [ 2 ] [ 1 ] a a b size = 2 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 6 / 19

  18. Introduction Constraints Design Constraints Underflow/overflow avoidance Schedulability Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 7 / 19

  19. Introduction Underflow and Overflow Underflow avoidance [ 2 ] [ 1 ] a b T a t T b t 0 5 10 Cannot be fired Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 8 / 19

  20. Introduction Underflow and Overflow Underflow avoidance [ 2 ] [ 1 ] a b T a t offset T b t 0 5 10 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 8 / 19

  21. Introduction Underflow and Overflow Produce token as soon as possible Consume token as late as possible [ 2 ] [ 1 ] a b T a t offset T b t 0 5 10 tokens t 0 5 10 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 8 / 19

  22. Introduction Underflow and Overflow Produce token as soon as possible Consume token as late as possible [ 2 ] [ 1 ] a b T a t offset T b t 0 5 10 tokens buffer size=5 no overflow t 0 5 10 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 8 / 19

  23. Introduction Constraints Design Constraints Underflow/overflow avoidance Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 9 / 19

  24. Introduction Constraints Design Constraints Underflow/overflow avoidance Schedulability Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 9 / 19

  25. Introduction Constraints Design Constraints Underflow/overflow avoidance Schedulability [ 2 ] [ 1 ] a b C a = 2 T a t offset C b = 2 T b t 0 5 10 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 9 / 19

  26. Introduction Constraints Design Constraints Underflow/overflow avoidance Schedulability [ 2 ] [ 1 ] a b C a = 2 T a t offset C b = 2 T b t 0 5 10 Unschedulable! Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 9 / 19

  27. Introduction Constraints Design Constraints Underflow/overflow avoidance Schedulability [ 2 ] [ 1 ] a b C a = 2 T a t offset C b = 2 T b t 0 5 10 Larger Periods Lower Throughput Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 9 / 19

  28. Introduction The Problem Design Parameters Periods Offsets Constraints No underflow No overflow Schedulability Objective Throughput maximization Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 10 / 19

  29. Introduction Cyclo-Static Data Flow Graphs Repeating pattern [ 10 , 10 , 0 , 0 ] [ 5 , 5 , 5 , 5 ] a b 10 10 0 0 10 10 0 0 10 10 T a t 5 5 5 5 5 5 5 5 T b t 0 5 10 15 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 11 / 19

  30. Introduction Cyclo-Static Data Flow Graphs Repeating pattern [ 10 , 10 , 0 , 0 ] [ 5 , 5 , 5 , 5 ] a b 10 10 0 0 10 10 0 0 10 10 T a t 5 5 5 5 5 5 5 5 T b t 0 5 10 15 tokens size=25 25 20 15 10 5 t 0 5 10 15 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 11 / 19

  31. Introduction Cyclo-Static Data Flow Graphs Repeating pattern [ 10 , 10 , 0 , 0 ] [ 5 , 5 , 5 , 5 ] a b 10 10 0 0 10 10 0 0 10 deadline T a t 5 5 5 5 5 5 5 5 T b t 0 5 10 15 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 11 / 19

  32. Introduction Cyclo-Static Data Flow Graphs Repeating pattern [ 10 , 10 , 0 , 0 ] [ 5 , 5 , 5 , 5 ] a b 10 10 0 0 10 10 0 0 10 deadline T a t 5 5 5 5 5 5 5 5 T b t 0 5 10 15 tokens 25 size=20 20 15 10 5 t 0 5 10 15 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 11 / 19

  33. Introduction We need a non-periodic task model Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 12 / 19

  34. Introduction Scheduling Data Flow Graphs Synchronous Data Flow Fixed behavior Periodically repeating [ 2 ] [ 1 ] a b T a t 0 4 8 12 T b t 0 4 8 12 offset Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 13 / 19

  35. Introduction Scheduling Data Flow Graphs Synchronous Data Flow Cyclo-Static Data Flow Changing behavior Fixed behavior Periodically repeating Repeating pattern [ 1 , 3 ] [ 2 ] [ 2 ] [ 1 ] a b a b [ 2 ] [ 1 , 1 , 4 ] T a t 0 4 8 12 T b t 0 4 8 12 offset Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 13 / 19

  36. Introduction Scheduling Data Flow Graphs Synchronous Data Flow Cyclo-Static Data Flow Changing behavior Fixed behavior Periodically repeating Repeating pattern [ 1 , 3 ] [ 2 ] [ 2 ] [ 1 ] a b a b [ 2 ] [ 1 , 1 , 4 ] T a t 0 4 8 12 The Digraph Real- T b t Time task model. 0 4 8 12 offset Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 13 / 19

  37. Introduction The Digraph Real-Time (DRT) Task Model A graph-based representation Different job types 8 v 1 v 2 � 2 , 5 � � 1 , 3 � 10 8 5 v 3 � 1 , 6 � 10 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 14 / 19

  38. Introduction The Digraph Real-Time (DRT) Task Model A graph-based representation Different job types 8 v 1 v 2 � 2 , 5 � � 1 , 3 � 10 8 5 v 3 � 1 , 6 � 10 v 1 v 2 v 3 v 1 v 1 v 2 v 3 v 1 t 0 5 10 15 20 Mohaqeqi et al. (Uppsala University) Analysis of Data Flow Graphs 14 / 19

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend