11

One of the problems of new OSs is power consumption. That is because power and performance requires a lot of tweaks and experience with the kernel, drivers and OS code-base on one hand, and a lot of extensive long-term test and quality assurance on the other hand.

Given that Android is a rather old and established OS I saw that it has pretty good power consumption. Phoronix does this kind of comparissions but I was not able to find much about Ubuntu Touch.

Does Ubuntu Touch consume less than Android, do you have data on some platforms compared?

  • 1
    This will be most likely generate discussions about the energy policy Ubuntu touch have vs Android, which it still cannot be ascertained. My personal take would be: depends. – Braiam Jun 3 '14 at 18:08
5

My personal view (Might not be the answer you seek):

Why Android consumes more power?

Android applications utilize Google's highly optimized Java Virtual Machine. So if you are looking from out side, an Android application is run inside a virtual machine which is inside the real machine. So you actually have two machines instead of one.

Everytime an android app produces an instruction, it should be translated to into the native machine code from an intermediate code and is then executed by the CPU. This is an extra step which consumes power.

Ubuntu Touch's Internal Nature

Ubuntu touch has no Java Virtual Machine overhead. It can directly run binary programs compiled for the CPU, completely eliminating the need of translation. So we know the power consumption should be less in Ubuntu Touch for a certain extent.

However most Ubuntu Touch apps so far use an interpreter called qmlscene which does something similar to Java Virtual Machine. Those apps aren't in binary format but human readable code. The code is interpreted to CPU instructions at run time. qmlscene's impact on performance is less than Java runtime, because no virtual machine is involved. It is not noted to be a power hungry system as QT developers have made it extremely efficient.

There are many other reasons for extra power consumption as well. It includes 3G/4G usage management, background services etc. We ignore such facts, because they get different from one device to another. Those facts are at least controllable by the operating system for a certain extent.

Summary

Ubuntu touch will most probably consume less power than Android. At the time of writing it is not yet optimized to do so. We will have to wait until phones come out.

| improve this answer | |
  • 4
    Thanks for the answer. The Dalvik power consumption argument is treated here : superuser.com/a/639283/151294. I worked as Power engineer in QA and frankly I can see Dalvik consuming more memory, but Dalvik is pretty much optimized for the CPU and I guess its overhead is not that much. – Eduard Florinescu Jun 3 '14 at 10:14
  • 2
    This part is very unclear to me: They are interpreted to CPU instructions at run time. Thus, qmlscene's impact on performance is very efficient than Java runtime. It is not noted to be a power hungry system. If it translates instructions at run time, it's very similar to the JVM. How do you reach the conclusion (using the term Thus) that qmlscene's more efficient and less power hungry? – Shahbaz Jun 3 '14 at 11:50
  • 3
    You have no evidence for what you are saying actually significantly has impact and you are misinformed. Android's "Java Virtual Machine" is not a Java Virtual Machine. In addition, it was explicitly optimized for low power usage, and as a virtual machine can have more fine-grained control over power usage. Lastly, Android is moving away from the virtual machine to using natively executed code with the ART runtime. Lastly, all of this is only relevant to the power usage of the CPU, which is quite irrelevant when compared to the power usage of the screen, radios and other device components. – DCKing Jun 3 '14 at 13:31
  • 1
    You can't answer a question about power usage by making vague assumptions like that. Dalvik could be much more efficient than you think, but unless you test it you can't know. Moreover, power efficiency is hugely affected by number of system services, background tasks, etc., not just the runtime. – erjiang Jun 3 '14 at 14:08
  • 3
    I kindly invite you guys to update my answer or provide your own.. – Naveen Jun 3 '14 at 15:15
2

Ubuntu Touch may use more power on phones where it was not installed by default, because the drivers are not optimized by the people who created the phone, and may be less efficient than on Android.

To get a reliable answer, you will have to compare two nearly identical phones, one running Ubuntu Touch and the other Android. The one running Ubuntu Touch should be tuned to support Ubuntu (e.g. the Meizu or bq phones announced recently).

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.