Courseware Power-aware scheduling Jan Madsen Informatics and Mathematical Modelling Technical...
-
date post
19-Dec-2015 -
Category
Documents
-
view
215 -
download
0
Transcript of Courseware Power-aware scheduling Jan Madsen Informatics and Mathematical Modelling Technical...
courseware
Power-aware scheduling
Jan Madsen
Informatics and Mathematical Modelling
Technical University of Denmark
Richard Petersens Plads, Building 321
DK2800 Lyngby, Denmark
Jan MadsenSoC-MOBINET courseware
Mission critical embedded systems
Based on work by J. Liu, P.H. Chou, N. Bagherzadeh, F. Kurdahi
University of California, Irvine
CODES’01 & DAC’01
Jan MadsenSoC-MOBINET courseware
Mars Rover – Mission
Perform experiments Autonomous mobile vehicle Alpha proton X-ray spectrometer
Imaging Travel between different target
locations
Jan MadsenSoC-MOBINET courseware
Mars Rover – Conditions
Surface temperature [-40 oC; -80 oC] Communication ~ 11 minute
No real-time control Supervised autonomous control
Jan MadsenSoC-MOBINET courseware
Mars Rover - System composition
CPU 3 images per day
Motors 60 cm per min
Hazard detection Heaters
-80 oC requires motors to be heathed
Jan MadsenSoC-MOBINET courseware
Mars Rover – Power?
Power sources Battery (non-rechargeable) Solar panel (free)
Power consumers Digital: imaging, communication, control Mechanical: driving, steering Thermal: heating motors in the low-temperature
environment
Jan MadsenSoC-MOBINET courseware
System-level power manager
Amdalhs’ law applies to power Power savings of a component is scaled to its
contribution to power usage of the whole system
If a component draws 2% of the power in a system, a 50% power reduction amounts to 1% saving to the system
The power manager must consider all power consumers in the entire system and identify the major power consumers
Jan MadsenSoC-MOBINET courseware
System-level power manager
System-level power consumers (Digital) computation domain
Processors, memory, I/O, ASIC
Non-computation domains Mechanical: motors Thermal: heaters
Major power consumers: mechanical and thermal
Jan MadsenSoC-MOBINET courseware
Power-aware vs. low-power
Low-power Minimize power usage Just enough power to meet performance requirement No distinction between costly power and free power Component-level power managers
Power-aware Best use of available power
Minimize power usage with low power budget Deliver high performance with high power budget
Distinguish different models of power sources Battery, solar, nuclear, etc.
Track variant power availability System-level power managers
Jan MadsenSoC-MOBINET courseware
Low-power scheduling
Shutting down subsystems Variable-voltage processor scheduling Limited applicability to power-aware designs
Timing constraints are not strongly guaranteed Power usage is handled as a by-product No tracking to power availability No distinction to different energy sources
Jan MadsenSoC-MOBINET courseware
Low-power scheduling - Example
p3
p2
p1 r1 r1
r1
r1
p3
p2
p1 r1
r1
r1 idle
r1 idle r1 idle
Jan MadsenSoC-MOBINET courseware
Power-aware scheduling
Min/max timing constraints on tasks Min timing constraint
Subsumes precedence as special cases Max timing constraint
Subsumes deadline as special cases
Min/max power constraints on the system Max power constraint
Total power budget from the available sources Hard constraint, must be guaranteed
Min power Free power (solar), minimize power jitter soft constraint, best effort
Jan MadsenSoC-MOBINET courseware
Constraint graph G(V, E)
Vertices V: tasks d(v), execution delay p(v), power consumption r(v), resource mapping
Edges E: timing constraints Forward edge: min
constraint Backward edge: max
constraint
Jan MadsenSoC-MOBINET courseware
Constraint graph G(V, E)
Schedule Time assignments to tasks Finish time
Timing-valid schedule Timing constraints satisfied No resource conflict
Jan MadsenSoC-MOBINET courseware
Power-aware Gantt chart
Time view Bins – tasks
Horizontal axis – start time, duration
Vertical axis – power
Tracks – parallel resources
Power view Power profile Power constraints Power properties
Spikes, gaps Energy cost Utilization
Jan MadsenSoC-MOBINET courseware
Mars Rover - Exercise
Power sources & tasks
Duration (sec.)
Power @ -40 oC Power @ -60 oC Power @ -80 oC
Solar panel 17 14 11
Battery pack 8 max 8 max 8 max
CPU Constant 2 3 4
Heating two motors 5 8 10 12
Driving 10 8 11 14
Steering 5 4 6 8
Hazard detection 10 3 4 5
Jan MadsenSoC-MOBINET courseware
Mars Rover - Solution
Hd
St
Dr
HW12
HW34
HW56
HS12
HS34
CPU
Power 9 9 16 16 16 16 16 12 18 18 9 9 12 18 18
Worst case at –80 oC
Jan MadsenSoC-MOBINET courseware
Power properties
Power profile P(t) System-level power
consumption curve Power constraints
Max power constraint Pmax Power Spike: max power
constraint violation Min power constraint Pmin
Power Gap: min power constraint violation
Power-validity A timing-valid schedule with no
power spikes Enforce max power budget
Min power utilization (Pmin) Energy utilization from free
sources
Energy cost Ec(Pmin) Energy drawn from
expensive (non-free) sources
Power-aware trade-off Performance vs. Energy
cost Ec(Pmin)
Jan MadsenSoC-MOBINET courseware
Mars Rover – Power profile
P(t)
10
20Pmax
Pmin
(Pmin) = = 95.2 %(11 x 75) – (2 x 2 x 10)
(11 x 75)
Ec(Pmin) =5x25+5x1+10x7+5x1+10x7
75= 3.4
Jan MadsenSoC-MOBINET courseware
Mars Rover – the real thing!
Timing constraints
Three cases w/ different power constraints Max power:
solar + 10W Min power
solar, free Best: 14.9W Typical: 12W Worst: 9W
Jan MadsenSoC-MOBINET courseware
Scheduling results
Best case Fast, low cost
Typical case Slower, increased cost
Worst case Slower, high cost Same as the existing
serial schedule
Jan MadsenSoC-MOBINET courseware
Comparisons to schedules
Existing low-power schedule Low performance Low energy cost Under-utilized free solar
power Does not track power
sources Full serialization by hand-
crafting
Power-aware schedules High performance High energy cost Improved utilization of
solar power Tracks available power
from different sources Fully constraint-driven by
an automated design tool
Jan MadsenSoC-MOBINET courseware
Comparisons in a scenario
Scenario Mission: travel to a target
48 steps away
Existing low-power schedule Fixed slow speed Low energy cost in each
phase, but high energy cost in worst case
Low performance, high energy cost
3 phases: best, typical, worst, 10 min each
Power-aware schedules Accelerated speed by
tracking available power Finish earlier before
working in the worst case High performance, low
energy cost
Jan MadsenSoC-MOBINET courseware
Conclusion
Power-aware design Different from low-power Deliver high performance by tracking power sources
Power-aware schedulers Incremental scheduling by constraint classification Potentials on performance speedup and energy saving
System-level design tools Power manager for the entire system Aggressive design space exploration
Jan MadsenSoC-MOBINET courseware
Incremental scheduling (1)
(1) Timing scheduling Topological traversal of the constraint graph Selective serialize tasks that share the same resource Prohibit positive cycles Proven to find a timing-valid schedule
Jan MadsenSoC-MOBINET courseware
Incremental scheduling (2)
(2) Max power scheduling Begin with a timing-valid schedule from (1) Enforce max power constraint Reorder tasks to eliminate power spikes Redo (1) for timing violation Heuristics applied