Download presentation
Presentation is loading. Please wait.
1
Collaborative Detection of Energy Bugs
Adam Oliner, Anand Iyer, and Ion Stoica UC Berkeley Eemil Lagerspetz, and Sasu Tarkoma U Helsinki Carat / Collaborative Detection of Energy Bugs 9/7/2018
2
Mobile is hot … sometimes, literally
Carat / Collaborative Detection of Energy Bugs 9/7/2018
3
State of the Art Kill ALL your background apps Dim the screen
Exchange it at the store Look at CPU utilization Uninstall the app and then reinstall it Restart Carat / Collaborative Detection of Energy Bugs 9/7/2018
4
Related Work Survey of forum posts re: energy bugs
Abhinav Pathak, Y. Charlie Hu, Ming Zhang. Bootstrapping Energy Debugging on Smartphones: A First Look at Energy Bugs in Mobile Devices, HotNets’11 Mobile debugging framework proposal Sharad Agarwal, Ratul Mahajan, Alice Zheng, and Victor Bahl. There’s an app for that, but it doesn’t work. Diagnosing Mobile Applications in the Wild, HotNets’10 CarrierIQ, PowerTutor (Android), etc. Carat / Collaborative Detection of Energy Bugs 9/7/2018
5
Goals Characterize energy use on smartphones
Identify energy bugs in the wild Provide data to help diagnose / fix them Carat / Collaborative Detection of Energy Bugs 9/7/2018
6
Energy Bug An energy bug is a system behavior that causes unexpectedly heavy use of energy and which is not intrinsic to providing the desired functionality. Carat / Collaborative Detection of Energy Bugs 9/7/2018
7
Collaborative Detection
Community specifies expected behavior Statistical deviation is a bug Actionable Carat / Collaborative Detection of Energy Bugs 9/7/2018
8
What is Intrinsic? Carat / Collaborative Detection of Energy Bugs
9/7/2018
9
Is App X buggy? Carat / Collaborative Detection of Energy Bugs
9/7/2018
10
Carat Carat / Collaborative Detection of Energy Bugs 9/7/2018
11
Carat Architecture Carat / Collaborative Detection of Energy Bugs
9/7/2018
12
Sampling We collect... battery level, running apps, trigger
OS version, device model, uuid +more on Android (cpu usage, app memory fractions, battery temp, battery voltage, ...) ... when... battery level or status changes location changes the user is using Carat Carat / Collaborative Detection of Energy Bugs 9/7/2018
13
Challenges Data will be difficult to collect
Data will be noisy and incomplete Data will be biased Multiple confounding factors Carat / Collaborative Detection of Energy Bugs 9/7/2018
14
Privacy Concerns Opt-in EULA prior to installation
Nothing personally identifying is collected Sampled data shown within the app Carat / Collaborative Detection of Energy Bugs 9/7/2018
15
5% Battery Level Granularity
Deal with uncertainty using known points (BatteryLevelChanged event) Carat / Collaborative Detection of Energy Bugs 9/7/2018
16
Analysis Carat / Collaborative Detection of Energy Bugs 9/7/2018
17
Looks like it does, and it's not even parallel
Does it scale? Looks like it does, and it's not even parallel Carat / Collaborative Detection of Energy Bugs 9/7/2018
18
Found 3 separate bugs injected into Mobile Wikipedia
Can it find bugs? Found 3 separate bugs injected into Mobile Wikipedia Carat / Collaborative Detection of Energy Bugs 9/7/2018
19
Can it find real bugs? Found bugs corroborated by forum posts
Kidle on 6 of our clients, forums blame WhisperSync over 3G. Fix by turning on WiFi and save 2h battery life Facebook was a bug for 24 of its 63 users No strong correlations, may be caused by workload iOS used less energy than 5.0 in our data There is debate on which one is better. 5.1 improves on both in our data. Carat / Collaborative Detection of Energy Bugs 9/7/2018
20
Can it be accurate? Does sampling match reality?
“Do not attempt to calculate battery drainage rate or battery time remaining” - iOS API Docs re: UIDeviceBatteryLevelDidChangeNotification Monsoon Power Monitor Ground truth Carat / Collaborative Detection of Energy Bugs 9/7/2018
21
Battery indicator agrees with the Power Monitor
Carat / Collaborative Detection of Energy Bugs 9/7/2018
22
Battery drain rates distributions are also similar
Carat / Collaborative Detection of Energy Bugs 9/7/2018
23
TestFlight Beta on iOS Carat / Collaborative Detection of Energy Bugs
9/7/2018
24
Number of Active Users Grew Quickly -20k samples today from up to 75 active users
Carat / Collaborative Detection of Energy Bugs 9/7/2018
25
Top Devices/Carriers/OS versions
Carat / Collaborative Detection of Energy Bugs 9/7/2018
26
Sampling Triggers Carat / Collaborative Detection of Energy Bugs
9/7/2018
27
Some Hogs/Bugs Carat / Collaborative Detection of Energy Bugs 9/7/2018
28
Next Steps Expand beta testing App Store API for developers
Android port Platform for collaborative debugging Carat / Collaborative Detection of Energy Bugs 9/7/2018
29
End of Presentation carat.cs.berkeley.edu github.com/amplab/carat
Submitted to Mobicom Poster in NSDI HotDep in progress Carat / Collaborative Detection of Energy Bugs 9/7/2018
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.