Energy consumption of smartphone components
Asked Answered
P

7

16

I'm looking for a list of all the components and their power drainage on an up-to-date smart phone.

  • Accelerometer, gyroscope, magnetometer, etc.
  • Display
  • WiFi
  • Bluetooth
  • GPS
  • CPU
  • Camera
  • Microphone
  • etc.

Preferably in mA so it can be easily compared to the battery's capacity (usually specified in mAh).

The Sensor's power is actually available via the SDK and can also easily figured out for most devices on AndroidFragmentation. However what I'm looking for is comparable data for the other hardware components to consider their efficency.

Bonus: Will a request for less frequent updates of a Sensor decrease energy consumption of the Sensor, as it returns only one value for getPower()?

Postmortem answered 30/5, 2012 at 22:28 Comment(0)
G
9

There are a couple of detailed studies that I am able to find on this.

  1. A study from the USENIX meeting in 2010 which studies various components of a smartphone (except the camera)
  2. Another study from the Hotmobile mobile computing workshop 2013 that has more information on cameras and displays.

Reference 1 especially seems a great starting point.

Gillette answered 15/5, 2013 at 2:27 Comment(0)
B
8

I'm looking for a list of all the components and their power drainage on an up-to-date smart phone.

That is impossible to answer.

First, different devices will use different varieties of these components, with different power characteristics.

Second, many, if not most, of those components will have no published power statistics, or the specific components themselves may not be knowable without a complete teardown of a device.

Will a request for less frequent updates of a Sensor decrease energy consumption of the Sensor, as it returns only one value for getPower()?

That will depend on the sensor. Some sensors are effectively always "on" (e.g., ambient light sensor), courtesy of the OS, in which case the only incremental power drain for your use of that sensor will be in passing that sensor data to your process. Other sensors might not be regularly used by the OS, meaning that your request for events from that sensor might turn it "on", resulting in power drain from the sensor itself in addition to supplying you with that data.

It would be truly wonderful if all Android devices were instrumented in the way the Qualcomm MDP is, so that we could get fine-grained power detail for our apps and their usage of various components.

Bunting answered 3/6, 2012 at 12:49 Comment(2)
I know it's difficult because of the vast variety of hardware components. I want rather to get a feeling of the proportions.Postmortem
I have a doubt like getPower() method,will it give the absolute power consumed by the sensor component or aggregate of the power consumed Sensor+ CPU computation + SensorService processing etc(aggregate power consumption from hardware to the app)?Titi
D
3

There was a Google I/O session on this very subject a few years ago; you can see the video here and slides pdf here.

Deft answered 2/6, 2012 at 10:10 Comment(0)
H
1

I know it's against the rules to plug your own startup, but what you're asking sounds exactly like what we're working on.

There's an Android performance monitoring tool called "Little Eye Labs". It shows real-time power consumption of an App as it runs on a phone. It currently only supports CPU, Display, GPS, Wifi and 3G, but you'll be able to get the instantaneous power consumed (in mW) by these components.

/end of plug

Note that there's no real way to get this information directly from a device, so the best you can do is model the phone, gather device resource consumption, and model power usage.

Huneycutt answered 25/4, 2013 at 13:11 Comment(0)
C
0

Display is the most power consuming part of the smartphones; accounting for up to 60% of total battery life (Can draw power up to 2W). There is a book called Green IT and its Applications; you can read it online in Google books.

Constructive answered 31/5, 2012 at 4:23 Comment(0)
A
0

On any modern Android, go to Settings > Battery (sometimes Settings > About > Battery). You should see a graph of power drain over time, as well as how much was used by what component.

Although consumption varies a lot based on usage patterns, in my experience the top consumers are display, radio, and CPU. I have not seen sensors rank high in energy use on any of my devices, in the absence of bugs. The link provided by Yusuf X places game sensors above CPU.

For more information about optimizing battery use on Android, see Reducing the battery impact of apps that downloads content over a smartphone radio and Optimizing Battery Life.

Adapter answered 2/6, 2012 at 10:8 Comment(0)
M
0

There is an app called PowerTutor that it does some battery consumption measurements for every phone component and for every process. The code is open so you can pick up some ideas from there. Note that this app was optimized for Google's phone, especially for the Nexus One.

Mcgarry answered 2/6, 2012 at 21:43 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.