Embed
Email

slide

Document Sample

Shared by: ajizai
Categories
Tags
Stats
views:
2
posted:
11/19/2011
language:
English
pages:
28
High-level System Modeling and

Power Management Techniques





Jinfeng Liu

Dept. of ECE, UC Irvine

Sep. 2000

Background

 X2000 Avionics System Architecture

 COTS – based building blocks for system integration

Low cost component with strong commercial support

Widely accepted specification, design, application and

testing

Reduced development cost

 Dual system bus architecture

IEEE 1394 bus

 Hi performance on fast data rate

 Moderate power

 Reconfigurable structure



I2C bus

 Low power

 Adequate data rate for low-speed communication

Power Aware vs. Low Power

 Low power design – as low as possible

 Minimize power consumption at circuit/gate level

 No system-level and application specific knowledge

 Limited reconfiguration space to meet multiple mission

requirement

 Power aware computation – use power wisely

 Power model built on application-specific knowledge

 Reconfigurable system architecture to meet multiple mission

requirement

 Adaptive adjustment to run-time power supply

 Optimize power usage on system level

Manage all power consumers – electronics, mechanics,

thermal

Regulate power surge to protect battery

Shorten execution time to save energy

Examples – Mars Rover

 Power supply

 Non-rechargeable battery and solar panel

 Power consumption

 Electronics – computation, imaging, communication, control

 Mechanic – driving, steering

 Thermal – motors must be heated in low-temperature

environment

 Power management

 Low-power electronics cannot make significant power saving

 No system-level management tool available

 Manual schedule must remain conservative

Serialize all operations to suppress power surge

Long execution time

Solar power not efficiently used

Our Approach

 High-level system modeling techniques

 Describe the system in high-level abstractions

 Employ application specific knowledge in system models

 Apply power aware management techniques on different

power consumers – electronics, mechanics, thermal

 System modeling

Behavioral modeling – software architecture, application

specific knowledge

Architectural modeling – hardware platform built on top

of parameterized components

Partitioning – mapping behavioral objects to architectural

structures

Scheduling – a valid sequence of concurrent/parallel

operations on multiple processors that satisfies real-time

requirement

Our Approach

 Power management and optimization

 Behavioral modeling

Extract power related attributes of all objects

 Architecture modeling

Use low-power devices or devices that can operate on

low-power mode

 Partitioning

Migration – merge computations on under-utilized

processors on one processor to improve utilization

Segmentation – separate tightly coupled computations

into clusters to localize communication

 Scheduling

Arrange operation sequences on multi-processor /

multiple power consumer to meet both performance and

power requirement

Behavioral Model

 Application specific knowledge

 Input, output and function

 Dependency and precedence

 Control and data flow

 Timing and sequence

 Software architecture

 Operating system features – real-time, centralized,

distributed, and etc.

 Execution model – event driven, interrupt, distributed agent,

client-server, and etc.

 Communication model – protocol stack and specification

 Power related attributes

 Data rate, execution time, CPU speed, memory size,

communication path, and etc.

Architectural Model

 Component – parameterized COTS

 Type – processor, memory, I/O, DSP, bus, and etc.

 Interface – how the components can be connected to each

other

 Modes – operation modes parameters, voltage, clock speed,

bandwidth, power consumption, and etc.

 Package – a bundle of connected components that

performs certain operation

 Components – a set of connected components

 Internal/external interface – how components are connected

 Modes – configuration space of the collected components

specified by each component’s working mode and collective

attributes, e.g., voltage, speed, power and etc.

Partitioning

 Mapping – map behavioral objects to hardware

 Group related OS, communication, control and application objects

into processing nodes

 Extract data objects into storage nodes

 Allocate components/packages for each processing node

 Arrange data storage for data nodes and optimize storage location

to reduce communication

 Establish communication paths among nodes that comply with the

communication model

 Setup working mode of each component/package to fit the

behavioral requirement

 Extract attribute of each structure

 Function – computation, control, communication

 CPU utilization

 Bus traffic

 Power consumption

Partitioning

 Migration – combine multiple nodes to one node to improve

utilization

 Examine the utilization of each node

 Migrate computation on under-utilized processing nodes and

