User-Aware Power Management
for Mobile Devices
8/11/2016 9:38 AM
Geunsik Lim, Changwoo Min, Dong Hyun Kang, and Young Ik Eom
Sungkyunkwan University, Korea
Samsung Electronics Co., Ltd., Korea
IEEE GCCE 2013
3/15
Battery Monitor Powertutor AppScope JuiceDefender
Physical Extension External Battery Solar Recharger
How to extend battery lifeHardwareSoftware
4/15
1. Turn off radios like WiFi, Bluetooth etc : If you don’t ne
ed them, turn them off. You don’t need GPS or Bluetooth
all the time.
2. Turn off apps that use more battery: You can close the
applications (e.g. running applications, sync) you don’t ne
ed to supply battery.
3. Decrease Screen Brightness & Screen timeout: You can
decrease brightness to save battery little more
4. Turn on Airplane Mode : Airplane Mode is useful if you
don’t need to connect to WiFi or mobile data networks.
Extending battery life by users
5/15
• Typical pattern of power consumption of a mobile device without running
any user applications (factory reset).
• The breakdown of each factor about degradation of battery lifespan.
• Platform developers does not report no cases of battery degradation.
* Experimental Device: Galaxy S2 (1,650mAh)
Breakdown of power consumption in mobile
6/15
How should “Our idea” …
1. Recognize the idle time of users?
2. Execute wake-up automatically from shutdown status?
3. How can user control?
Challenges: a great way to get new insights
7/15
• Our approach is a system that consists of the RTC-based kernel feature and
the user-space mobile app to extend battery life.
• The major goal of Our system is to control the turn-off and reboot
operation as well as suspend-to-ram/suspend-to-disk during the sleep
period of customers.
After
1 day
After
2 days
After
3 days
After
0 day
User-Aware Power
Management for
Mobile Devices!!!
Problem Create idea How
What is our idea?
8/15
Hardware
Kernel-space
(4)Battery
Timer
(3)SleepLevel
Controller
(2) Sleep Time Manager
(1) User-space Client
Memory
Suspend-To-RAM
Suspend-To-Disk
CompleteOff
Overall diagram of proposed system 1/2
Time Scheduling
Based on RTC-Timer
User-space Client
START
Sleep Time Manager Suspend-To-RAM (S3)
Suspend-To-Disk
Turn-Off
Power Saving
Level == {1|2|3}
Wake-up (By Battery Timer)
Service Restoration END
(1)
(2)
(3)
OverallArchitectureEntireFlowDiagram
10/15
Sleep()
/sys/…/current_clocksource
UserKernelHardware
gettimeofday() clock_* API nanosleep()
do_gettimeofday() xtime HRT (High Resolution Timer)
Clocksource
Framework
Clockevent
Framework
APICJiffies ACPI TSC
PIT
HPET
ITimer API
…
RTC
Overall structure of RTC-based H/W timer
• Timekeeping using clocksource and clockevents based on RTC timer.
11/15
• User-aware UI interface for complete automation.
Suspend-to-
resume
Suspend-to-
disk
Complete-off
By
interrupt
30 Min.
1 Hour
30 Min.
1 Hour
2 Hour
Customi
ze
Customi
ze
Wakeup Time Sleep Time
Check the period of display-off
status “Wakeup Time”
If display-off period happens
again, repeat the execution of
“Wakeup time/Sleep time”
If the display-off period is bigger
than user-setting, Execute one of
the three methods “Sleep Level”.
Restart services after “Sleep Time”.
Start
End
Sleep Level
Relation between user-space client and operation
12/15
Because of turn-on of some peripheral
devices (Just, Engineering issue)
Evaluation: w/o additional user apps
• Galaxy S2: 1,650mAh
• Galaxy S3: 2,100mAh
• Nexus 7: 4,325mAh
• Laptop : 4,400mAh
14/15
• Even when users do not use any applications, battery lifespan
decreases continually. e.g., (1) device operations & service
daemons and (2) application daemons
• A new power management system that controls the power
supply completely via four major components such as (1) user-
space client, (2) sleep time manager, (3) sleep level controller,
and (4) battery timer.
• Our system extends the battery lifespan compared to the existing
system.
a. w/o additional user applications: power saving is 18%
b. w/ additional user applications: power saving is 34%
• In addition, proposed system reschedules automatically all
services in advance before the user tries to reuse the mobile
device.
Conclusion
16/15
1. Who cares about Timer-based phone. Can you do it
for Window and iPhone?
2. Are you one of those who don’t care about the
power consumption for restarting of service
daemons?
3. Sounds too good. Are there any limitations?
4. Are you going to release it? Or is it a one of paper?
5. I totally don’t get why you are doing this?
FAQ
17/15
1. This approach is Hardware-based software solution.
But, the most of mobile devices have H/W alarm
timer.
2. Users needs to do battery consumption to relaunch
the services of mobile platform. (Up to 1%)
3. If you can always use battery adapter in your real life?
We only focus on the battery lifespan in the mobility
view.
Limitation
19/15
Related Work: Power Tutor
• Power tutor
• Mian Dong and Lin Zhong, “Self-constructive, high-rate energy modeling
for battery-powered mobile systems,” in Proc. of the ACM/USENIX Int.
Conf. Mobile Systems, Applications, and Services (MobiSys), June 2011.
Architecture of Sesame with three major components: data collector,
model constructor and model manager
20/15
Related Work: AppScope
• AppScope
• C. Yoon, D. Kim, W. Jung, C. Kang, and H. Cha, “Appscope: Application
energy metering framework for android smartphone using kernel activity
monitoring,” in Proc. of the USENIX Annual Technical Conference
(USENIX ATC), s2012.
AppScope overview on Android platform
21/15
Related Work: Power Scheduling Algorithm
• R. Nathuji and K. Schwan, “Reducing system level power consumption for mobile
and embedded platforms,” in Proc. of the ARCS'05 Proceedings of the 18th
international conference on Architecture of Computing Systems conference on
Systems Aspects in Organic and Pervasive Computing, pp. 18-32, 2005.
• A new process scheduling algorithm which accumulates device usage information
in the form of device windows to make power a first class resource
Bursting Device Accesses
22/15
Related Work: Energy-aware application Performance
• T. Simunic, L. Benini, P. Glynn, and G. D. Micheli, “Dynamic power
management for portable systems,” in Proc. of the 6th annual
international conference on Mobile computing and networking
(MobiCom),” pp. 11-19. 2000.
• The time-indexed SMDP model (TISMDP) that we use to derive optimal
policy for DPM(Dynamic Power Management) in portable systems.
23/15
Related Work: DFS-based Power Saving Algorithm
The operating frequency of CPU is dynamically changed in accordance to the estimated processing
burden of each video frame. The frame-based dynamic frequency scaling is applied to the MPEG4 v
ideo decoding in the portable kitchen TV system, (e.g., ARM926EJ-S Processor)
Summary: Dynamic Frequency Scaling Based Power Saving Algorithm for a
Portable Kitchen TV Won-Jong Kim (Chung-Ang University, Korea)
24/15
Related Work: Accurate GPU Power Estimation
GPU Applications, GPU Power Consumption Analysis, GPU Power
Previous works: utilization based, system call based <-- online pow
er profiling techniques
The power profile obtained from each technique with that obtained
from a hardware power monitoring device.
To calculate accuracy, we compare the power profile obtained from
each technique with that obtained from a hardware power monitori
ng device.
Summary: Accurate GPU Power Estimation for Mobile Device Power Profiling
Minyong Kim (Korea University, Korea)
25/15
Related Work: Battery Manager (by Google)
Battery Manager related JAVA APIs
http://developer.android.com/reference/android/os/BatteryManager.html
Monitoring the Battery Level and Charging State
http://developer.android.com/training/monitoring-device-state/battery-monitoring.html
Optimizing Battery Life
http://developer.android.com/training/monitoring-device-state/index.html
27/15
15 minutes for oral presentations will include:
1. A brief introduction of the speaker by Session Chair
2. The body of your presentation
3. A brief question-and-answer period
4. A setting minute to change over to the next presenter
Please prepare the presenter's brief bio and give it to Session Chairs before
beginning of your session.
Each presentation room has a Windows PC with a PowerPoint Viewer and an
Adobe Reader. You may also use your own Windows PC or Macintosh via a
VGA (DSUB 15-pin) connector.
Attn: Best Paper Award and Best Student Paper Award will be chosen
from papers presented at Award and Student Award Candidate Sessions on
Oct. 1st. The award winners will be announced at the Award Banquet on Oct.
3rd.
Oral Presentation Guideline
Editor's Notes
Hi, Everyone. My name is Geunsik Lim.
In this session, I will talk about the user-aware power management for mobile devices.
----------------------------------------------------------
15 minutes for oral presentations will include:
A brief introduction of the speaker by Session Chair
The body of your presentation
A brief question-and-answer period
A setting minute to change over to the next presenter
Please prepare the presenter's brief bio and give it to Session Chairs before beginning of your session.
Each presentation room has a Windows PC with a PowerPoint Viewer and an Adobe Reader.
You may also use your own Windows PC or Macintosh via a VGA (DSUB 15-pin) connector.
Here is outline.
In general, there are two approaches to extend battery life for mobile devices.
First, As you can see, Here is hardware approach.
Second, Here is software approach.
In real environment, most users try to reduce power consumption like this.
First, turn off radio like WiFi, Bluetooth.
Second, turn off applications that use more battery.
Third, decrease screen brightness and screen timeout
Fourth, turn on airplane mode if we do not need to connect to WiFi or mobile data networks.
The graph shows breakdown of the power consumption that consumes 19% of the battery while user does not use the mobile device for eight hours on dual-core smart phone. Using a battery monitoring unit , we classify the sources of power consumption in a mobile device. The y-axis in the graph represents the power usage. The maximum power of the y-axis is 315 mAh. The most power is consumed by following factors.
1 device operations & service daemons like cell standby, device idle, and Android OS.
2 application daemons like Wi-Fi, Screen, and Gmail.
-------------------
From our experiment, we verified that device operations & service daemons deplete 80% of the battery power and application daemons deplete 20% of the battery power.
The previous studies on power management cover the power monitoring methods on applications or devices. Most of the software approaches terminate unimportant service applications to reduce power consumption whenever the battery lifespan reaches at the point less than or equal to the specified threshold. That is, the existing research does not handle power consumption of the mobile platform.
Therefore, We propose a new battery management system to settle the problem of power consumption shown in the previous page. We introduce an automatic battery manager that completely controls the power supply of the mobile device based on hardware timer to suppress the battery consumption of mobile platform while customer does not use the mobile device.
Our approach is a system that consists of the Hardware timer based kernel component and the user-space mobile application to extend battery life.
The major goal of our system is to control the turn-off and reboot operation as well as suspend-to-ram/suspend-to-disk during the sleep period of customers.
The proposed power management system consists of four major components as you can see.
The picture shows the sequential diagram when the user gives input with the power consumption policy using the user-space client.
The user-space client sends user-aware time information to the sleep time manager in kernel-space. When the user cannot charge the battery, the user can save sleep time and wake-up time easily with the user-space client as a user input interface.
(2) The sleep time manager controls the execution time such as sleep time and wake-up time.
It restarts all service daemons of a mobile device automatically when the current time of mobile device reaches a specified wake-up time. The sleep time manager requests actual works to battery timer. If users set sleep time of the mobile platform and wake-up time of all services with user-space client, the sleep time manager schedules with the time data given by user.
(3) The sleep level controller in the picture consists of three controllers: suspend-to-ram, suspend-to-disk, and complete off.
suspend-to-ram supplies the battery power to memory only to retain the content in memory after saving the all contents into volatile memory.
suspend-to-disk preserves all the contents into storage using swap mechanism to avoid the power supply of memory additionally against the suspend-to-ram.
complete-off suppresses the battery supply completely until all services of the mobile device restart to execute user manipulation.
(4) the battery timer supplies the power to the mobile device using timer-based clocksource and clockevent. The battery timer executes sleep procedure and wake-up procedure by hardware timer periodically. The battery timer saves time information into memory of hardware timer.
In a state where the supply of the battery is cut off, a hardware level timer restores all services to the runnable status. When the proposed system suppresses the power supply of mobile devices and all services at a specified time instantly, the battery timer in the picture executes automatically and re-launches all services after a specified time. As a result of that, users can save unnecessary power consumption like red arrow.
The proposed approach depends on the hardware design because the battery timer operates based on hardware timer for implementation in real device. The implementation of the battery timer is easy because mobile devices operate alarm software based on hardware timer called real time clock. In the state where the power supply of the mobile device is interrupted, the battery timer preserves the time data transmitted from the sleep time manager for the wake-up procedure.
When the user cannot charge the battery, the user can save sleep time and wake-up time easily with the user-space client as a user input interface. The sleep time and the wake-up time can be decided by user regardless of the available battery capacity.
This page shows the experimental result of proposed system.
the x-axis means the different battery capacity of devices. The y-axis means the available battery capacity.
From our experimental result, our system drastically extended the battery lifespan up to 18% against the existing system without any user applications.
----------------------------
Rate of power consumption of suspend-to-ram is faster than that of suspend-to-disk. Rate of power consumption of suspend-to-disk is similar to that of complete-off due to only the power supply of the battery timer. However, the small circle in graph shows that power consumption of suspend-to-disk is exhausted more than that of complete-off. From our analysis, we found out that these results were happened due to the power supply of peripheral devices that depends on system-on-chip design.
Also, our system drastically extended the battery lifespan up to 34% against the existing system with downloaded user applications form application store.
So far, we proposed a new power management system that controls the power supply completely based on hardware timer. We studied that battery lifespan decreases continually although users do not use any applications. Our system manages the battery power consumption via four major components such as user-space client, sleep time manager, sleep level controller, and battery timer. We showed our system extended the battery lifespan up to 34% compared to the existing system. In addition, the proposed system reschedules automatically all services in advance before the user tries to reuse the mobile device.