Une autre alternative qui n'a pas été mentionnée est cpufrequtils
, que j'ai installé et utilisé sur mon ordinateur portable avec Debian 6. Il vous permet de changer l'algorithme (gouverneur , en cpufrequtils
terminologie) que le noyau utilise pour augmenter et diminuer la fréquence d'horloge en réponse à la charge - en particulier, le userspace
Le gouverneur vous permet de verrouiller la fréquence à quelque chose de votre choix (bien sûr, le processeur doit être capable de fonctionner à cette vitesse).
Je l'ai utilisé pour verrouiller un Atom à 800 MHz au lieu de 1,6 GHz, par exemple. C'est très facile à utiliser.
Je ne sais pas si limiter le CPU à l'ensemble du système est quelque chose de possible sans beaucoup de piratage, mais vous pouvez facilement limiter la quantité de CPU utilisée par un seul processus en utilisant cpulimit
La seule façon dont je peux penser que vous puissiez l'utiliser efficacement est d'écrire un script wrapper (je ne peux pas vraiment l'appeler un script, c'est si petit) pour les applications dont vous savez qu'elles sont gourmandes en ressources. Supposons, par exemple, que vous trouviez que google-chrome utilise beaucoup de CPU, vous pouvez remplacer le binaire google-chrome dans votre chemin par quelque chose comme :
#! /bin/bash
cpulimit --limit 70 /usr/bin/google-chrome-bin
Je n'ai pas testé cela, alors prenez-le avec un grain de sel. Sur le site Web de cpulimit, il semble que vous puissiez définir des règles pour les limites de processeur sur différentes applications. Je ne suis pas sûr, vous devriez jeter un œil.
Vous pouvez limiter automatiquement les cœurs de votre processeur en fonction de la température à l'aide du script temp_throttle. Il peut fonctionner en arrière-plan pendant que vous vous concentrez sur des choses plus importantes. Un exemple d'exécution :
sudo ./temp_throttle.sh 80 # Will limit CPU cores when 80C is reached.
* Avertissement - Je suis l'auteur et le responsable de temp_throttle *