merge corresponding storage nodes if necessary

 Balance power consumption and CPU utilization

 Segmentation – arrange nodes in tight communication in a bus

segmentation

 Group nodes by communication localities

 Settle each group in a bus segment (a feature of IEEE 1394)

 Extract attributes of localized communication mode in a

segmented bus

 Improved performance

 Reduced bus traffic

 Reduced power consumption

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

Scheduling – Techniques

 Constraint logic solving

 Transfer all constraints into a pure mathematical form

 Use tools to solve the problem in mathematical domain

 Example – CLPR

Constraints

 C1 > 3, C1 2, C2 6, S < 12 # one power source

Inputs

 C1 = 4.5, S = 7



Results

 C2 < 2.5

 2 < C2

Scheduling – Objectives

 Our power-aware scheduling tool

 A novel graphical tool that visualizes timing and power

constraint and transforms them into graph problems

 Manage all power sources and power consumers in system-

level

 Power-aware scheduling – schedule operations based on

power source output

 Automated schedule to meet both performance requirement

and power constraint

 Regulate power surge

 Use power efficiently to reduce execution time

 Management and optimization tool to give designers a vision

to the power surge at run-time

Scheduling Tool

 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

Power









Power level Energy

consumption





Starting time Ending time Time





Demo

Scheduling Tool

 Scheduling chart for multi-processor and multiple power

consumers

 Events can overlap vertically

 Multi-processor

 Multiple power consumer – electronics, mechanic, thermal

 Power awareness – min and max power supply

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





Demo

Scheduling Tool

 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

Squeeze/extend

Slide bin

Min timing bin to available

Power within timing D

constraint of D C time slot

space Max timing

constraint of D

Scheduling

C C C

space of D





B B





A





Deadline of B (scheduling

Time

space) Deadline of B



Deadline of C (scheduling Deadline of C

space)







Demo

Scheduling Tool

 Power constraints – bin packing problem to satisfy vertical

constraints

 Automatic optimization – let tool do everything

 Manual optimization – visualizing power in manual scheduling

Automated global

Power Attack Improve

scheduling to meet

spike utilization

min-max power

C

Max

B B

Min C D C



A



Time

Manual scheduling

Power while monitoring

C D power surge C



B B







A



Time





Demo

Example – Mars Rover

 System specification

 Six wheel motors

 Four steering motors

 System health check

 Hazard detection

 Timing constraints

 System health check

10s/10min

 Heating motor for 5s,

100s prior to driving

 Hazard detection 10s –

steering 5s – driving 10s

Example – Mars Rover

 Power constraints

 Solar panel: 14.9W peak power @ noon, 11W for 6hr/sol

 Battery: 10W max power output. 150W-hr energy storage

 CPU: 3.7W, constant for 4h/sol

 Health check: 6.3W, 10s

 Hazard detection: 7.3W, 10s

 Heating: 7.5W (1 motor) or 11.3W (2 motors), 5s

 Steering: 6.8W, 5s (7º/s)

 Driving: 12.4W, 10s (7cm)

 Existing solution

 Serialize each operation to satisfy power constraint

 Conservative – longer execution time and under utilization of

solar power

 No scheduling tool is used

Scheduling Method

 Constraint graph construction

 Nodes: operations

 Edges: precedence relationship between operations

 Channel specification

 Channels: resources that can perform operations

independently

 Six wheels heating channels, four steer motor heating channels

 One driving channel, one steering channel

 One computation channel

 Operations on one channel must be serialized

 Scheduling

 Primary channel selection

 Schedule primary channel by applying graph algorithms

 Auxiliary channels and power requirement are considered as

scheduling constraints

Constraint Graph

Hazard

detection / Thd





System

health check /

Thc

Heat Heat Heat Heat

steer steer steer steer Steer / Ts

1 / Ths 2 / Ths 3 / Ths 4 / Ths

thc -ths

-(thc + Thc)



System

health check /

Thc



Heat Heat Heat Heat Heat Heat

wheel wheel wheel wheel wheel wheel Drive / Td

1 / Thw 2 / Thw 3 / Thw 4 / Thw 5 / Thw 6 / Thw









- thw

Channel Specification

Hazard

detection (C) /

Health Thc / Phc_C

check (C) /

Thc / Phc_C





Heat Steer (C)

