67
Diversity in Smartphone Energy Consumption Earl Oliver David R. Cheriton School of Computer Science University of Waterloo 1 Tuesday, September 14, 2010

Diversity in Smartphone Energy Consumption

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Diversity in Smartphone Energy Consumption

Earl Oliver

David R. Cheriton School of Computer Science

University of Waterloo

1

Tuesday, September 14, 2010

Take-aways

2

Tuesday, September 14, 2010

Take-aways

Built a comprehensive dataset that contains over one millennium of energy consumption behaviour from over 17300 BlackBerry users.

2

Tuesday, September 14, 2010

Take-aways

Built a comprehensive dataset that contains over one millennium of energy consumption behaviour from over 17300 BlackBerry users.

Report on the characteristics of three distinct smartphone user types:

2

Tuesday, September 14, 2010

Take-aways

Built a comprehensive dataset that contains over one millennium of energy consumption behaviour from over 17300 BlackBerry users.

Report on the characteristics of three distinct smartphone user types:

opportunistic chargers

2

Tuesday, September 14, 2010

Take-aways

Built a comprehensive dataset that contains over one millennium of energy consumption behaviour from over 17300 BlackBerry users.

Report on the characteristics of three distinct smartphone user types:

opportunistic chargers

light-consumers

2

Tuesday, September 14, 2010

Take-aways

Built a comprehensive dataset that contains over one millennium of energy consumption behaviour from over 17300 BlackBerry users.

Report on the characteristics of three distinct smartphone user types:

opportunistic chargers

light-consumers

nighttime chargers

2

Tuesday, September 14, 2010

Motivation

Two dominant trends

3

Tuesday, September 14, 2010

Motivation

Two dominant trends

Mobile applications

3

Tuesday, September 14, 2010

Motivation

Two dominant trends

Mobile applications

3

Tuesday, September 14, 2010

Motivation

Two dominant trends

Mobile applications

3

Battery energydensity

Tuesday, September 14, 2010

Execution continuum

Energy conversion rate

GSM phone calls < 2W

Duration of use Video playback

~1.1 W

Audio~50 mW

Video recording~1.4 W

GPS navigation~620 mW

Bluetooth, logging tools

< 2.5 mW

Offline tasks: e-mail,

calendar, etc.< 10 mW

Web browsing

(WiFi)~800 mW

The next frontier in mobile applications:MyTube, PocketBay, etc.

Media indexingservice

4

Tuesday, September 14, 2010

Execution continuum

Energy conversion rate

GSM phone calls < 2W

Duration of use Video playback

~1.1 W

Audio~50 mW

Video recording~1.4 W

GPS navigation~620 mW

Execution autonomy

Bluetooth, logging tools

< 2.5 mW

Offline tasks: e-mail,

calendar, etc.< 10 mW

Web browsing

(WiFi)~800 mW

The next frontier in mobile applications:MyTube, PocketBay, etc.

Media indexingservice

4

Tuesday, September 14, 2010

Execution continuum

Energy conversion rate

GSM phone calls < 2W

Duration of use Video playback

~1.1 W

Audio~50 mW

Video recording~1.4 W

GPS navigation~620 mW

Execution autonomy

Execution requires explicit user interactionBluetooth, logging tools

< 2.5 mW

Offline tasks: e-mail,

calendar, etc.< 10 mW

Web browsing

(WiFi)~800 mW

The next frontier in mobile applications:MyTube, PocketBay, etc.

Media indexingservice

4

Tuesday, September 14, 2010

Execution continuum

Energy conversion rate

GSM phone calls < 2W

Duration of use Video playback

~1.1 W

Audio~50 mW

Video recording~1.4 W

GPS navigation~620 mW

Execution autonomy

Execution requires some user interactionBluetooth,

logging tools< 2.5 mW

Offline tasks: e-mail,

calendar, etc.< 10 mW

Web browsing

(WiFi)~800 mW

The next frontier in mobile applications:MyTube, PocketBay, etc.

Media indexingservice

4

Tuesday, September 14, 2010

Execution continuum

Energy conversion rate

GSM phone calls < 2W

Duration of use Video playback

~1.1 W

Audio~50 mW

Video recording~1.4 W

GPS navigation~620 mW

Execution autonomy

Execution requires little or no user interaction

Bluetooth, logging tools

< 2.5 mW

Offline tasks: e-mail,

calendar, etc.< 10 mW

Web browsing

(WiFi)~800 mW

The next frontier in mobile applications:MyTube, PocketBay, etc.

Media indexingservice

4

