Aller au contenu

[COURS] Noyaux sous-voltés | Undervolted kernels


Drébon

Recommended Posts

Noyaux sous-voltés | Undervolted kernels

Depuis quelques temps on voit de plus en plus de noyaux modifiés intégrant les patchs dits de sous-voltages (undervolted kernel ou kernel UV). Pour le Spica, on trouve différentes versions de noyaux sous-voltés, tant pour Eclair que pour Froyo/CM. L'objectif de ce cours est de donner quelques informations sur ce qu'est un noyau sous-volté, sur ce que l'on peut en attendre et des risques liés à son utilisation. On présentera aussi rapidement les bonnes pratiques pour profiter pleinement de ces noyaux.

1 ) Le principe des noyaux sous-voltés

Les noyaux sous-voltés sont des noyaux qui baissent la tension d'alimentation du cpu du téléphone. L'objectif de cette baisse de tension est une réduction de la consommation et donc une augmentation de la durée de vie.

En pratique, dans le code source du noyau, on trouve des lignes pour chaque fréquence possible du cpu avec le voltage à appliquer. Le patch de sous-voltage consiste à diminuer la valeur du voltage.

Pourquoi peut-on diminuer le voltage par rapport au voltage donné par le constructeur ?

C'est simple, une puce, pour fonctionner correctement doit avoir une tension minimale pour éviter de erreurs. Suivant la qualité de fabrication de la puce, elle va supporter des voltages plus ou moins bas. Lors de la production d'une série de puce, on va avoir une dispersion sur le voltage minimal supporté, du coup, le constructeur de téléphone cherchant à minimiser les coûts va d'une part tolérer une assez grande dispersion, et d'autre part avoir une configuration logicielle unique (ici c'est le noyau, ça reste assez proche du hardware) pour tous les téléphone du même modèle.

Du coup, il va fixer la tension d'alimentation à une valeur qui lui garantisse qu'au moins P % de puces qu'il a commandé fonctionnent correctement. Et il table sur P grand (sans doute de l'ordre de 99, mais je n'ai pas de données dessus).

Du coup, les puces fournies avec les téléphones ont une grande chance de pouvoir fonctionner à un voltage inférieur à celui fixé dans le noyau standard. C'est en profitant de cette marge que l'on peut abaisser le voltage de fonctionnement, de 50 mV, 100 mV ou encore 150 mV.

2 ) Quels sont les avantages et les inconvénients du sous-voltage

Un noyau sous-volté permet une augmentation significative de l'autonomie du téléphone (de l'ordre de 10 à 20 %). Et si un noyau sous-volté tourne sur votre système, normalement il n'y a aucune contre partie : un noyau sous-volté toléré par votre téléphone ne le rendra pas moins performant

Cependant, votre puce peut ne pas supporter le sous-voltage appliqué, vous vous exposez aux risques suivants (du plus grave au moins grave) :

  • freeze dès le recovery ou leboot logo ;
  • freeze pendant la boot animation ;
  • freeze à la sortie de veille de l'écran.

Pour les deux derniers cas, il suffit de passer en recovery pour appliquer un noyau moins (ou non) sous-volté

Pour le premier cas... On est obligé de de reflasher un noyau via Odin, et je ne sais pas si ça marche ien (je n'ai jamais été confronté au problème)

3 ) Les noyaux sous-voltés classiques

Les noyaux pour Eclair (android 2.1)

Il me semble que pour Eclair, les principaux noyaux sous-voltés sont les Turbo Kernels d'antibyte et peut-être certaines versions du noyaux de qbanin.

Les noyaux pour Froyo/CyanogenMod (android 2.2)

Voici la liste des noyaux sous-voltés à ma connaissance :

