Meeting 17 may

Download Report

Transcript Meeting 17 may

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
Outline of the presentation
•
•
•
•
•
•
•
•
2
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
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.
Octopus
Toolset
4
Printer Data flow path
DF
scanner
print process
Print image
Quality
Data
path
design
finisher
Productivity
(speed)
paper trays
• Image pipelines for different use cases
scanner
corrections
resample,
rotate,
histogram
Figure 1: Data flow in a printer at Océ
Time to market
Features
network
5
Cost price
filtering
contrast
enhancement
print engine
corrections,
halftoning
Courtesy: Océ Technologies B.V
•
•
•
•
•
•
•
•
6
Introduction
Octopus
Problem Statement
Tools used
Translation procedures
Issues with translation
Completed objectives
Planned objectives
Octopus
•
•
•
•
Early design decisions
Design Space Exploration
Model driven approach
Y- chart methodology
Platform
Application
Mapping
Analysis
Diagnostics
Figure 2 : The Y- chart[1]
7
Octopus
Figure 3a : Conceptual architecture of the integrated framework in Octopus
8
Octopus toolset
Figure 3b : Architecture of the toolset in Octopus
9
•
•
•
•
•
•
•
•
10
Introduction
Octopus
Problem Statement
Tools used
Translation procedures
Issues with translation
Completed objectives
Planned objectives
Problem description
Figure 4 : Architecture of the toolset in Octopus
11
Problem Statement
DSEIR
model
RASDF
graph
Figure 5 : Translation to be achieved
•
•
12
Conservative translation w.r.to throughput
Guaranteed worst-case throughput for the
given model
•
•
•
•
Introduction
Octopus
Problem Statement
Tools used
•
•
•
•
•
•
•
•
13
DSEIR
RASDF
SDF3
ResVis
Translation procedures
Issues with translation
Completed objectives
Planned objectives
DSEIR
• 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
14
Platform
Application
Mapping
Analysis
Diagnostics
Figure 6 : The Y- chart[1]
Application
Global
variable
Task
name
Task
Task
guards
Task
parameters
Port
Value sent
over edge
Tokens
Edge
condition
Port
conditio
n
15
Edge
Binding
expression
Figure 7 : Tasks and edges in DSEIR
Platform
• Resource
•
•
•
•
Name
Capacity
Capacity
Speed
Type of service
Name
Type of
service
Speed
Figure 8 : Platform component in DSEIR
16
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
17
Mapping
• Schedulers : Map services to resources
• Priorities : For each task instance
• Pre emption : Allowed
Fig 10 :Schedulers and resources for each service
18
Fig 11: Schedulers and tasks with priorities
•
•
•
•
Introduction
Octopus
Problem Statement
Tools used
•
•
•
•
•
•
•
•
19
DSEIR
RASDF
SDF3
ResVis
Translation procedures
Issues with translation
Completed objectives
Planned objectives
RASDF
• Resource Aware Synchronous Data flow graphs
• Allow for design time analysis of multi processor
systems
Figure 12 : An example of SDF[3]
20
Example of a RASDF graph
Fig 13: Example of an RASDF graph
21
•
•
•
•
Introduction
Octopus
Problem Statement
Tools used
•
•
•
•
•
•
•
•
22
DSEIR
RASDF
SDF3
ResVis
Translation procedures
Issues with translation
Completed objectives
Planned objectives
SDF3
• Simulation tool used to analyze RASDF/ SDF graphs.
• Very fast throughput analysis
• Generates simulation traces  ResVis.
23
•
•
•
•
Introduction
Octopus
Problem Statement
Tools used
•
•
•
•
•
•
•
•
24
DSEIR
RASDF
SDF3
ResVis
Translation procedures
Issues with translation
Completed objectives
Planned objectives
Trace file in ResVis
Figure 14: Visualization of SDF3 trace files
25
•
•
•
•
•
•
•
•
26
Introduction
Octopus
Problem Statement
Tools used
Translation procedures
Issues with translation
Completed objectives
Planned objectives
Approach used for translation
DSEIR
RASDF
graph
DSEIRRASDF
Figure 15 : Translation methodolgy
27
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
28
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
29
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)
30
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
31
•
•
•
•
•
•
•
•
32
Introduction
Octopus
Problem Statement
Tools used
Translation procedures
Issues with DSEIRDSEIR-RASDF translation
Completed objectives
Planned objectives
Issues with DSEIR DSEIR-RASDF translation
1. SDF3: Very fast memory efficient
throughput
2. DSEIR is more expressive than RASDF
1.
2.
3.
4.
5.
6.
33
conservative
Data dependent parameters
Variable load/ actor execution times
Data dependent choices
Data dependent loops
Variable production/consumption rates of data
Scheduling differences
Issues
• Data dependent parameters and variable load/ actor
execution time
• Solution:
− No data dependent values
− MinMaxExtractor: extract range
− Could lead to: non-monotone models
34
Non–monotone behavior
• Variable execution time of actors
• Maximum execution time does not guarantee worst
case behavior
• Detection of this behavior is extremely difficult
35
Non monotone behavior
Figure 16: An example of RASDF
36
Non monotone behavior
0.205
0.2
Throughput
0.195
0.19
0.185
Actor B
0.18
0.175
0.17
0.165
0
• Simulation
37
1
traces
2
3
Execution time
4
5
6
Issues
• 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
38
Not yet
solved
•
•
•
•
•
•
•
•
39
Introduction
Octopus
Problem Statement
Tools used
Translation procedures
Issues with translation
Completed objectives
Planned objectives
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
40
•
•
•
•
•
•
•
•
41
Introduction
Octopus
Problem Statement
Tools used
Translation procedures
Issues with translation
Completed objectives
Planned objectives
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.
42
Questions/
Feedback
Thank you
44