Chapitre 1.  Réduction de la consommation d'énergie

Table des matières

1. Gestion avancée de l'énergie (APM/ACPI)
1.1. ACPI
1.2. Ancien matériel avec APM
1.3. Gestion de la fréquence du processeur.
1.4. Ressources utiles pour la gestion de puissance
1.5. Restaurer votre travail après un arrêt.
2. Unité de gestion de l'énergie (Power Management Unit — PMU — Apple PowerBook)
3. Éteindre l'écran, utiliser les LED du clavier
4. Écrans de veille
4.1. Les programmes d'écrans de veille
4.2. Contrôle de l'énergie de l'écran
5. Serveurs Virtuels
6. Label Energy Star
7. Divers techniques de réduction de la consommation d'énergie

Il y a plusieurs moyens de réduire la consommation d'énergie quand on utilise un ordinateur sous Linux : Gestion avancée de l'énergie (Advanced Power Management), certains réglages des disques durs, travailler sans moniteur et autres.

Mettre votre ordinateur en veille ou veille prolongée sous Linux/GNU.

La plupart des PC récents supportent le standard ACPI (Advanced Configuration and Power Interface, Configuration avancée et gestion de l'énergie). Le projet ACPI4Linux travaille sur une implantation complète du standard ACPI dans le noyau Linux, incluant le contrôle des ventilateurs, détection d'intrusion.

Toutes les informations de l'ACPI (comme la température du processeur ou de la carte mère) sont disponibles dans les fichiers contenus dans /proc/acpi. Cela permet très facilement à des environnements de travail, ou à vos propres programmes, d'afficher ces informations n'importe où à l'écran.

Mettre en hibernation et ne plus avoir peur d'éteindre votre système. Revenir d'une hibernation est plus rapide que de devoir attendre que tous les services et interfaces graphiques aient démarré. En fait, on gagne du temps en récupérant le travail tel qu'on l'avait laissé (fichiers ouverts, terminaux, navigateurs). Ce n'est plus la peine de tout rouvrir !

L'hibernation est souvent considérée comme une solution d'économie d'énergie pour les ultra-portables. Mais elle peut aussi être utilisée pour des ordinateurs de bureau pour réduire la consommation d'énergie. Utilisez-la quand vous allez manger, quand vous quittez le bureau le soir, quand vous partez en vacances...

L'hibernation permet aussi de gagner beaucoup de temps quand vous changez la batterie d'un ultra-portable. Encore une fois, utilisez l'hibernation, installez une nouvelle batterie, rallumez et récupérez votre travail tel que vous l'avez laissé avant de passer en hibernation.

Détails techniques

  • L'hibernation des disques est implémentée par le projet Suspend 2 for Linux. Il consiste en un pilote du noyau et un programme dans l'espace de l'utilisateur pour contrôler le pilote. Les utilisateurs doivent juste lancer le programme (usuellement appelé hibernate)

  • Elle fonctionne en copiant la totalité de la RAM utilisée sur une partition SWAP. De ce fait, la partition SWAP doit être au moins aussi grande que la quantité de RAM.

  • Le noyau modifié et le programme sont très simples a installer grâce aux paquets.

    • Les paquets Fedora Core sont disponibles sur http://mhensler.de/swsusp/.

    • Dans les versions d'Ubuntu (ou de Kubuntu) supérieures à la version 6.06, l'hibernation est directement disponible comme une option depuis l'icône batterie.

    • Pour les autres distributions, allez voir votre serveur de paquet préféré.

Dans le Petit guide des batteries sous Linux, il est dit que : " .. pour que l'APM fonctionne sur tous les portables et ordinateurs de bureau dotés d'une gestion de l'énergie, la ROM BIOS du système doit être compatible avec le standard APM. En plus, pour que l'APM fonctionne sous Linux, le BIOS doit supporter la version 1.0 ou 1.1 du standard APM, et aussi les connexions en mode protégé 32 bits. Un système qui supporte l'APM version 1.1 est préféré, puisqu'il fournit plus de fonctionnalités que les pilotes du matériel, et les utilitaires supportés peuvent en tirer un bénéfice." On peut obtenir des informations sur la version de l'APM avec la commande dmesg qui se trouve dans le fichier /proc/apm.

cpufreq est un pilote du noyau Linux qui contrôle la fréquence du CPU. Il est inclus dans tous les noyaux récents et validé par défaut dans les dernières distributions. Il supporte les plus récents processeurs "mobiles". Notez que seulement de tels processeurs supportent la graduation de fréquence.

Ce pilote permet aux programmes utilisateurs de contrôler la fréquence du CPU en écrivant les fichiers dans /sys/devices/system/cpu/cpu<n>/cpufreq/.

En fait, la graduation de fréquence est habituellement manipulée par un programme gouverneur, selon les préférences spécifiques du système ou de l'utilisateur.

CPUSpeed est de fait le programme gouverneur pour Linux. Il permet de contrôler le pilote cpufreq selon les critères définis par l'utilisateur : charge CPU, température de la carte mère, état de la batterie, ... Il est disponible par défaut dans les distributions récentes.

CPUspeed est habituellement configuré à travers le fichier /etc/cpuspeed.conf. Exemple Fedora Core 4 :

VMAJOR=1
VMINOR=1
DRIVER="speedstep-centrino"
OPTS="-i 2
-t /proc/acpi/thermal_zone/THM/temperature 70
-a /proc/acpi/ac_adapter/AC/state
-p 10 25
-m 600000 -M 1600000"

Après avoir fait les changements, on peut redémarrer CPUspeed avec la commande /etc/init.d/cpuspeed restart (exemple sous Fedora Core 4).

Taper /usr/sbin/cpuspeed -h pour plus de détails et d'options.

On peut utiliser cat /proc/cpuinfo pour consulter la vitesse actuelle du processeur. Il est pratique de vérifier que la vitesse du processeur tient bien compte des réglages.

  • hdparm — La commande hdparm est un utilitaire pour disques IDE sous Linux qui permet de régler Le temps avant l'arrêt et d'autres paramètres des disques. Il fonctionne aussi pour quelques disques SCSI.

  • Mode ordinateur portableLe mode ordinateur portable — Un dispositif implanté dans le noyau Linux depuis la version 2.6.6. L'idée est de faire tourner le disque dur seulement pendant la lecture de données qui ne sont pas dans le cache, pour retarder et grouper les écritures sur le disque, dans l'ordre pour réduire la consommation du disque dur et économiser la batterie. Des scripts de contrôle sont embarqués par défaut dans les distributions récentes.

    Le mode ordinateur portable peut ne pas être activé par défaut sur les distributions, comme ce n'est pas recommandé pour les serveurs et les ordinateurs portables fonctionnant sur une source de courant AC, car le risque de perdre des données lors d'un crash ou d'une coupure de courant.

  • Dynamic Tick — Quand il est activé, cet utilitaire du noyau permet de désactiver le minuteur d'interruptions du CPU quand tous les processus sont en attente. De cette manière, les systèmes en attente ne sont pas réveillés toutes les 4 ms (temps par défaut dans Linux 2.6) juste pour réaliser qu'il n'y a rien à faire ! Cela peut économiser un petit peu de la batterie dans les ultra-portables (et les cycles de CPU dans les serveurs d'hôtes virtuels). Les interruptions sont réactivées quand quelque chose se passe réellement, quand une vraie interruption matérielle est reçue. Dans la configuration du noyau, cet utilitaire peut être sélectionné depuis la section utilitaires du noyau (réglage NO_IDLE_HZ).

  • Mise à jour mobile de démons — C'est un remplacement pour le démon standard update, mobile-update minimise le temps de démarrage des disques et le temps d'activité de ceux-ci. Il nettoie les tampons seulement quand le disque est en activité. Pour assurer un système de fichiers cohérent appeler sync manuellement. Autrement, des fichiers peuvent être perdus lors d'une panne de courant. mobile-update n'utilise pas l'APM, par conséquent il fonctionne aussi sur les vieux systèmes.

  • Option de montage noatime — Dans les systèmes d'exploitation comme Linux, qui sont conformes à la norme POSIX, les systèmes de fichiers sont censés enregistrer la date de la dernière fois où les fichiers ont été lus. Avec les réglages par défaut du noyau, même si des fichiers sont lus depuis le cache dans la RAM, cela cause une écriture des données sur le disque toutes les 5 secondes.

    Pour éviter ça et réduire l'activité du disque dur, on peut ajouter l'option de montage noatime dans le fichier /etc/fstab.

    Cette option n'a pas d'impact signifiant connu sur les programmes, usuels, excepté peut-être pour les programmes d'archivage, pour lesquels un accès à la date d'accès des fichiers est utile.

  • utilitaires Toshiba Linux — C'est un ensemble d'utilitaires pour Linux pour contrôler le ventilateur, les mots de passe superviseur, et les raccourcis pour les ultra-portables Toshiba Pentiums. Il y a aussi un paquet pour KDE, Klibreta.

  • LCDproc — « LCDproc est un petit programme qui permettra à votre système Linux d'afficher les informations du système sur un écran LCD 20x4 lignes. ». Pour autant que je sache, il se connecte seulement à l'écran externe Matrix-Orbital, qui est un écran LCD connectable via un port série.

  • Dial Daemon — Le démon Diald fournit sur demande une connexion à internet en utilisant le protocole SLIP ou PPP. Diald peut automatiquement numéroter vers un hôte au besoin ou couper une connexion quand elle est inactive.