Tout d'abord sachez qu'il est possible de configurer facilement les modes de fonctionnement du processeur sur Linux.
Par exemple j'ai un petit laptop avec un i3 sur Ubuntu.
Le noyau Linux inclut un module cpufreq, c'est celui-ci qui interagit, je pense, avec le driver du processeur. Et ce petit module on peut le contrôler, pour cela il existe plusieurs solutions. Je précise que les outils que je vais citer ne s'occupent que du processeur à part TLP qui peux faire plus en s'occupant des disques, bus pci, usb, etc.
indicator-cpu-freq (daté)
voir la doc Ubuntu (https://doc.ubuntu-fr.org/indicator-cpufreq)
voir le dépôt source du projet (https://launchpad.net/indicator-cpufreq)
Si vous allez voir le dépôt du projet vous verrez qu'il est mort, bien que toujours fonctionnel mais non sans bogues, il fourni une icône de notification (ne fonctionne pas avec Wayland). Dans mon cas il permet deux choses un mode performance et un mode économie.
Pour installer : sudo apt install indicator-cpu
ou cliquez ici apt://indicator-cpufreq
cpufreq (projet récent)
voir de dépôt source (https://github.com/konkor/cpufreq)
Ce projet est né d'un financement participatif, est opensourcé et sous licence GPLv3.
Il permet d'avoir un aperçu de la configuration actuelle et de définir le mode de fonctionnement manuellement.
il propose plusieurs interfaces :
cpufreq-application
Pour lancer l'inerface graphiquecpufreqctl
En ligne de commandecpufreq-indicator
Fourni une icone de notificationcpufreq-preferences
Ouvre les préférences de l'applicationcpufreq-service
Fonctionne en tant que service
Je ne vais pas détailler chaque élément mais sachez que pour utiliser cet outil il y a une prérogative pour en profiter pleinement.
Il faut désinstaller le paquet irq-balance : sudo apt purge irq-balance
et redémarrer.
Ce paquet est présent par défaut car utile en environnement serveur. Il réparti la charge équitablement entre les cœurs et empêche la configuration complète. https://github.com/konkor/cpufreq/issues/48
L'intérêt de cet outil est qu'il vous permet de définir des profils assez précis de consommation et performance par rapport au processeur.
TLP
voir la doc Ubuntu (https://doc.ubuntu-fr.org/tlp)
voir la doc complète en anglais (https://linrunner.de/en/tlp/docs/tlp-configuration.html)
Je ne vais pas le présenter car je ne l'ai pas assez utilisé, mais c'est une solution qui existe.
Sachez qu'il existe une possibilité de combiner TLP avec les autres outils cités de cet article :
https://askubuntu.com/questions/556894/tlp-dont-change-cpu-frequency
En gros il faut déactiver les gestions du processeur de TLP.
Et maintenant le sujet du jour !
auto-cpufreq
voir le dépôt source (https://github.com/AdnanHodzic/auto-cpufreq)
Cet outil va rendre intelligent les modes de consommation du processeur. Il est destiné à remplacer les outils cités précédemment (sauf TLP qui nécessite une configuration particulière dans ce cas voir section TLP de cet article).
Pour l'installer très simple en utilisant le snap storesudo snap install auto-cpufreq
ou alors vous pouvez l'installer avec les sourcesgit clone https://github.com/AdnanHodzic/auto-cpufreq.git
cd auto-cpufreq && sudo ./auto-cpufreq-installer
Utilisations
Usage: auto-cpufreq [OPTIONS]
Options:
--monitor Monitor and suggest CPU optimizations
--live Monitor and make suggested CPU optimizations
--install / --remove Install/remove daemon for automatic CPU optimizations
--log View live CPU optimization log made by daemon
--help Show this message and exit.
--monitor vous permet d'avoir un apperçu de ce qui est recommandé
-- live applique les recommandations
-- install install l'outil en tant que démon et donc il démarera au démarrage de la machine également
vous voulez appeler le script en tant que démon il existe aussi auto-cpufreq --daemon
Vous pouvez voir ce que fait exactement l'outil en lisant le code source ici
https://github.com/AdnanHodzic/auto-cpufreq/blob/master/source/core.py
J'ai pu voir une fonction qui agit sur le Bluetooth également en empêchant son activation automatique, mais elle ne s'active pas sur la version snap.
Autrement il n'y a pas de fichier de configuration, cet outil est plutôt un "run and forget".
Mais l'auteur est intéressé par cette fonctionnalité : https://github.com/AdnanHodzic/auto-cpufreq/issues/26
N'hésitez pas à contribuer si vous voulez voir cette fonction naitre.
Cet outil ne supporte pas les processeurs AMD.
https://github.com/AdnanHodzic/auto-cpufreq/issues/17
Dans tout les cas contribuez si le projet vous plait et que vous en avez les compétences.