¿Ubuntu Touch consume menos energía que Android? [cerrado]

11

Uno de los problemas de los nuevos sistemas operativos es el consumo de energía. Esto se debe a que la potencia y el rendimiento requieren muchos ajustes y experiencia con el núcleo, los controladores y la base de código del sistema operativo, por un lado, y muchas pruebas extensas a largo plazo y garantía de calidad, por otro lado.

Dado que Android es un sistema operativo bastante antiguo y establecido, vi que tiene un consumo de energía bastante bueno. Phoronix hace este tipo de comparaciones, pero no pude encontrar mucho sobre Ubuntu Touch.

¿Ubuntu Touch consume menos que Android? ¿Tiene datos en algunas plataformas en comparación?

Eduard Florinescu
fuente
1
Lo más probable es que esto genere discusiones sobre la política energética que Ubuntu touch tiene frente a Android, que aún no se puede determinar. Mi opinión personal sería: depende.
Braiam

Respuestas:

5

Mi opinión personal (podría no ser la respuesta que busca):

¿Por qué Android consume más energía?

Las aplicaciones de Android utilizan la máquina virtual Java altamente optimizada de Google. Entonces, si está mirando desde afuera, una aplicación de Android se ejecuta dentro de una máquina virtual que está dentro de la máquina real. Entonces, en realidad tienes dos máquinas en lugar de una.

Cada vez que una aplicación de Android produce una instrucción, debe traducirse al código de máquina nativo desde un código intermedio y luego es ejecutada por la CPU. Este es un paso adicional que consume energía.

La naturaleza interna de Ubuntu Touch

Ubuntu touch no tiene sobrecarga de Java Virtual Machine. Puede ejecutar directamente programas binarios compilados para la CPU, eliminando por completo la necesidad de traducción. Entonces, sabemos que el consumo de energía debería ser menor en Ubuntu Touch en cierta medida.

Sin embargo, la mayoría de las aplicaciones Ubuntu Touch hasta ahora usan un intérprete llamado qmlsceneque hace algo similar a Java Virtual Machine. Esas aplicaciones no están en formato binario sino en código legible por humanos. El código se interpreta según las instrucciones de la CPU en tiempo de ejecución. qmlsceneEl impacto en el rendimiento es menor que el tiempo de ejecución de Java, porque no está involucrada ninguna máquina virtual. No se observa que sea un sistema que necesita mucha energía, ya que los desarrolladores de QT lo han hecho extremadamente eficiente.

Hay muchas otras razones para el consumo de energía adicional también. Incluye administración de uso 3G / 4G, servicios en segundo plano, etc. Ignoramos tales hechos, porque se diferencian de un dispositivo a otro. Esos hechos son al menos controlables por el sistema operativo en cierta medida.

Resumen

Ubuntu touch probablemente consumirá menos energía que Android. En el momento de escribir esto, todavía no está optimizado para hacerlo. Tendremos que esperar hasta que salgan los teléfonos.

Naveen
fuente
44
Gracias por la respuesta. El argumento del consumo de energía de Dalvik se trata aquí: superuser.com/a/639283/151294 . Trabajé como ingeniero de energía en control de calidad y, francamente, puedo ver que Dalvik consume más memoria, pero Dalvik está bastante optimizado para la CPU y supongo que su sobrecarga no es tanta.
Eduard Florinescu
2
Esta parte no me resulta muy clara: se interpretan según las instrucciones de la CPU en tiempo de ejecución. Por lo tanto, qmlsceneel impacto en el rendimiento es muy eficiente que el tiempo de ejecución de Java. No se observa que sea un sistema hambriento de poder. Si traduce instrucciones en tiempo de ejecución, es muy similar a la JVM. ¿Cómo se llega a la conclusión (usando el término Así ) que qmlscenees más eficiente y necesita menos energía?
Shahbaz
3
No tiene evidencia de lo que está diciendo en realidad tiene un impacto significativo y está mal informado. La "máquina virtual Java" de Android no es una máquina virtual Java. Además, se optimizó explícitamente para un bajo consumo de energía y, como máquina virtual, puede tener un control más preciso sobre el uso de energía. Por último, Android se está alejando de la máquina virtual para usar código ejecutado de forma nativa con el tiempo de ejecución de ART. Por último, todo esto solo es relevante para el uso de energía de la CPU, que es bastante irrelevante en comparación con el uso de energía de la pantalla, radios y otros componentes del dispositivo.
DCKing
1
No puede responder una pregunta sobre el uso de energía haciendo suposiciones vagas como esa. Dalvik podría ser mucho más eficiente de lo que piensas, pero a menos que lo pruebes no puedes saberlo. Además, la eficiencia energética se ve enormemente afectada por la cantidad de servicios del sistema, tareas en segundo plano, etc., no solo el tiempo de ejecución.
erjiang
3
Los invito amablemente a actualizar mi respuesta o proporcionar la suya ..
Naveen
2

Ubuntu Touch puede usar más energía en teléfonos donde no se instaló de manera predeterminada, porque los controladores no están optimizados por las personas que crearon el teléfono y pueden ser menos eficientes que en Android.

Para obtener una respuesta confiable, tendrá que comparar dos teléfonos casi idénticos, uno con Ubuntu Touch y el otro con Android. El que ejecuta Ubuntu Touch debe estar sintonizado para admitir Ubuntu (por ejemplo, los teléfonos Meizu o bq anunciados recientemente).

CameronNemo
fuente