+ All Categories
Home > Documents > 1 of 40 WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS GEODES Global Energy Optimisation for...

1 of 40 WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS GEODES Global Energy Optimisation for...

Date post: 26-Dec-2015
Category:
Upload: anna-barker
View: 214 times
Download: 0 times
Share this document with a friend
Popular Tags:
38
1 o f 40 WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS GEODES Global Energy Optimisation for Distributed heterogeneous Embedded Systems Tutorial Exploitation of power management techniques in Wireless Sensor Networks Sébastien Bilavarn, Cécile Belleudy University of Nice Sophia Antipolis - CNRS LEAT Como, Italy Feb. 2011
Transcript

1 of 40WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

GEODES Global Energy Optimisation for Distributed heterogeneous Embedded Systems

Tutorial Exploitation of power management techniques in

Wireless Sensor Networks

Sébastien Bilavarn, Cécile BelleudyUniversity of Nice Sophia Antipolis - CNRS LEAT

Como, ItalyFeb. 2011

2 of 40

Outline

• Power management: state of the art• Energy and Power Aware Scheduling

• Power management: Howto• Power Management• Operating System• Power Strategies

• Application study• Low power video surveillance application

• Conclusion

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

3 of 40

POWER MANAGEMENT: STATE OF THE ART

Exploitation of power management techniques in Wireless Sensor Networks

Exploitation of power management techniques in Wireless Sensor Networks

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

4 of 404

Issue : schedule in order to meet time constraint with lowest energy : determine a global frequency based on the worst case execution time of a task set, tune the processor frequency according to the workload, low power mode in case of no (or low) workload.

Energy and Power aware Scheduling

Global frequency Local frequency Low power mode

Application + constraints Features of the platform

5 of 405

Task ti

Task ti

f1

f2

PowerP1

Deadline

V2 < V1f2 < f1

Dynamic Voltage and Frequency Scaling

P2 < P1

E2 < E1

Hors ligne

Slow down factor: S = f1 / f2

Lot of works : LP EDF, CC-RM, Power savings ?Unrealistic hypothesis : Tswitch ?

Lot of works : LP EDF, CC-RM, Power savings ?Unrealistic hypothesis : Tswitch ?

Global frequency (for all task) : based on the schedulability test according to the worst case execution time of a task set

Global frequency (for all task) : based on the schedulability test according to the worst case execution time of a task set

Local frequency (for each job) : based on the schedulability test, The worst case execution time is substituted by the actual execution time => Lot of switch

Local frequency (for each job) : based on the schedulability test, The worst case execution time is substituted by the actual execution time => Lot of switch

6 of 40

Low power modes (DPS)

2 to 4 low power modes : 2 to 4 low power modes :

Example : Example : Idle : data are saved in the memory cache,

Sleep : data are lost.

Switch in low power modeSwitch in low power mode

T1 T2 T3 T1 …Time requirement

T > Tsleep + Twakeup,

Real time system : Off line or online policy Based on the schedulabitity test

Soft system : Probability based estimations of inactivity time, period, duration

Data in the cache memory ?

7 of 40

DVFS or DPS

Task1

F1,V1Processeur : nop

Deadline

Task1

F1,V1

Processor in low power mode

Deadline

Task1

F2<F1,V2<V1

Deadline

E = Etask1,F1,V1 + Enop

E’ = Etask1,F2,V2 + EswitchVF

E’ < Etask1,F1,V1 < EDecrease of E and Ppeak.

E’’ = Etask1,F1,V1 + Eswitch + Elp mode repos

E’’ > Etask1,F1,V1(>E’) < E

8 of 40

Global methodology

Power mode modelling : power characterization, time (switch delay)

High level estimation of system (application, platform): power,

energy, autonomy

Power manager : strategy to reduce the power consumption,

autonomy, …

ModellingExperimentPower saving

ModellingExperimentPower saving

EstimationEstimation

Optimisation : Exploration de solutions HW, SW

Optimisation : Exploration de solutions HW, SW

9 of 40

