: PowerTOP : Un outil pour réduire la consommation d'énergie sous GNU/Linux

Posté par Florent Zara (Jabber id, page perso, ). Modéré le 15 mai 2007.
0
Serait-ce l'un des premiers bénéfices de la nouvelle orientation d'Intel en faveur de Linux pour leur solutions mobiles ?

Arjan van de Ven, développeur chez Intel, vient d'annoncer la sortie d'un outil permettant d'identifier les applications et pilotes Linux les plus gourmands en énergie de façon très simple et lisible : PowerTOP liste ces mauvais citoyens en ordre décroissant, à la façon de l'utilitaire top. Il indique aussi le nombre d'éveils des processeurs par seconde et une estimation de la consommation actuelle en watt. Très facile d'utilisation, l'outil affiche même des conseils d'amélioration en fonction de votre configuration noyau (par exemple il recommande, si ce n'est déjà fait, d'activer NO_HZ, CONFIG_USB_SUSPEND, CONFIG_HPET et CONFIG_CPU_FREQ_GOV_ONDEMAND et de désactiver CONFIG_IRQBALANCE et CONFIG_ACPI_DEBUG). Pas besoin d'être un développeur chevronné donc : tout utilisateur de GNU/Linux doté d'un PC portable devrait pouvoir utiliser cet outil (en revanche, il faut penser à signaler aux développeurs les problèmes de consommation d'énergie que cela permet de découvrir dans leurs logiciels).

Plus d'informations dans la suite de l'article

NdM: Un grand merci à herodiade, auteur du journal à l'origine de cette dépêche.

> Lire la suite (92 commentaires, moyenne: 2,2).   [dépêche : 7547 caractères]

Vous avez demandé le commentaire #839189.

Autres compléments d'informations

Posté par herodiade () le 29/05/2007 à 14:02. (lien). Évalué à 10.

Le projet PowerTOP avance à un rythme effréné (et pour cause, Arjan y travaille à plein temps). Il y a eu 5 releases depuis la rédaction du journal (de la 1.0 on est aujourd'hui à la version 5) !

Quelques compléments d'infos donc :

* Avant que je journal soit « niouzifié », j'ai écrit d'autres compléments d'informations ici : http://linuxfr.org/comments/831869.html#831869
* Keith Packard, développeur d'Xorg, témoigne : « Avec PowerTOP, j'ai réussi à améliorer l'autonomie de mon portable Panasonic R4 de 4 heures à presque 7 heures » [http://www.linuxpowertop.org/success.php] Bref, attendez vous à des progrès sensibles !
* Le panel des suggestions proposées par l'outil s'étend maintenant à l'espace utilisateur. Il est désormais capable d'appliquer certaines des propositions lui-même, à la volée.
* L'affichage utilise désormais ncurses, et c'est plus confortable.
* PowerTOP est intégré dans les versions de développement de la plupart des distributions maintenant.
* Il est désormais traduit en français, et doté d'une page de manuel.
* Les développeurs de Gaim Pidgin ont déjà sorti une nouvelle version, 2.0.1 corrigeant les problèmes levés par PowerTOP. Bravo !
* L'astuce « Option "NoDRI" » indiquée pour le problème des drivers i915 fonctionne aussi pour les drivers radeon et fglrx
* Vous verrez peut-être "i8042" assez haut dans la liste des causes de réveils. Il s'agit du pilote clavier. Le problème est connu.
* Vous verrez peut-être aussi des choses comme "[interrupt] : ide1" (ou libata ou ide0 " alors que vous ne pensez pas utiliser les disques. C'est probablement hald qui les surveille (re-testez après avoir tué hald).
* Si l'une des applications les plus gourmandes sur votre système affiche des select() ou poll() en boucle lorsque vous faites "strace -tt -p $(pidof monapplication)", ce n'est probablement pas normal, les développeurs ont probablement choisi des timeout trop courts.
* Beaucoup de gens se demandent pourquoi ils ne voient pas les C-states C3 et C4 sur leur machine. 1) essayez après avoir débranché le cable d'alim (sur batterie, quoi). 2) tout les processeurs/BIOS ne supportent pas ces C-states (attention à la confusion : /proc/acpi/processor/*/power indique "max_cstate: C8", mais c'est seulement le nombre de C-states que supporte le noyau Linux, pas le nombre physiquement implémenté dans le matériel).
* On vois beaucoup de confusion au sujet de HPET sur la m-l de PowerTOP. Je vais donc essayer de préciser. HPET est une source d'évenements temporels (une « event source for timers ticks », pas une « clocksource ») alternative au traditionnel mais ancien PIT. PIT a une grosse limitation : il ne peut dormir plus de 26ms, et génère donc en conséquence une trentaine d'interruptions par secondes (symptôme : PowerTOP affiche quelque chose du genre : « ( 27.3) [interrupt] : extra timer interrupt »). HPET est théoriquement supporté par le matériel récent (mais pas toujours), mais il faut qu'il soit activé dans le noyau, et surtout, que le BIOS ne le masque pas (ce qui est très courant : les mauvaises langues disent que les fabriquants de portables le masquent parce que, n'étant pas supporté par WinXP, cela afficherai un point d'exclamation jaune dans le gestionnaire de périphérique de Windows). Sur le site de PowerTOP, on trouve une solution à ce problème : un patch noyau qui force l'activation d'HPET, nonobstant les indications du BIOS. Bref, il ne suffit pas d'avoir HPET dans le noyau pour qu'il soit actif sur votre système : pour le vérifier, grep "Clock Event Device" /proc/timer_list .


Un petite déception : très peut d'utilisateurs témoignent des problèmes qu'ils rencontrent (pourtant Arjan est très newbie friendly. Franchement) et n'indiquent pas leurs découvertes d'applications ou modules noyau les plus gourmands (condition sine qua non pour que le problème soit corrigé). À moins que les utilisateurs de PowerTOP soient tout simplement très peu nombreux.

Visiblement, beaucoup semblent penser que « quelqu'un l'a déjà fait, un autre développeur du logiciel gourmand foo doit probablement avoir utilisé powertop » (remarque que j'ai plusieurs fois reçu lorsque j'ai indiqué des problèmes découverts par PowerTOP à des développeurs).

En réalité, peu de projets sont avertis de ces problèmes, et on découvre chaque jour des applications pourtant extrêmement utilisées dont personne n'a reporté le comportement inadéquat. La possibilité d'identifier ces comportements facilement est très récente, et le champs très vaste, c'est une véritable forêt vierge. En conséquence il reste énormément d'environnements logiciels à défricher, énormément de low hanging fruits à ramasser, c'est très facile, alors venez vous amusez ! :)

  • [^]Re: Autres compléments d'informations

    Posté par gpe () le 29/05/2007 à 14:47. (lien). Évalué à 5.

    Un petite déception : très peut d'utilisateurs témoignent des problèmes qu'ils rencontrent (pourtant Arjan est très newbie friendly. Franchement) et n'indiquent pas leurs découvertes d'applications ou modules noyau les plus gourmands (condition sine qua non pour que le problème soit corrigé). À moins que les utilisateurs de PowerTOP soient tout simplement très peu nombreux.


    Les utilisateurs doivent-être assez peu niombreux car des distri qui soient en 2.6.21 ça ne coure pas les rues, non?
    Perso je suis en 2.6.18, donc PowerTop je l'essaierai le jour ou ma distri passera en 2.6.21.

    • [^]Re: Autres compléments d'informations

      Posté par herodiade () le 31/05/2007 à 17:17. (lien). Évalué à 2.

      des distri qui soient en 2.6.21 ça ne coure pas les rues, non?

      Certes, mais pour jouer, se faire un petit 2.6.21 (voir un 2.6.22-rc3) temporaire ne prends pas bien longtemps (et on peut encore plus rapidement revenir en arrière). Bénéfice secondaire, quand ta distrib passera au 2.6.22, le support de ton matériel par le noyau sera déjà testé (et les éventuels bugs, peut-être reportés) ;)

      Sinon, la Fedora 7 vient de sortir, avec un noyau 2.6.21 (je ne sait pas si elle a CONFIG_TIMER_STATS activé par défaut) ...

      • [^]Re: Autres compléments d'informations

        Posté par gpe () le 31/05/2007 à 21:31. (lien). Évalué à 4.

        Certes, mais cette population qui s'amuse à se compiler un noyau en avance de phase est réduite. Surtout que si j'ai bien compris le passage d'un 2.6.18 à un 2.6.21 ou 22 peut poser quelques soucis, il y a eu pas mal de changement à partir du 2.6.19, non?

        Perso, ça doit faire cinq ans que je n'ai pas compilé un noyau (depuis que je suis passé en Debian) et que je ne suis pas prêt à m'y remettre parce que je n'en vois pas l'intérêt, parce que je n'ai pas le temps, parce que quand j'ai du temps je préfère le passer à autre chose, etc.
        N'étant pas non plus décidé à abandonner ma Debian pour une Fedora 7, j'attends donc sans impatience particulière que qu'un noyau compatible PowerTOP arrive dans Debian testing.

        Tout ceci explique à mon avis le faible nombre de retour sur PowerTOP et qu'il ne faut pas s'en étonner.

        • [^]Re: Autres compléments d'informations

          Posté par yoho (page perso, ) le 06/06/2007 à 23:13. (lien). Évalué à 1.

          Je parlais de la version de Mandriva stable, en plus (2007 spring).

    [^]Re: Autres compléments d'informations

    Posté par herodiade () le 29/05/2007 à 14:52. (lien). Évalué à 4.

    J'oubliais, si vous voulez en savoir plus sur les questions relatives à l'autonomie et au noyau Linux (et les fonctionalités ACPI, les « governors » cpufreq, ...), lire aussi ceci :
    http://www.free-it.de/archiv/talks_2005/paper-11017/paper-11(...)

    Le document date de deux ans, mais il est toujours très intéressant, et son auteur, Dominik Brodowski (qui est au passage développeur noyau de cpufreq) a vu très juste : il a parfaitement anticipé les évolutions du noyau dont on peut aujourd'hui profiter et les problématiques actuelles !

    • [^]Re: Autres compléments d'informations

      Posté par yoho (page perso, ) le 06/06/2007 à 23:12. (lien). Évalué à 1.

      Pour information, à ce jour, Mandriva Linux possède deux branches du kernel compatibles avec powerTop : kernel-tmb et kernel-linus (la dernière ne possédant aucun patches et la première possédant des patches expérimentaux genre "-ck")