courseware power-aware scheduling jan madsen informatics and mathematical modelling technical...

28
courseware Power-aware scheduling Jan Madsen Informatics and Mathematical Modelling Technical University of Denmark Richard Petersens Plads, Building 321 DK2800 Lyngby, Denmark [email protected]

Post on 19-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

courseware

Power-aware scheduling

Jan Madsen

Informatics and Mathematical Modelling

Technical University of Denmark

Richard Petersens Plads, Building 321

DK2800 Lyngby, Denmark

[email protected]

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

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

Jan MadsenSoC-MOBINET courseware

Incremental scheduling (3)

(3) Min power scheduling Begin with a power-valid schedule from (2) Reorder tasks to reduce power gaps in best-effort Deliver same performance with less energy cost Heuristics applied Results applicable to different constraints