POWER MANAGEMENT: HOWTO

Exploitation of power management techniques in Wireless Sensor Networks

Exploitation of power management techniques in Wireless Sensor Networks

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

10 of 40

Power Management (1)

• What is power management ? • We refer in the following to CPU level techniques

able to operate dynamically (on the fly). • Hardware capabilities to exploit sleep modes,

and/or to change the operating frequency.

• A set of: • Power management mechanisms

• Dynamic Voltage and Frequency Scaling (DVFS)• Dynamic Power Switching (DPS)

• Power management policies (or strategies)• Governors

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

11 of 40

• Power management mechanisms• DVFS: frequency scaling

• Ability to change the CPU(s) clock speed on the fly• States are called operating performance points• Example: TI OMAP3530

• DPS: power swtiching• Ability to switch CPU(s) low-power modes• Many idle states with different recovery time and

power

GEODES Présentation

Power Management (2)

12 of 40

• Power management strategies• Frequency selection policy

• Automatic choice among performance states• Governors: how to apply these states?

• Examples: Ondemand, Conservative (Linux)• Mainly workload based

• DPS: Dynamic Power Swtiching• Automatic choice among idle states• Governors:

• Examples: ladder, menu (Linux)• Step wise/parameter based approach to select idle states

GEODES Présentation

Power Management (3)

13 of 40

Linux PM support (1)

• Provides a platform independent interface• To handle power management mechanisms• To use existing power management strategies

• Driver support• DVFS: CPUfreq• DPS: CPUidle

• Supported by a large variety of platforms• Basic power management policies

• Governors

• Open source community support

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

14 of 40

• Demo• OMAP-PM Distribution (Kevin Hilman)

• http://elinux.org/OMAP_Power_Management

• Suspend/resume • echo mem > /sys/power/state

• mount -t debugfs nodev /sys/kernel/debug/

• echo 4 > /debug/pm_debug/wakeup_timer_seconds

• DVFS• echo 125000 >

/sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

Linux PM support (2)

15 of 40

Power strategies (1)

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

• Definition• A power strategy is a module which functionality

is to apply power management techniques on the resources of the system in a way to save power and/or energy.

• The power strategies are applied at runtime to support current and future resource requirements

• Example• So far, very basic power strategies are actually

used• Linux CPUfreq governors

16 of 40

Power strategies (2)

Existing power strategies: Linux CPUfreq governorsPerformance governor: Highest frequency

The performance governor statically sets the processor to the highest frequency available. 

Powersave governor: Lowest frequency

On the flip side, the powersave governor statically sets the processor to the lowest available frequency. 

Userspace governor: Manual frequencies

Next there is the userspace governor, which allows you to select and set a frequency manually. 

Ondemand governor: Frequency change based on processor use

The ondemand governor checks the processor utilization and if it exceeds the threshold, the governor will set the frequency to the highest available. 

Conservative governor: A more gradual ondemand

The conservative governor checks the processor utilization and if it is above or below the utilization thresholds, the governor steps up or down the frequency to the next available instead of just jumping to the highest frequency as ondemand does.

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

17 of 40

Power strategies (3)

• Limits of existing strategies • Typical strategies are based on processor

workload, but the workload is not always the driving parameter for frequency scaling oportunities (actual execution time, latency, bit rate, etc).

• There is room for more efficient strategies by defining strategies that are specific to the application domain.

• Task scheduling• Video processing

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

18 of 40

Power strategies (4)

• Limits of existing strategies • Example: video processing

• Video processing is almost in all cases a 100% CPU load application.

• Using an Ondemand governor will result in setting the CPU to its maximum frequency.

• The driving parameter in a video application is the frame rate. • Adapting the CPU frequency to the framerate required (e.g. 30

fps) has potential to decrease the operating frequency (thus power consumption).

So how to develop a power strategy suited to an application domain ?

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

19 of 40

APPLICATION STUDY: VIDEO OVER IEEE 802.15.4

Exploitation of power management techniques in Wireless Sensor Networks

Exploitation of power management techniques in Wireless Sensor Networks

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

