1 / 44

Modeling and Analysis of Printer Data Paths using Synchronous Data Flow Graphs in Octopus

Modeling and Analysis of Printer Data Paths using Synchronous Data Flow Graphs in Octopus. Ashwini Moily Under the supervision of Dr. Lou Somers, Prof. Dr. T wan Basten, Dr. Nikola Trčka . Outline of the presentation. Introduction Octopus Problem Statement Tools used

kamuzu
Download Presentation

Modeling and Analysis of Printer Data Paths using Synchronous Data Flow Graphs in Octopus

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. Modeling and Analysis of Printer Data Paths using Synchronous Data Flow Graphs in Octopus Ashwini Moily Under the supervision of Dr. Lou Somers, Prof. Dr. Twan Basten, Dr. Nikola Trčka

  2. Outline of the presentation Introduction Octopus Problem Statement Tools used Translation procedures Issues with translation Completed objectives Planned objectives

  3. Introduction Octopus Problem Statement Tools used Translation procedures Issues with translation Completed objectives Planned objectives

  4. Introduction Research is carried out at Océ and ESI Part of the Octopus project Joint collaboration between Océ, ESI and several other Dutch academic research groups.

  5. Image pipelines for different use cases Printer Data flow path DF scanner Datapath Print imageQuality Cost price print process Time to market design finisher Features network Productivity (speed) paper trays Figure 1: Data flow in a printer at Océ Courtesy: Océ Technologies B.V

  6. Introduction Octopus Problem Statement Tools used Translation procedures Issues with translation Completed objectives Planned objectives

  7. Octopus Application Platform Mapping Analysis Diagnostics Figure 2 : The Y- chart[1] • Early design decisions • Design Space Exploration • Model driven approach • Y- chart methodology

  8. Octopus Figure 3a : Conceptual architecture of the integrated framework in Octopus

  9. Octopus toolset Figure 3b : Architecture of the toolset in Octopus

  10. Introduction Octopus Problem Statement Tools used Translation procedures Issues with translation Completed objectives Planned objectives

  11. Problem description Figure 4 : Architecture of the toolset in Octopus

  12. Problem Statement RASDF graph DSEIR model Figure 5 : Translation to be achieved • Conservative translation w.r.to throughput • Guaranteed worst-case throughput for the given model

  13. Introduction • Octopus • Problem Statement • Tools used • DSEIR • RASDF • SDF3 • ResVis • Translation procedures • Issues with translation • Completed objectives • Planned objectives

  14. DSEIR Application Platform Mapping Analysis Diagnostics Figure 6 : The Y- chart[1] • Design Space Exploration Intermediate Representation • Modeling language used to specify models • Components analogous to Y-chart: • Application • Tasks • Loads / handovers • Platform • Resources • Services • Mapping • Schedulers • Priority

  15. Application Globalvariable Taskguards Task name Task parameters Task Port Value sent over edge Tokens Edgecondition Edge Port condition Binding expression Figure 7 : Tasks and edges in DSEIR

  16. Platform Name Type of service Speed Capacity Figure 8 : Platform component in DSEIR • Resource • Name • Capacity • Speed • Type of service

  17. Load/ handover • Load : Amount of service required by a particular task • Handover : Amount of service handed over to the subsequent task Amount required Handover Figure 9 : Load perspective in DSEIR

  18. Mapping Fig 11: Schedulers and tasks with priorities Fig 10 :Schedulers and resources for each service • Schedulers : Map services to resources • Priorities : For each task instance • Pre emption : Allowed

  19. Introduction • Octopus • Problem Statement • Tools used • DSEIR • RASDF • SDF3 • ResVis • Translation procedures • Issues with translation • Completed objectives • Planned objectives

  20. RASDF Figure 12 : An example of SDF[3] Resource Aware Synchronous Data flow graphs Allow for design time analysis of multi processor systems

  21. Example of a RASDF graph Fig 13: Example of an RASDF graph

  22. Introduction • Octopus • Problem Statement • Tools used • DSEIR • RASDF • SDF3 • ResVis • Translation procedures • Issues with translation • Completed objectives • Planned objectives

  23. SDF3 Simulation tool used to analyze RASDF/ SDF graphs. Very fast throughput analysis Generates simulation traces  ResVis.

  24. Introduction • Octopus • Problem Statement • Tools used • DSEIR • RASDF • SDF3 • ResVis • Translation procedures • Issues with translation • Completed objectives • Planned objectives

  25. Trace file in ResVis Figure 14: Visualization of SDF3 trace files

  26. Introduction Octopus Problem Statement Tools used Translation procedures Issues with translation Completed objectives Planned objectives

  27. Approach used for translation DSEIR RASDF graph DSEIR-RASDF Figure 15 : Translation methodolgy

  28. DSEIR-RASDF • Restrictive subset of DSEIR • 1:1 mapping to RASDF • Features • Application • No edge, port or task condition • No token values • No parameters • No global variables • Platform • Fixed values; no distributions • Mapping • Non-preemption • Static priority • No expressions

  29. DSEIR-RASDF to RASDF • Translation • Application • Tasks  Actors • Edges  Channels • Ports  Input ports • Tokens  Rates • Platform • Resources  Resources • Mapping • Schedulers (with task and resource information)  resource for each task • Priority  priority

  30. RASDF to DSEIR-RASDF to RASDF • Testing purposes • RASDF to DSEIR-RASDF • Application • Actors  Tasks • Edges  Channels • Input ports  Ports • Rates of ports  tokens on ports • Platform • Resource  resources • Mapping • Task + resources  schedulers (Assumption : each task has an unique scheduler)

  31. RASDF to SDF3 to ResVis SDF3: Worst case guaranteed throughput for the DSEIR model Visualization of job traces with ResVis RASDF  SDF3  ResVis connection in Octopus

  32. Introduction Octopus Problem Statement Tools used Translation procedures Issues with DSEIRDSEIR-RASDF translation Completed objectives Planned objectives

  33. Issues with DSEIR DSEIR-RASDF translation • SDF3: Very fast memory efficient conservative throughput • DSEIR is more expressive than RASDF • Data dependent parameters • Variable load/ actor execution times • Data dependent choices • Data dependent loops • Variable production/consumption rates of data • Scheduling differences

  34. Issues • Data dependent parameters and variable load/ actor execution time • Solution: • No data dependent values • MinMaxExtractor: extract range • Could lead to: non-monotone models

  35. Non–monotone behavior • Variable execution time of actors • Maximum execution time does not guarantee worst case behavior • Detection of this behavior is extremely difficult

  36. Non monotone behavior Figure 16: An example of RASDF

  37. Non monotone behavior • Simulation traces

  38. Issues Not yet solved • Data dependent choices • Selecting one among the choices OR • Executing all choices and comparing throughput behavior • Scheduling differences • Static non-preemptive scheduling • Variable production/consumption rates of data • Worst case behavior • Data dependent loops

  39. Introduction Octopus Problem Statement Tools used Translation procedures Issues with translation Completed objectives Planned objectives

  40. Completed objectives DSEIR-RASDF  RASDF  SDF3 RASDF  DSEIR-RASDF  RASDF  SDF3 DSEIR DSEIR-RASDF RASDF SDF3ResVis translation that gives a set of models for varying execution times Verify the translation using the different use cases of the printers Use SDF3 to detect non-monotone behavior

  41. Introduction Octopus Problem Statement Tools used Translation procedures Issues with translation Completed objectives Planned objectives

  42. Objectives that are yet to be realized Implement a smart algorithm that detects non monotone behavior using SDF3 without having to search the entire state space. Try to implement an algorithm that will detect non monotone behavior by static analysis of the DSEIR model (without using SDF3) Implement checks to detect the type of models that can or cannot be translated. Extend this further to accommodate more models. Create a plug-in that will read DSEIR models from the editor and directly produce the throughput behavior for the model.

  43. Questions/ Feedback

  44. Thank you

More Related