thc steer i / Ts_C /

-(thc + Thc)

(C) / Heat Ps_C

Ths_C / steer i (T) Steer (M)

Phs_C / Ths_T / -ths +

/ Ts_M /

Health Phs_T Ths_E Ps_M

check (C) /

Thc / Phc_C







Heat Drive (C)

wheel i / Td_C /

(C) / Pd_C

Computation Thw_C / Heat

Phw_C wheel i Drive (M)

-thw +

Mechanic (T) / Thw_T Thw_E / Td_M /

/ Phw_T Pd_M

Thermal

Scheduling

Primary channel:

Computation

Auxiliary channel: Auxiliary channel:

Thermal Mechanic



Health Hazard

check (C) / detection (C) /

Thc / Phc_C Thc / Phc_C

thc -(thc + Thc)







Heat Steer (C)

Heat steer i / Ts_C /

steer i (T) (C) / Ths_E -ths Ps_C Steer (M)

/ Ths_T / / Phs_E / Ts_M /

Phs_T -ths + Ths_E Ps_M





-Ts_C + Ts_M





Heat Drive (C)

Heat wheel i / Td_C /

wheel i (C) / Pd_C Drive (M)

-thw

(T) / Thw_T Thw_E / / Td_M /

/ Phw_T -thw + Thw_E Phw_E Pd_M

Existing Results

 JPL solution

 Over constraint – serialize every operation to satisfy power

constraint

 Conservative – longer execution time and under-utilization of solar

power

 No scheduling tool is used – manual scheduling

 Not power-aware – scheduling without considering solar power

output



CPU Health Heat Heat Hazard steer Drive

check steer wheel detection

Power



20





15





10



5





Time

0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160

Our Solution

 Power-aware scheduling – high solar power

 Max solar power output – 14W at noon

 Relaxed constraint – heating motors while doing other operations

 Aggressive – do as much as possible

 Fastest moving speed – no waiting on heating

 Improved utilization of solar power

 Automated scheduling – use scheduling tools



CPU Health Heat Heat Hazard steer Drive

check steer wheel detection

Power





20





15





10



5





Time

0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160

Our Solution

 Power-aware scheduling – typical solar power

 Typical solar power output – 11W for 6hr/sol

 Relaxed constraint –heating motors while doing other operations

 Moderately aggressive – avoid exceeding power limit

 Faster moving speed – some waiting time on heating

 Improved utilization of solar power

 Automated scheduling – use scheduling tools



CPU Health Heat Heat Hazard steer Drive

check steer wheel detection

Power





20





15





10



5





Time

0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160

Our Solution

 Power-aware scheduling – low solar power

 Typical solar power output – 8W at operation threshold

 Restricted constraint – serialize operations

 Conservative – save as JPL solution

Slow moving speed

Full utilization of low solar power

 Automated scheduling – use scheduling tools



CPU Health Heat Heat Hazard steer Drive

check steer wheel detection

Power





20





15





10



5





Time

0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160

Comparison

 Existing solution

 Conservative – long execution time, low resource utilization

 Not power aware – same schedule for all conditions

 Not intend to use battery energy

Solar power output Battery energy Solar energy % of solar energy Moving distance

14 134 2010 90% 4 steps - 28cm

11 404 1740 99% 4 steps - 28cm

8 864 1280 100% 4 steps - 28cm



 Our solution

 Adaptive – speedup when power supply is high

 Power-aware – adaptive scheduling on different power supply

 Use battery energy when needed

Solar power output Battery energy Solar energy % of solar energy Moving distance

14 388.5 2097.5 94% 6 steps - 42cm

11 869.5 1755 100% 5 steps - 35cm

8 864 1280 100% 4 steps - 28cm



Related docs
Other docs by ajizai
A3 - SCO CMS Functional Requirements
Views: 0  |  Downloads: 0
WS 6 Mol Ratio 10
Views: 0  |  Downloads: 0
0003196951
Views: 0  |  Downloads: 0
FA004089 University Wide Faculty Awards
Views: 0  |  Downloads: 0
12-specsummary
Views: 0  |  Downloads: 0
Ochs
Views: 0  |  Downloads: 0
By registering with docstoc.com you agree to our
privacy policy

You are almost ready to download!

You are almost ready to download!