210 likes | 218 Views
This novel scheduler combines timing and power constraints, allowing designers to visualize and optimize power surge, efficiency, and execution time.
E N D
Scheduling • Mapping of tasks to time slots • Computation • Communication • Mapping of power usage to time slots • Mechanical devices • Thermal subsystems • Other electronics subsystems • Constraints • Real-time deadlines, periods, min/max separation • Power budget, power surge (min/max) • Potentially scenario-driven
Scheduling techniques • Deadline based real-time scheduling on multiprocessors • Rate-monotonic scheduling – extend existing RM scheduling to multiprocessors • Timing constraint graph scheduling – multiple serializable sequences in a single heart beat
Novel IMPACCT scheduler • A novel graphical tool • Timing and power constraint visualization • Transforms them into graph problems • Give designers a vision to the power surge at run-time • Complete system-level model • All power sources • All power consumers • Power-aware scheduling • Schedule operations based on power source output • Both performance requirement and power constraint • Regulate power surge • Optimize for power efficiency and reduce execution time
Power Power level Energy consumption Time Starting time Ending time IMPACCT scheduler • Extended Gantt-chart in real-time scheduling for single processor • Event – bins • Timing – horizontal size • Power – vertical size • Energy – area of the bin • Power surge – compacting bins downward Demo
Power Task D follows B D D D Periodic task C C C C C C B B B B Periodic task B Constant task A A Time IMPACCT scheduler • Scheduling chart for multi-processor and multiple power consumers • Events can overlap vertically • Multi-processor • Multiple power consumer – electronics, mechanical, thermal • Power awareness – min and max power supply Demo
Squeeze/extend bin to available time slot Slide bin within timing space Min timing constraint of D D Power C Max timing constraint of D Scheduling space of D C C C B B A Deadline of B (scheduling space) Time Deadline of B Deadline of C (scheduling space) Deadline of C IMPACCT scheduler • Timing constraints – bin packing problem to satisfy horizontal constraints • Independent tasks – moving bins horizontally • Dependent tasks – moving grouped bins horizontally • Power/voltage/clock scaling – extending/squeezing bins Demo
Automated global scheduling to meet min-max power Power Attack spike Improve utilization C Max B B D C C Min A Time Manual scheduling while monitoring power surge Power D C C B B A Time IMPACCT scheduler • Power constraints – bin packing problem to satisfy vertical constraints • Automatic optimization – let the tool do everything • Manual optimization – visualizing power in manual scheduling Demo
Example revisited – Mars Rover • System specification • 6 wheel motors • 4 steering motors • System health check • Hazard detection • Power supply • Battery (non-rechargeable) • Solar panel • Power consumption • Digital • Computation, imaging, communication, control • Mechanical • Driving, steering • Thermal • Motors must be heated in low-temperature environment
Scheduling method • Constraint graph construction • Nodes: operations • Edges: precedence relationship between operations • Resource specification • Resource: an executing unit that can perform operations independently • Six thermal resources for wheel heating • Four thermal resources for steer motor heating • One mechanical resource for driving • One mechanical resource for steering • One computation resource for control • Operations on one resource must be serialized • Scheduling • Primary resource selection • Schedule primary resource by applying graph algorithms • Auxiliary resources and power requirement are considered as scheduling constraints
Constraint graph Hazard detection / Thd System health check / Thc Heat steer 1 / Ths Heat steer 2 / Ths Heat steer 3 / Ths Heat steer 4 / Ths Steer / Ts thc -ths -(thc + Thc) System health check / Thc Heat wheel 2 / Thw Heat wheel 3 / Thw Heat wheel 5 / Thw Heat wheel 6 / Thw Heat wheel 1 / Thw Heat wheel 4 / Thw Drive / Td - thw
Hazard detection (C) / Thc / Phc_C Hazard detection Health check (C) / Thc / Phc_C Health check Steer (C) / Ts_C / Ps_C Heat steer i (C) / Ths_C / Phs_C thc Heat steer i (T) / Ths_T / Phs_T Steer (M) / Ts_M / Ps_M -(thc + Thc) Heat steer i Steer Health check (C) / Thc / Phc_C -ths + Ths_E Health check Heat wheel j (C) / Thw_C / Phw_C Drive (C) / Td_C / Pd_C Heat wheel j Heat wheel j (T) / Thw_T / Phw_T Drive (M) / Td_M / Pd_M Drive Computation Mechanical -thw + Thw_E Thermal Resource specification
Primary resource: Computation Auxiliary resource: Thermal Auxiliary resource: Mechanical Health check (C) / Thc / Phc_C Hazard detection (C) / Thc / Phc_C thc -(thc + Thc) Steer (C) / Ts_C / Ps_C Heat steer i (C) / Ths_E / Phs_E Heat steer i (T) / Ths_T / Phs_T Steer (M) / Ts_M / Ps_M -ths -ths + Ths_E -Ts_C + Ts_M Heat wheel j (C) / Thw_E / Phw_E Drive (C) / Td_C / Pd_C Heat wheel j (T) / Thw_T / Phw_T Drive (M) / Td_M / Pd_M -thw -thw + Thw_E Scheduling graph
Example – Mars Rover • Power constraints • Different solar power supply over time • Different power consumption over temperature/time
Previous solution by JPL • Over-constrained, conservative • Serialize every operation to satisfy power constraint • Longer execution time and under-utilization of solar power • No scheduling tool is used – manual scheduling • Not power-aware • Scheduling without considering power sources and consumers System heart-beat - moving two steps (a) Begin with health check (b) no health check
Solution 1: high solar power (14.9W) • Max solar power: 14.9W at noon • Improved utilization of solar power • Automated scheduling – use scheduling tools • Aggressive – do as much as possible • heating motors while doing other operations • Fastest moving speed – no waiting on heating System heart-beat - moving two steps (a) Begin with health check (b) no health check
Solution 2: typical solar power (12W) • Moderate solar power output – 12W • Improved utilization of solar power • Automated scheduling – use scheduling tools • Moderately aggressive – avoid exceeding power limit • Relaxed constraint –heating motors while doing other operations • Faster moving speed – some waiting time on heating System heart-beat - moving two steps (a) Begin with health check (b) no health check
Solution 3: low solar power (9W) • Minimum solar power output – 9W • Restricted constraint – serialize operations • Automated scheduling – use scheduling tools • Conservative – same as JPL solution • Slow moving speed • Full utilization of low solar power System heart-beat - moving two steps (a) Begin with health check (b) no health check
Comparison • JPL's previous solution • Conservative – long execution time, low solar power utilization • Not power aware – same schedule for all cases • Not intend to use battery energy • Our solution • Adaptive – speedup when solar power supply is high • Power-aware – smart scheduling on different power supply/consumption • Use battery energy when necessary
Application-level evaluation • Mission description • Target location – 48 (distance-) steps away from current location • Power condition • 14.9W solar power for first 10 minutes, 12W for next 10 minutes, 9W thereafter • Metrics • Execution time • Total energy drawn from battery
Application-level evaluation • Power-awareness • Execution speed scales with power condition adaptively • Smart schedule • Maximize best case • Avoid worst case • Tradeoff • Power vs. performance • Energy renewability • Application-specific • Application-level knowledge • Working mode parameters of components