Réduire la consommation électrique d'un PC

Comme tout les passionnées, vous avez tous une machine Linux qui tourne 24/24 ou presque. Afin de réduire la consommation de cette machine, il faut identifier les besoins en fonction du matériel.

Les composants qui consomment

  • L'écran (facile, il suffit de l'éteindre)
  • La carte graphique (si on en possède une)
  • Le processeur
  • Les ventilateurs (Eliminer les ventilateurs vous fait économiser l'énergie)
  • Les disques durs

Définition matériel

  • CPU AMD 2200+
  • Carte graphique NVIDIA 5200
  • 1 disque dur pour le système et les données (400 Go)
  • 2 disques pour les différentes sauvegardes

Définition des besoins

Voici les différents services disponible sur ma machine et leurs priorités.

  • Serveur Web
  • Serveur SVN
  • Sauvegarde de ma machine bureautique (personnel, les données les plus importantes)
  • Sauvegarde de mon portable (travail)

Action sur le matériel

  • Ma carte graphique est une carte passive donc pas de ventilateur
  • Remplacement du ventilateur chipset par un radiateur passif
  • Remplacement du radiateur/ventilateur cpu par un radiateur passif + ajout seulement d'un petit ventilateur

PROCESSEUR

Compiler le noyau avec le support de changement de fréquences.
Choisir le gouverneur et le pilote CPUFreq approprié

Installer acpid

# emerge sys-power/acpid
# /etc/init.d/acpid start
# rc-update add acpid default

Installer les outils cpufreq

# emerge cpufrequtils
# cpufreq-info

Maintenant, testez cpufreq-set pour être sûr que le changement de fréquence fonctionne.
Par exemple, lancez cpufreq-set -g ondemand pour activer le gouverneur ondemand
et vérifiez le changement avec cpufreq-info.

# cat /sys/devices/system/cpu/cpu*/cpufreq/*
# ls /lib/modules/$(uname -r)/kernel/drivers/cpufreq/ /lib/modules/$(uname -r)/kernel/arch/x86/kernel/cpu/cpufreq/

cpufrequtils peut fonctionner en mode automatique (si vous utilisez le gouverneur ondemand),
vous pouvez alors basculer sur le gouverneur userspace pour définir
manuellement une vitesse spécifique. Vous pouvez aussi paramétrer votre processeur
pour qu'il utilise sa plus haute ou sa plus basse fréquence possible en utilisant
respectivement les gouverneurs performance et powersave.

Installer le démon cpufreq

# emerge cpufreqd
# /etc/init.d/cpufreqd start
# rc-update add cpufreqd default

Quelques fois, il est préférable de choisir une politique différente de celle qu'a choisie
le démon. Par exemple lorsque la batterie est faible mais que vous savez que l'alimentation
secteur sera bientôt disponible. Dans ce cas, vous pouvez activer le mode manuel de cpufreqd
avec la commande cpufreqd-set manual et sélectionner la politique désirée
(parmi celles listées par cpufreqd-get). Vous pouvez quitter le mode manuel en tapant cpufreqd-set dynamic.

# watch grep \"cpu MHz\" /proc/cpuinfo
# watch x86info -mhz

DISQUE DUR

hdparm

Editez le fichier /etc/conf.d/hdparm et ajoutez-y les valeurs suivantes pour vos disques.
Cet exemple présume que votre disque dur se nomme hda :

Utiliser /etc/conf.d/hdparm pour la mise en veille des disques

hda_args="-q -S12"

Cela activera la gestion d'énergie de votre disque dur. Si vous vouliez
un jour la désactiver, éditez /etc/conf.d/hdparm et changez les valeurs
pour -q -S0 (ou exécutez hdparm -q -S0 /dev/hda).

Voir man hdparm pour les options.
Bien que vous puissiez démarrer le service hdparm manuellement
lorsque vous passez en mode batterie en lançant /etc/init.d/hdparm start,
il est bien plus commode d'automatiser son démarrage et son arrêt.
Pour ce faire, ajoutez hdparm au niveau d'exécution battery.

Automatiser la mise en veille des disques

# rc-update add hdparm default

Important : Soyez précautionneux lorsque vous décidez des délais pour l'arrêt
de votre disque dur. Utiliser des temps très courts pourrait user votre disque
et invalider votre garantie.

hdparm -C