Tuesday, September 14, 2010

Execution continuum

Energy conversion rate

GSM phone calls < 2W

Duration of use Video playback

~1.1 W

Audio~50 mW

Video recording~1.4 W

GPS navigation~620 mW

Execution autonomy

Execution requires little or no user interaction

Bluetooth, logging tools

< 2.5 mW

Offline tasks: e-mail,

calendar, etc.< 10 mW

Web browsing

(WiFi)~800 mW

The next frontier in mobile applications:MyTube, PocketBay, etc.

Media indexingservice

4

Tuesday, September 14, 2010

Execution continuum

Energy conversion rate

GSM phone calls < 2W

Duration of use Video playback

~1.1 W

Audio~50 mW

Video recording~1.4 W

GPS navigation~620 mW

Execution autonomy

Execution requires little or no user interaction

Bluetooth, logging tools

< 2.5 mW

Offline tasks: e-mail,

calendar, etc.< 10 mW

Web browsing

(WiFi)~800 mW

The next frontier in mobile applications:MyTube, PocketBay, etc.

Media indexingservice

4

Tuesday, September 14, 2010

The next frontier in mobile applications

5

Tuesday, September 14, 2010

Wireless opportunistic communication

The next frontier in mobile applications

5

Tuesday, September 14, 2010

Wireless opportunistic communication

requires autonomous execution

The next frontier in mobile applications

5

Tuesday, September 14, 2010

Wireless opportunistic communication

requires autonomous execution

Continuous execution maximize connection opportunities

The next frontier in mobile applications

5

Tuesday, September 14, 2010

Wireless opportunistic communication

requires autonomous execution

Continuous execution maximize connection opportunities

Unfettered energy consumption can deplete finite energy resources

The next frontier in mobile applications

5

Tuesday, September 14, 2010

Wireless opportunistic communication

requires autonomous execution

Continuous execution maximize connection opportunities

Unfettered energy consumption can deplete finite energy resources

Unacceptable

The next frontier in mobile applications

5

Tuesday, September 14, 2010

Execution continuum

Energy conversion rate

Duration of use

Execution autonomy

Execution requires little or no user interaction

How to maximize benefit while minimizing impact?

The next frontier in mobile applications:MyTube, PocketBay, etc.

6

Tuesday, September 14, 2010

Smartphone usage study

7

Tuesday, September 14, 2010

Smartphone usage study

Need to understand how smartphone users consume energy on their personal mobile devices.

7

Tuesday, September 14, 2010

Smartphone usage study

Need to understand how smartphone users consume energy on their personal mobile devices.

Metrics:

7

Tuesday, September 14, 2010

Smartphone usage study

Need to understand how smartphone users consume energy on their personal mobile devices.

Metrics:

charge/discharge duration

7

Tuesday, September 14, 2010

Smartphone usage study

Need to understand how smartphone users consume energy on their personal mobile devices.

Metrics:

charge/discharge duration

charge/discharge initiation time and battery level

7

Tuesday, September 14, 2010

Smartphone usage study

Need to understand how smartphone users consume energy on their personal mobile devices.

Metrics:

charge/discharge duration

charge/discharge initiation time and battery level

battery level throughout the day

7

Tuesday, September 14, 2010

Smartphone usage study

Need to understand how smartphone users consume energy on their personal mobile devices.

Metrics:

charge/discharge duration

charge/discharge initiation time and battery level

battery level throughout the day

charge/discharge rate

7

Tuesday, September 14, 2010

Charge duration

0

20

40

60

80

100

1 10 100 1000 10000 100000

CD

F (%

)

Charge duration (seconds)

Global Charge Duration

Opportunistic chargerLight-consumers

Nighttime chargers

Tuesday, September 14, 2010

Discharge duration

0

20

40

60

80

100

1 10 100 1000 10000 100000

CD

F (%

)

Time between charges (seconds)

Global Discharge Duration

Opportunistic chargerLight-consumers

Nighttime chargers

Tuesday, September 14, 2010

Charge initiation time

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

Sunday Monday Tuesday Wednesday Thursday Friday Saturday

Tota

l sam

ples

(per

cent

)

Days of the week (1800 second sample interval)

Weekly Smartphone Charge Initiation Time (normalized to GMT)

Opportunistic chargerLight-consumers

Nighttime chargers

Tuesday, September 14, 2010

Charge initiation level

0

20

40

60

80

100

10 20 30 40 50 60 70 80 90

CD

F (%

)

Battery level at charge (%)

Global Battery Level at Charge

Opportunistic chargerLight-consumers

