Presentation is loading. Please wait.

Presentation is loading. Please wait.

Collaborative Detection of Energy Bugs

Similar presentations


Presentation on theme: "Collaborative Detection of Energy Bugs"— Presentation transcript:

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


Download ppt "Collaborative Detection of Energy Bugs"

Similar presentations


Ads by Google