Basés sur le noyau standard de CM 7.3.1 : (donc compatibles avec les tweaks xda et FE pour CM(1))

  • UV-50mV with 5% battery driver (version #4) --> kernel-cm610a73-uv01.zip
  • UV-100mV with 5% battery driver (version #5) --> kernel-cm610a73-uv02.zip
  • UV-150mV with 5% battery driver (version #9) --> kernel009-cm-uv150.zip
  • UV-50mV with qbanin 1% battery driver (version #8) --> kernel008-cm-uv50-qbatt.zip
  • UV-100mV with qbanin 1% battery driver (version #7) --> kernel007-cm-uv100-qbatt.zip
  • UV-150mV with qbanin 1% battery driver (version #6) --> kernel006-cm-uv150-qbatt.zip

Basés sur le noyau kCriminal-2.6.29-6.r1 modifié par criminal : (donc non compatibles avec les tweaks xda et FE pour CM(1))

  • kCriminal-2.6.29.6.r1 (/!\ noyau de criminal qui est déjà sous-volté à -50mV /!\)
  • UV-50mV 1%batt --> krnl010-cm-uv50-1batt.zip
  • UV-100mV 1%batt --> krnl011-cm-uv100-1batt.zip
  • UV-150mV 1%batt --> krnl012-cm-uv150-1batt.zip

4 ) Du bon usage d'un noyau sous-volté

Une fois un noyau sous-volté installé, il vous faudra calibrer l'indicateur de batterie. Sans vraiment rentrer dans les détails, android se sert d'un fichier /data/system/batterystats.bin pour faire une correspondance tension aux bornes de la batterie/niveau de batterie. Le problème, c'est qu'avec un noyau sous volt, cette correspondance change. Il faut donc effectuer une calibration.

La calibration se fait en plusieurs étapes :

  1. Charge complète du téléphone (indication fully charged téléphone éteint) ;
  2. Suppression du fichier /data/system/batterystats.bin (voir comment faire plus bas)
  3. démarrage du téléphone branché et attente d'accès au sytème complètement chargé et utilisable (tout widget chargé etc...)
  4. débranchement du téléphone et utilisation jusqu'à extinction par batterie faible (tenter de le redémarrer pour être bien certain du batterie à 0)
  5. recharge complète et utilisation normale. c'est bon !

Pour la suppression du batterystats.bin, sous CM, c'est facile, il suffit de le faire dans le menu advanced du recovery.

Sous Eclair, ça dépend un peu du recovery que vous utilisez, si celui-ci n'a pas l'option, il faut le faire avec adb :

su
rm /data/system/batterystats.bin

/!\ Attention /!\

Il est déconseillé de décharger trop souvent complètement sa batterie (sur le wiki de CM, il est dit de ne pas le faire plus d'une fois tous les 30 charges). Donc ne faites de calibration que si vous changez de voltage lors d'un changement de noyau et que l'indicateur vous semble erroné par la suite.

Voila, avec ça vous devriez avoir un téléphone à l'autonomie optimisée.

(1) : Les tweaks xda et FE pour CM sont conçus pour le noyau de base. Certaines de leurs options ont à l'encontre des configuration par défaut d'autres noyaux (typiquement celui de criminal) et leur application est donc déconseillée sur les noyaux qui ne sont pas basés sur le noyau standard. Ceci dit, vous ne risquez rien de grave, juste un téléphone un peu lent. De même si vous installez un noyau de base criminal, pensez à faire un undo des tweaks avant.

Modifié par Drébon
Lien vers le commentaire
Partager sur d’autres sites

Cela aurait plus sa place dans le topic du cours de kyojin plutôt qu'un topic crée comme ça qui sera vite oublié, mais sinon bonne initiative.

rajouté sur le topic de centralisation...

Très bon topic, clair, rapide à lire et juste ce qu'il faut de complet ! Merci !

Alors je fais une réponse aux trois messages cités :

En effet j'ai pensé à mettre ça dans un topic cours, mais je préfère l'idée topic de centralisation/ topics spécifiques telle qu'a fait taz067 (merci). Je trouve que cette option permet de garder les topics concis et clairs, défaut de certains gros threads avec plein de très bonnes informations mais disséminées dans des tuto/cours qui se promènent à la page 35 sur 50 qui viennent compléter celui de la page 1.

Bon après idéalement, je suis contre les cours/tuto sur le forum, pour moi il faudrait uniquement les mettre sur le wiki (ce que je n'ai pas encore fait) et faire un topic de centralisation qui pointe vers des pages de discussions qui ont pour premièr post un lien vers la bonne page du wiki

Lien vers le commentaire
Partager sur d’autres sites

Cependant, votre puce peut ne pas supporter le sous-voltage appliqué, vous vous exposez aux risques suivants (du plus grave au moins grave) :

  • freeze dès le recovery ou leboot logo ;
  • freeze pendant la boot animation ;
  • freeze à la sortie de veille de l'écran.

Pour les deux derniers cas, il suffit de passer en recovery pour appliquer un noyau moins (ou non) sous-volté

Pour le premier cas... On est obligé de de reflasher un noyau via Odin, et je ne sais pas si ça marche ien (je n'ai jamais été confronté au problème)

effectivement il faut reflasher (j'en ai fais les frais) mais pour moi j'ai du flasher une première rom puis une seconde pour ne plus avoir de sequelle :S aprés chaque spica réagit différemment, donc a prendre en compte (ou pas d'ailleurs)

Lien vers le commentaire
Partager sur d’autres sites

superbe explications, il faudrait maintenant pouvoir remettre de l'ordre sur le forum et supprimer tous les topics inutiles comme j'ai pu le dire sur un autre topic, avoir la possibilité de supprimer les posts inutiles pour ceux qui créer des topics et de supprimer les topics inutiles par les modérateurs...

Lien vers le commentaire
Partager sur d’autres sites

Deux choses à dire:

- Bravo! Clair, concis et utile! :D

Merci, j'essaye de contribuer modestement avec ce que je comprend du monde d'android. Et puis sur ce forum on trouve déjà un bon nombre de sujets bien ficelés donc ça donne envie de s'y mettre

- Bien vu pour le Wiki, je n'y ai jamais pensé, mais je crois que je vais l'utiliser pour y mettre le cours, de façon à ce qu'il soit plus clair et moins "dispersé". ;)

Je viens plutôt du monde du wiki, les fora... C'est pas vachement mon truc... J'aime bien le travail collaboratif et suivi et surveillé.

tu es sur pour l'histoire des incompatibilités des tweak et du kernel ? car j'ai installé le kernel criminal -50uv apres les tweak et ca ne pose aucun probleme !!

C'est pas à proprement parler incompatible, c'est juste que ça perd l'intérêt de la config par défaut du noyau de criminal. Chez moi j'avais essayé kCriminal avec je ne sais plus lequel des tweaks, et c'était très bof... Après un undo des tweaks c'était vachement mieux.

Il me semble que le scheduler défini par les tweaks n'est pas dans le noyau de criminal (mais j'en suis pas certain), du coup une bonne partie de ces scripts risque de ne rien faire... Après, c'est pas interdit d'installer les tweaks, ni de trouver que ça marche mieux avec.

effectivement il faut reflasher (j'en ai fais les frais) mais pour moi j'ai du flasher une première rom puis une seconde pour ne plus avoir de sequelle :S aprés chaque spica réagit différemment, donc a prendre en compte (ou pas d'ailleurs)

Bon ben au moins ça marche par Odin, c'est rassurant.

superbe explications, il faudrait maintenant pouvoir remettre de l'ordre sur le forum et supprimer tous les topics inutiles comme j'ai pu le dire sur un autre topic, avoir la possibilité de supprimer les posts inutiles pour ceux qui créer des topics et de supprimer les topics inutiles par les modérateurs...

Merci.

Sinon pour l'ordre, comme je l'ai dit à mon sens, le mieux c'est discussions sur le forum et tuto/cours sur le wiki.

Lien vers le commentaire
Partager sur d’autres sites

Bah comme dit plus haut çà dépends de ton tél donc faut tester (c'était pareil pour l'overclock), moi j'aurais commencé par le -100, vu qu'il est situé entre les deux extrémums :P

basé sur le nouyau standard ou celui de criminel ?

faut faire la manipulation aussi du fichier batterie a effacer ... a chaque fois ?

Lien vers le commentaire
Partager sur d’autres sites

Ah çà portait sur çà la question! :emo_im_lips_are_sealed: Bah là aussi question de choix, perso je suis sous le kCriminal "normal" (qui est en fait déjà undervolted à -50mV) et tout se passe bien. Il apporte quoi le kCriminal? Quelques petits paramètres issus du vrai kernel FroYo, donc pourquoi pas essayer. ;)

Pour la batterie c'est à chaque fois que tu change de voltage.

Lien vers le commentaire
Partager sur d’autres sites

Je voudrais savoir quelle est la meilleur version de l'uv, le kernel basé sur l'original ou celui de criminal ?

j'ai voulu mettre la version de criminal #11 met bootloop alors j'ai du raté un truc ...

Comme me l'a dit kyojin juste au dessus, c'est une question de choix personnel et ce que ton tel est pret a recevoir ...

Kyojin et moi tournons sous kCriminal "normal" (qui est en fait déjà undervolted à -50mV) et tout se passe bien !!

@Chtarlight : c'est ce que j'ai fais et ca m'a fait comme un wipe data/cache ...c'est a dire ...adw alors que j'utilisait LP...les onglets de demarrage plus les miens ....enfin..est ce normal ?

Sinon ca à l'air de fonctionner normal !!

Lien vers le commentaire
Partager sur d’autres sites

Je ne suis pas specialiste du tout mais sur la 1ere page il est écrit :

2 ) Quels sont les avantages et les inconvénients du sous-voltage >>>donc de ces kernels en question

Un noyau sous-volté permet une augmentation significative de l'autonomie du téléphone (de l'ordre de 10 à 20 %). Et si un noyau sous-volté tourne sur votre système, normalement il n'y a aucune contre partie : un noyau sous-volté toléré par votre téléphone ne le rendra pas moins performant

Concernant le bootloop, c'est bizarre, sans doute defaillance dans le zip !!

Sinon il suffit de te faire un copier/coller de kernel-cm610a73-uv01.zip par exemple sur google et tu as différent liens pour les telecharger !!

Modifié par Coachsteve
Lien vers le commentaire
Partager sur d’autres sites

Ouais mais quel sont les réel différence ?

Sur le côté sous-voltage, la différence, c'est simplement la tension d'alimentation du cpu.

Ensuite ces noyaux sous-voltés sont dérivés de noyaux "normaux" qui peuvent avoir différents réglages et propriétés (scheduler, ...)

Du coup suivant les choix sur les autres options, tu vas prendre un noyau de base ci ou ça.

le probleme c'est que j'ai appliquer celui de criminal résultat bootloop ... et je trouve pas les liens de ceux basé sur le kernel de base

C'est pas très logique, en générale, on ne tombe pas sur une boot loop. Sinon sur samdroid, tu peux trouver tout ce qu'il faut niveau kernel, y compris les petits dernier de xmister

Lien vers le commentaire
Partager sur d’autres sites

Concernant le bootloop, c'est bizarre, sans doute defaillance dans le zip !!Sinon il suffit de te faire un copier/coller de kernel-cm610a73-uv01.zip par exemple sur google et tu as différent liens pour les telecharger !!

Ou sinon tu va récupérer les kernels a la source c.a.d ici (les deux premiers sujets)

Lien vers le commentaire
Partager sur d’autres sites

Rejoignez la conversation

Vous pouvez poster maintenant et vous enregistrez plus tard. Si vous avez un compte, connectez-vous maintenant pour poster.

Invité
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...