© imec 2001 ARRM’01, Oct.17 Managing dynamic concurrent tasks in real-time multi-media systems...
-
date post
21-Dec-2015 -
Category
Documents
-
view
217 -
download
4
Transcript of © imec 2001 ARRM’01, Oct.17 Managing dynamic concurrent tasks in real-time multi-media systems...
© imec 2001ARRM’01, Oct.17
Managing dynamic concurrent tasksin real-time multi-media systems
Francky Catthoor, IMEC, Belgium
© imec 2001ARRM’01, Oct.17
Goal of our research
• A methodology to map dynamic and concurrent real-time applications on an embedded multi-processor platform
© imec 2001ARRM’01, Oct.17
MPEG4JPEG
Why are Applications becoming more dynamic and concurrent?
The workload decreases but the tasks are dynamically created and their size is data dependent
T1T1’ T1
T2T3
T4
© imec 2001ARRM’01, Oct.17
MPEG-4 : multimedia spec= too huge to handle as 1 task=> break up in many interacting tasks
With this code my boss has to give me a raise!!!
TASK1
h
Cost(P)
Exec.Time
Divide-and-conquer approach of today leads to local solutions
© imec 2001ARRM’01, Oct.17
This didn’t look so good after all???
TASK1
TASK2
TASK3
Processor 1
Global picture: ad hoc
h
h
h
t1
t2
t3
t1+t2+t3<T
© imec 2001ARRM’01, Oct.17
TASK1
TASK2
TASK3
Processor 1
Global trade-offs with cost-performance curves
h
h
h
Luckily we have the Pareto approach!
x
x
x
t1n
t2n
t3n
t1n+t2n+t3n<T
© imec 2001ARRM’01, Oct.17
Outline
• Motivation: new challenges in system-level design
• Overview of TCM methodology
• Cost-efficient design-time scheduling
© imec 2001ARRM’01, Oct.17
• Maximize Quality• Minimize Power
Limited Resources
Terminal QoS requires new approach
CPU
Bus access
Mem. size
Terminal
?
Solution:Paretocurves
3D object
Videoobject
Tasks
See session Multi-media 1
© imec 2001ARRM’01, Oct.17
0
100
200
300
400
500
600
700
800
900
1000
0 50 100 150 200 250 300 350 400 450 500 550
Frame number
Fra
me
per
iod
(m
s)
& P
roje
cted
Su
rfac
e (#
pix
els/
200)
proj. surface (a)
measured period (b)
predicted period (c)
600
Very dynamic behaviour soworst-case realisation too costly
© imec 2001ARRM’01, Oct.17
System design issues in IT-Application domain
IN622 Mb/s
OUT
OUT
622 Mb/s
622 Mb/s
53 cycles Stringent real-time constraints
Embedded system => cost
Complex data sets• Large and irregular dynamically allocated data• Huge memory accesses
RoutingRecord
PacketRecord
FIFO
200 accesses
data in
ISR
time
data outrouting reply
out
Processes• Dynamic and concurrent processes• Global/local control• Non-deterministic events
Network layer protocols (ATM, IP)Dynamic multi-media algorithms (MPEG4/7/21)Wireless/wired terminals (Internet, WLAN)
© imec 2001ARRM’01, Oct.17
Executive
Decoders
Presenter
Application
DataChannel
ALManager
FlexDemux
Service
DataChannel
DataChannel
DataChannel
DecodingBuffer
CompositionMemory
BIFSCritical
path
OD
...
30 msec
RenderingPre/post
Decoding
Pre/post writing
Real-time constraints, tasks and data in the IM1-MPEG4 protocol
© imec 2001ARRM’01, Oct.17
Why aren’t multi-processor platforms used now in embedded
domains?
Live from FZ-TV
• efficient mapping requires a very high design effort when done manually
• => need for a cost-sensitive real-time system compiler
© imec 2001ARRM’01, Oct.17
Outline
• Motivation: new challenges in system-level design
• Overview of TCM methodology
• Cost-efficient design-time scheduling
© imec 2001ARRM’01, Oct.17
Requirements of system level design approach
Algorithms Data Structures+
ARM
IP1 IP2
RAM ROM
Architecture
Processor architecture
RAMRAM
ROM
MMU
custom logic
DSP
ROM microprocessor
TCM approach:ICPP’00, Kluwer book’99
© imec 2001ARRM’01, Oct.17
Static task scheduling
cost
time
task1cost
time
task2cost
time
task3
platform
Real-timeconstraints
Run-time scheduler
processor1
processor2
processor3
time
platformReal-timeconstraints
C/C++ specification of dynamic concurrent system
Extraction of the gray-box model
Task-level DTSE
Concurrency improving transformations
Memory architecture
Real-timeconstraints
© imec 2001ARRM’01, Oct.17
Outline
• Motivation: new challenges in system-level design
• Overview of TCM methodology
• Cost-efficient design-time scheduling
© imec 2001ARRM’01, Oct.17
Reduce global system energy by task scheduling + assignment (e.g. 2-processor approach )
ARM
Processor
1Vdd=1V Vdd=3.3V
ARM
Processor
2
Taskn
Task2
Task1
Codes’01, J.of Sys.Arch, summer 2001
© imec 2001ARRM’01, Oct.17
Trade-off between time budget (period/latency) and cost (e.g.energy) leads to Pareto curves
Time
Cost
CB1CB2CB3CB4CB5CB6
Processor alloc/assign and scheduling alternatives
for code version 1
xx
x
xNon-optimal points
© imec 2001ARRM’01, Oct.17
TCM transformations on applicationmodel shift Pareto curve to origin
Bottleneckof case 1
Schedulingalternativesfor case 1
• Transformations shift the Pareto Curve– Decrease cost for same Time-Budget– Increase performance for same Cost-Budget
New curvefor case 2
TCM trafo
Energy
Time Budget
© imec 2001ARRM’01, Oct.17
Comparison for original and transformed IM1 graphs on 2 processors with different Vdd
original
Transformed
© imec 2001ARRM’01, Oct.17
Comparison between different processor platforms
Combination 2
Combination 3
(Global Pareto curve)
Global Pareto curve
2 13
45
6
6
54
32
1
© imec 2001ARRM’01, Oct.17
Comparison of genetic algorithm (GA)
and heuristic task scheduling results
4400
4600
4800
5000
5200
5400
5600
5800
Energy-cost
37
9
38
1
38
3
38
5
38
8
39
1
39
6
40
1
42
7
43
4
Time-budget
Energy-cost vs time-budget curve
GA solutions
Heuristic
© imec 2001ARRM’01, Oct.17
Overall solution: combination of design- and run-time schedulers
12
3
th read fram e 1
A B
th read fram e 2
Cases’00, Design&Test- Sep.’01
1 3 2
Design-time Scheduling
Design-time Scheduling
A B
• Design-time scheduling: at compile time, exploring all the optimization possibility
Run-time
Scheduling
1 A B 3 2
• Run-time scheduling: at run time, providing flexibility and dynamic control at low cost as part of synthesized RTOS
© imec 2001ARRM’01, Oct.17
Main messages
• Embedded multi-media applications are becoming very dynamic and concurrent in nature => RTOS essential
• Task Concurrency Management approach provides the flexibility and optimization possibility while limiting the run time computation complexity
• A multiprocessor platform with different working voltages potentially provides an energy saving solution
• Application-specific run-time scheduling technique combined with design-time scheduling to provide cost-performance Pareto-curve essential for effective solution