20 of 40

• Objectives • Design of an ad hoc power strategy suited to WSN

constraints

• Illustration: low power video surveillance application

• Development approach• Application development

• Performance analysis

• Power strategy definition

• Power savings measurement/estimations

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

Design of a power strategy

21 of 40

Very low power video surveillance application Video monitoring and transmission using IEEE 802.15.4

Base station/cluster head Reception IEEE 802.15.4Decompression Video display

Camera sensor Video captureCompression Transmission IEEE 802.15.4

802.15.4 802.15.4

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

Application overview

22 of 40

• Hardware• Wireless radio

• IEEE 802.15.4

• low power, short range (10 – 75 meters), low bit rate (20 - 250 Kbit/s)

• Power management • DVFS on each kind of nodes (camera sensor, display nodes)

• Monitoring capabilities• Camera: compression is mandatory given transmission speed limitations

• Display: only on display nodes (some basestations used as control nodes)

• Video compression/decompression • A MPEG2 standard is used for encoding complexity reasons (low

processing power of WSN nodes)

→ Suited platform

→ OS support (variety of drivers)

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

Requirements (1)

23 of 40

Requirements (2)

• Platforms• Crossbow IMOTE2

• PXA271 XScale® Processor at 13-416MHz 

• Wireless radio: • integrated 802.15.4

• Power management• DVFS, DPS

• Monitoring capabilities• Extension for camera chip interface

• No display

• Operating System• TinyOS: few drivers support

• No Linux support

• No CPU power measurement

→ Not usable in practice

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

24 of 40

Requirements (3)

• Platforms• Beagleboard

• TI OMAP3530 processor• Up to 600 MHz

• Wireless radio• None

• Power management• DVFS, DPS

• Monitoring capabilities• USB video camera

• DVI-D output

• Operating System• Many ports of Linux distributions

• Ubuntu, Linux-omap, etc

• No CPU power measurement

→ Intended for mobile phones, but large set of devices, APIs and drivers (Linux)

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

25 of 40

• Operating System• Linux APIs and drivers

• Wireless radio• XBee modules under the control of a

serial connection, using termios API

• Power management• CPUfreq, (CPUidle)

• Monitoring capabilities• Camera: standard USB webcam supported by

video capture API for Linux (V4L USB Video Class)

• Display: X Window, Graphical User Interface, GIMP toolkit (GTK)

• Distributions• Linux-omap-pm: Camera sensors

• Ubuntu: Display nodes

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

Requirements (4)

26 of 40WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

Demo

27 of 40

MPEG2 performance on OMAP3 (w/o 802.15.4)

MPEG2 performance on OMAP3 (w/ 802.15.4)• Bit rate: 4KB/sec max (average compressed frame size:

2KB)

• Frame rate: 2.3 fps max

Application 1: DVFS strategy for video encoding

→ adapt OMAP frequency to the variations of the bit

rate 2 KB/s → 125 MHz, 4 KB/s → 250 MHz, 8 KB/s → 500 MHz

1 fps → 125 MHz, 2 fps → 250 MHz, 4 fps → 500 MHz

125MHz

250MHz

500MHz

550MHz

600MHz

720MHz

Encoder 0,95 fps 1,92 fps 3,80 fps 4,16 fps 4,76 fps 5,61 fps

Decoder 23 fps 43 fps 92 fps 101 fps 111 fps 130 fps

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

Performance analysis

28 of 40

8

Time

4

2

Bit rate < 2KB/s → useless to run CPU at more than 125 MHzBit rate < 4KB/s → useless to run CPU at more than 250 MHzBit rate < 8KB/s → useless to run CPU at more than 500 MHz

125MHz

250MHz

500MHz

Bit rate KB/sec

1fps -2fps < 1fps 1fps - 2fps > 2fps

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS

Power strategy definition

29 of 40

Evaluation conditions

Energy savings and lifetime extensions are based on measures and estimations: • It is not possible to measure power/energy (on OMAP/beagleboard)

