27
Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Embed Size (px)

DESCRIPTION

Introduction The smartphones now are manufactured with tandem to the rapid technological advancements to benefit from these technologies. So we see the mobiles always compatible with technologies, such as: With These Technologies: Indeed, Mobile devices have progressively become more powerful. BUT THESE ARE POWER HUNGRY TECHNOLOGIES Thus Mobile devices have become more and more power-inefficient too

Citation preview

Page 1: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Power Guru: Implementing Smart Power Management on the Android PlatformWritten by Raef Mchaymech

Page 2: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Overview• Introduction• Motivation• Solution• Current Approaches

• Current Solutions and Researches

• Proposed Approach• The Power Guru• Conclusion and Future Directions

Page 3: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Introduction• The smartphones now are manufactured with tandem to the rapid

technological advancements to benefit from these technologies.• So we see the mobiles always compatible with technologies, such as:

• With These Technologies:• Indeed, Mobile devices have progressively become more powerful. BUT THESE ARE POWER HUNGRY TECHNOLOGIES• Thus Mobile devices have become more and more power-inefficient too

Page 4: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Motivation• The Technologies are rapidly evolving, and the smartphones are

keeping up with this evolution.• This keeping up exists because that the hardware embodied within the

mobile devices are rapidly evolving too• CPU• Screen• Radios• Memory

• But the Battery technology –From a Hardware Perspective- could not keep up with these technologies

• So the need for mechanisms that manage the usage of battery in smart ways

Page 5: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

The Solution• The authors’ contribution is on the application layer and not a

physical solution• They saw that the key is:

• in handling multitasking on a device• Monitoring the running processes• Investigating background processes• Etc…

• The suggested approach is considered a novel one comparing to existing solutions

• So I will represent current approaches before detailing the proposed solution

Page 6: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Current ApproachesAp

ple • iOS only supports

multitasking of a few apps that come with the system

• no other applications are allowed to run in the background

Palm

• WebOS supports multi-tasking of all applications

• gives the user a graphical way to view all currently running applications

Goog

le • Android as WebOS supports multi-tasking

• does not include a graphical way for the user to view/kill running applications

• Google claims that it kills unneeded processes automatically

Page 7: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Current Solutions and Researches• Installing task managers to overcome the problem

• Current task managers show the running processes• The user then can take a decision to kill some processes• This solution is not optimal for any user, especially for novice users

• Most of the research done on power management has focused on hardware solutions and software that turns off hardware features• The solutions that are in the non application layer are very unobtrusive

to the user• E.g. optimizing the use of each CPU cycle, memory management, screen

brightness

Page 8: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

The Proposed Approach• The Current approaches lack an automatic decision making• They don’t suggest to the user which process to kill• The authors addressed the problem with a more user-friendly

application• The Power Guru app:

• Work on asking the user to prioritize some applications• Classify the running processes based on their power consumption• Display the remaining battery time• Suggest to the user an application to kill and estimate what would be

the remaining time if the app is killed

Page 9: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Power GuruThe app is developed on a device running the android 1.6 firmware, using the APIs exposed by Google. The APIs services for getting information about thebattery status, but not the CPU, screen, radio orother resource usage.

Page 10: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

The three parts

GUI

Data Collector

Algorithms

The GUI is very simple:• apps arranged in list, so the user Can prioritize some apps.• The prioritized apps are moved to a list for prioritized applications• Always the remaining battery time is displayed

Page 11: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Data Collector• For better estimation, Power Guru must be provided with data about

the battery status, CPU usage and preferably information about radio, screen and other hardware usage

• The current implementation only collects battery and CPU info:• To get Battery info, the app was registered as a receiver to the

“ACTION BATTERY CHANGED” notifications.• In android there is no OS notification to get CPU usage for each

application:• background service that parses the ”/proc/1234/stat” UNIX file is used• This file shows all processes and how much CPU time each one has used

Page 12: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Algorithms

Battery estimation algorithm

Application to kill

suggestions algorithm

Page 13: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Battery estimation algorithm• First the algorithm assumes that a fully charged device with no load

will last for 300 hours.• CPU loads , remaining time • This linear correlation is inaccurate:

• There exist other things that impact the battery life• The battery might not discharge linearly

• Since it’s for estimation purposes, it gives reasonable results

Page 14: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Application to kill suggestions algorithm• Select the most power hungry running application (not prioritized)

currently running• Calling the former algorithm, it estimates what the remaining

battery life would be if the chosen app is killed• Repeating until the additional improvement in battery life by killing

another application is less than 5%.

Page 15: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Evaluation

Page 16: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Issues with testing• There are several issues associated with using battery time as a

metric:• It is a time consuming effort• The emulator does not have any support for battery• battery discharge is not a very accurate indicator of how the battery is

being used• E.g. Display may kept turn on linger, burst of emails,…

• The phone falls into idle state on an irregular basis• These tests are not representative of the actual usage of a phone by

real users• E.g. Phone calls are not taken into account

Page 17: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Testing Conditions• On android 1.6 firmware• On HTC G1 phone• Data are gathered from the built-in settings and not some third

party apps• A drawback when using the built-in settings, i.e. not all the applications

are shown in the list.• E.g. both Camera and Music applications are clubbed under a single name of

’Media Server’

• Wi-Fi was kept turned on• In the result (below), the category called Others include processes

that could not be killed. E.g. Android OS, Display, Core apps…

Page 18: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

4 Test Cases

Case 1

• Email is the only running application

Case 2

• Email• Camera• Music• Google

Maps

Case 3

• Email• YouTube• UStream• Gaming

Case 4

• Email• Some

other application

• Power Guru

Page 19: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Results

Case 1: 20% in 14 hoursCase 2: more than 40% in 4 hours (music)Case 3: more than 60% in just 30 minutes (Ustream)

Page 20: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

The built-in Settings App

Page 21: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

The built-in Settings App

Page 22: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Some Correlation

Page 23: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Some Correlation

Page 24: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

YouTube is missing!

Page 25: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

With Power Guru- Camera (85), suggest (114)- Gaming ran for 35 mns- Ustream ran for less than 25

mns- Email and Browser never

suggested to be killed

Page 26: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Conclusion and Future Directions• Conclusion:

• Power Guru makes task management easier to do for novice users, by having them select the applications they know they want to use instead of asking them to select all the applications they don’t want to use.

• Future Works:• Use machine learning to improve the estimate for each battery cycle• Adding information to the algorithms about screen and radio usage in

addition to the already present CPU information would lead to more accurate selections and battery time estimations

Page 27: Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech

Thank YouWritten by Raef Mchaymech

f