Nighttime chargers

Tuesday, September 14, 2010

Daily battery level

0

20

40

60

80

100

Sunday Monday Tuesday Wednesday Thursday Friday Saturday

Batte

ry le

vel (

perc

ent)

Days of the week (1800 second sample interval)

Daily Battery Level (normalized to GMT)

Opportunistic chargerLight-consumers

Nighttime chargers

Tuesday, September 14, 2010

Discharge rate

1.5

2

2.5

3

3.5

4

4.5

5

5.5

Sunday Monday Tuesday Wednesday Thursday Friday Saturday

Batte

ry d

isch

arge

rate

(bat

tery

leve

l / h

our)

Days of the week (1800 second sample interval)

Daily Battery Discharge Rate (normalized to GMT)

Opportunistic chargerLight-consumers

Nighttime chargers

Tuesday, September 14, 2010

Summary

Tuesday, September 14, 2010

Summary

Comprehensive user study

opportunistic chargers

light-consumers

nighttime chargers)

Tuesday, September 14, 2010

Summary

Comprehensive user study

opportunistic chargers

light-consumers

nighttime chargers)

Foundation for:

Regulating mobile application execution based on a predicted future battery level.

Predicting the successful execution rate of energy intensive applications given known energy consumption behaviour.

Tuesday, September 14, 2010

Questions?

Tuesday, September 14, 2010

User classification

Cluster by device

Cluster by energy consumption/replenishment characteristics

Which set of characteristics are best?

The set that yield the best prediction results.

Select clustering

parameters

Cluster k-means

Apply predictor (3-way cross

validation)

Retrieve mean prediction error

rate

Parameter analysis

16

Tuesday, September 14, 2010

User classification

17

Tuesday, September 14, 2010

User classification

Cluster by device

Cluster by energy consumption/replenishment characteristics

17

Tuesday, September 14, 2010

User classification

Cluster by device

Cluster by energy consumption/replenishment characteristics

Which set of characteristics are best?

17

Tuesday, September 14, 2010

User classification

Cluster by device

Cluster by energy consumption/replenishment characteristics

Which set of characteristics are best?

The set that yield the best prediction results.

17

Tuesday, September 14, 2010

Prediction algorithmδcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

18

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

18

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

True battery level

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

18

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

True battery level

t

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

18

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

True battery level

t t + 1 hour

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

18

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

True battery level

t t + 1 hour

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

tlast

18

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

True battery level

t t + 1 hour

δdischargetlast

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

tlast

18

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

True battery level

t t + 1 hour

δdischargetlast

ρdischarget

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

tlast

18

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

True battery level

t t + 1 hour

δdischargetlast

ρdischargetρdischarget+1

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

tlast

18

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

True battery level

t t + 1 hour

δdischargetlast

ρdischargetρdischarget+1

ρdischarget+2

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

tlast

18

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

True battery level

t t + 1 hour

δdischargetlast

ρdischargetρdischarget+1

ρdischarget+2

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

tlast

Predictedbattery level

Predictionerror

18

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

t1

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

True battery level

19

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

t1 t1 +6 hours

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

True battery level

19

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

t1 t1 +6 hours

tlast

δdischargetlast

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

True battery level

19

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

t1 t1 +6 hours

tlast

δdischargetlast

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

True battery level

t2

19

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

t1 t1 +6 hours

tlast

δdischargetlast

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

True battery level

t2

δcharget2

19

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

t1 t1 +6 hours

tlast

δdischargetlast

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

True battery level

t2

ρcharget2

δcharget2

19

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

t1 t1 +6 hours

tlast

δdischargetlast

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

True battery level

t2

ρcharget2

δcharget2

ρcharget2+1

19

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

t1 t1 +6 hours

tlast

δdischargetlast

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

True battery level

t2

ρcharget2

δcharget2

t3

δdischarget3

ρcharget2+1

t4

δcharget4

19

Tuesday, September 14, 2010

Prediction algorithm

Time

Batterylevel

100%

0%

t1 t1 +6 hours

tlast

δdischargetlast

δcharget = mean charge duration of a charge initiated during bucket(t)

δdischarget = mean discharge duration of a discharge initiated during bucket(t)

ρcharget = mean charge rate during bucket(t)

ρdischarget = mean charge rate during bucket(t) bucket size = 30 minutes

tlast = last time that the device began charging or discharging

True battery level

t2

ρcharget2

δcharget2

t3

δdischarget3

ρcharget2+1

t4

δcharget4

Predictionerror

19

Tuesday, September 14, 2010