Ubuntu Touch consomme-t-il moins d'énergie qu'Android? [fermé]

11

L'un des problèmes des nouveaux systèmes d'exploitation est la consommation d'énergie. C'est parce que la puissance et les performances nécessitent beaucoup de réglages et d'expérience avec le noyau, les pilotes et la base de code du système d'exploitation d'une part, et beaucoup de tests à long terme et d'assurance qualité de l'autre.

Étant donné qu'Android est un système d'exploitation assez ancien et établi, j'ai vu qu'il avait une assez bonne consommation d'énergie. Phoronix fait ce genre de comparaisons mais je n'ai pas pu trouver grand-chose sur Ubuntu Touch.

Ubuntu Touch consomme-t-il moins qu'Android, avez-vous des données sur certaines plateformes comparées?

Eduard Florinescu
la source
1
Cela générera très probablement des discussions sur la politique énergétique d'Ubuntu touch par rapport à Android, ce qui ne peut toujours pas être vérifié. Ma prise personnelle serait: dépend.
Braiam

Réponses:

5

Mon point de vue personnel (pourrait ne pas être la réponse que vous cherchez):

Pourquoi Android consomme plus d'énergie?

Les applications Android utilisent la machine virtuelle Java hautement optimisée de Google. Donc, si vous regardez de l'extérieur, une application Android est exécutée à l'intérieur d'une machine virtuelle qui se trouve à l'intérieur de la vraie machine. Vous avez donc en fait deux machines au lieu d'une.

Chaque fois qu'une application Android produit une instruction, elle doit être traduite en code machine natif à partir d'un code intermédiaire, puis exécutée par le CPU. Il s'agit d'une étape supplémentaire qui consomme de l'énergie.

La nature interne d'Ubuntu Touch

Ubuntu touch n'a pas de surcharge de machine virtuelle Java. Il peut exécuter directement des programmes binaires compilés pour le CPU, éliminant complètement le besoin de traduction. Nous savons donc que la consommation d'énergie devrait être inférieure dans Ubuntu Touch dans une certaine mesure.

Cependant, la plupart des applications Ubuntu Touch utilisent jusqu'à présent un interpréteur appelé qmlscenequi fait quelque chose de similaire à Java Virtual Machine. Ces applications ne sont pas au format binaire mais du code lisible par l'homme. Le code est interprété selon les instructions du processeur au moment de l'exécution. qmlsceneL'impact sur les performances est inférieur à celui de Java, car aucune machine virtuelle n'est impliquée. Il n'est pas noté qu'il s'agit d'un système énergivore, car les développeurs QT l'ont rendu extrêmement efficace.

Il existe également de nombreuses autres raisons pour une consommation d'énergie supplémentaire. Il comprend la gestion de l'utilisation 3G / 4G, les services d'arrière-plan, etc. Nous ignorons ces faits, car ils diffèrent d'un appareil à l'autre. Ces faits sont au moins contrôlables par le système d'exploitation dans une certaine mesure.

Résumé

Ubuntu touch consommera très probablement moins d'énergie qu'Android. Au moment de l'écriture, il n'est pas encore optimisé pour le faire. Nous devrons attendre la sortie des téléphones.

Naveen
la source
4
Merci d'avoir répondu. L'argument de la consommation d'énergie de Dalvik est traité ici: superuser.com/a/639283/151294 . J'ai travaillé en tant qu'ingénieur Power en QA et franchement, je peux voir Dalvik consommer plus de mémoire, mais Dalvik est à peu près optimisé pour le CPU et je suppose que sa surcharge n'est pas si importante.
Eduard Florinescu
2
Cette partie n'est pas très claire pour moi: elles sont interprétées selon les instructions du processeur au moment de l'exécution. Ainsi, qmlscenel'impact sur les performances est très efficace par rapport à l'exécution Java. Il ne s'agit pas d'un système énergivore. S'il traduit des instructions au moment de l'exécution, il est très similaire à la JVM. Comment arrivez-vous à la conclusion (en utilisant le terme Ainsi ) qui qmlsceneest plus efficace et moins gourmande en énergie?
Shahbaz
3
Vous n'avez aucune preuve que ce que vous dites a un impact significatif et vous êtes mal informé. La «machine virtuelle Java» d'Android n'est pas une machine virtuelle Java. En outre, il a été explicitement optimisé pour une faible consommation d'énergie et, en tant que machine virtuelle, peut avoir un contrôle plus fin sur la consommation d'énergie. Enfin, Android s'éloigne de la machine virtuelle pour utiliser du code exécuté nativement avec le runtime ART. Enfin, tout cela n'est pertinent que pour la consommation d'énergie du processeur, ce qui est tout à fait hors de propos par rapport à la consommation d'énergie de l'écran, des radios et des autres composants de l'appareil.
DCKing du
1
Vous ne pouvez pas répondre à une question sur la consommation d'énergie en faisant de telles hypothèses. Dalvik pourrait être beaucoup plus efficace que vous ne le pensez, mais à moins de le tester, vous ne pouvez pas le savoir. De plus, l'efficacité énergétique est fortement affectée par le nombre de services système, les tâches d'arrière-plan, etc., et pas seulement le temps d'exécution.
erjiang
3
Je vous invite à mettre à jour ma réponse ou à fournir la vôtre ..
Naveen
2

Ubuntu Touch peut utiliser plus d'énergie sur les téléphones où il n'était pas installé par défaut, car les pilotes ne sont pas optimisés par les personnes qui ont créé le téléphone, et peuvent être moins efficaces que sur Android.

Pour obtenir une réponse fiable, vous devrez comparer deux téléphones presque identiques, l'un exécutant Ubuntu Touch et l'autre Android. Celui qui exécute Ubuntu Touch devrait être réglé pour prendre en charge Ubuntu (par exemple, les téléphones Meizu ou bq annoncés récemment).

CameronNemo
la source