• Limitations on DVFS implementation (Linux CPUfreq/beagleboard)

• Transmission speed can actually be measured on a real video capture and transmission example. DVFS - Transmit adaptation principle:

bit rate < 2000 Bytes/sec → 125 MHz

2000 Bytes/sec < bit rate < 4000 Bytes/sec → 250 MHz

(4000 Bytes/sec < bit rate < 8000Bytes/sec → 500 MHz)

• We can combine this with real power measures (on OMAP/EVM)

OPP 125MHz

250MHz

500MHz

550MHz

600MHz

720MHz

P (mW) 57 130 303 371 445 --

30 of 40

Energy and Lifetime analysis (1)

Analysis of energy savings• Based on transmission speed measures and OMAP 3530

power consumption measures at different operating points

• An estimation of energy can be comptuted from the time spent in frequency each zone i: E = Σ(POMAP * Ti).

• Energy savings are given by the ratio δ = (Ew/o - Ew/ ) / Ew/

Analysis of lifetime extension• From previous energy savings (δ %), we can compute an

estimation of lifetime extension Textended based on E = Paverage* T

• Since E is reduced from δ %, considering Paverage is constant implies: Textended = T * 100 / (100 - δ)

31 of 40

Energy and Lifetime analysis (2)

Analysis of energy savings and lifetime extension over no DVFS strategy• First case: node is operating at nominal frequency (500

MHz)

→ Energy gains over nominal frequency (500 MHz)

• Second case: node is set a minimum possible frequency to process video without loss in quality level (250 MHz).

→ Energy gains over minimum static frequency (250 MHz)

Measures are performed on 3 sample tests where the actual transmission speed is measured on 2 physical prototypes

32 of 40

Bytes/sec

125MHz

250MHz

Energy Energy savings Lifetime extension

500MHz 10.908 J 7.182 J --

W/ strategy 3.726 J 65.8% 2.92x

Energy savings + lifetime extension over nominal freq (500MHz)

Sample test #1 36s video monitoring

Transmission speed variations

Frame number

33 of 40

Bytes/sec

125MHz

250MHz

Energy Energy savings Lifetime extension

500MHz 9.09 J 6.504 --

W/ strategy 2.586 J 71.5% 3.51x

Energy savings + lifetime extension over nominal freq (500MHz)

Sample test # 230s video monitoring

Frame number

34 of 40

Bytes/sec

125MHz

250MHz

Energy Energy savings Lifetime extension

500MHz 63.63 J 45.966 --

W/ strategy 17.664 J 72.2% 3.6x

Energy savings + lifetime extension over nominal freq (500MHz)

Sample test # 3135s video monitoring

Frame number

35 of 40

Bytes/sec

125MHz

250MHz

Energy Energy savings Lifetime extension

250MHz 4.68 J 0.954 --

W/ strategy 3.726 J 20.4% 1.26x

Energy savings + lifetime extension over minimum static freq (250MHz)

Sample test #1 36s video monitoring

Transmission speed variations

Frame number

36 of 40

Bytes/sec

125MHz

250MHz

Energy Energy savings Lifetime extension

250MHz 3.9 J 1.314 J --

W/ strategy 2.586 J 33.7% 1.49x

Energy savings + lifetime extension over minimum static freq (250MHz)

Sample test # 230s video monitoring

Frame number

37 of 40

Bytes/sec

125MHz

250MHz

Energy Energy savings Lifetime extension

250MHz 27.3 J 9.636 --

W/ strategy 17.664 J 35.3% x 1.55

Energy savings + lifetime extension over minimum static freq (250MHz)

Sample test # 3135s video monitoring

Frame number

38 of 40

GEODES Global Energy Optimisation for Distributed heterogeneous Embedded Systems

Tutorial Exploitation of power management techniques in

Wireless Sensor Networks

Sébastien Bilavarn, Cécile BelleudyUniversity of Nice Sophia Antipolis - CNRS LEAT

Como, ItalyFeb. 2011

WUPS tutorial / GEODES – LEAT Univ. Nice / CNRS


Recommended