27 points par baeba 2025-05-13 | 6 commentaires | Partager sur WhatsApp

Linux est un OS efficace, mais une utilisation excessive de la RAM et du CPU peut entraîner une baisse des performances et une instabilité du système.
Cet article présente des méthodes d’optimisation concrètes, notamment des outils de surveillance, la gestion des processus et le réglage du noyau.


1. Trouver les processus qui consomment le plus de ressources

Utilisez les commandes top, htop et ps pour identifier les processus qui utilisent le plus de CPU et de mémoire.
Notez leur PID pour les actions à suivre.

# top  
top          # P: tri CPU, M: tri mémoire  
  
# Installation et exécution de htop  
sudo apt install htop  
htop         # F6: tri, F9: quitter  
  
# Commande ps  
ps aux --sort=-%mem | head  
ps aux --sort=-%cpu | head  

2. Arrêter les processus inutiles

Les commandes kill, kill -9 et pkill permettent d’arrêter les processus qui consomment trop de ressources.
Les processus qui ne répondent pas peuvent être forcés à s’arrêter ou tués en lot par leur nom.

kill PID  
kill -9 PID  
pkill process_name  

3. Optimiser les programmes lancés automatiquement

Avec systemctl, vous pouvez vérifier les services exécutés automatiquement au démarrage et désactiver ceux qui sont inutiles.
Dans un environnement GUI, vous pouvez aussi utiliser le gestionnaire d’applications au démarrage.

systemctl list-unit-files --type=service | grep enabled  
sudo systemctl disable nom_du_service  

4. Ajuster la swappiness

La swappiness est un paramètre qui contrôle la fréquence d’utilisation de la mémoire swap.
Abaisser sa valeur par défaut de 60 à 10 donne la priorité à l’utilisation de la RAM et peut aider à améliorer les performances.

cat /proc/sys/vm/swappiness  
sudo nano /etc/sysctl.conf  # ajouter vm.swappiness=10  
sudo sysctl -p  

5. Utiliser un environnement de bureau léger

À la place de GNOME ou KDE, utiliser un environnement de bureau plus léger comme XFCE, LXDE ou MATE permet d’économiser des ressources.
Il en va de même pour les applications, que vous pouvez remplacer par des éditeurs, navigateurs et gestionnaires de fichiers plus légers.


6. Nettoyer manuellement le cache et les buffers

Linux utilise la RAM comme cache pour améliorer les performances, mais un nettoyage manuel reste possible si nécessaire.
Attention toutefois, cela peut entraîner une baisse temporaire des performances.

sudo sync; sudo sysctl -w vm.drop_caches=3  

7. Optimiser les paramètres du noyau

Vous pouvez rendre la gestion des ressources plus efficace en modifiant des paramètres du noyau, comme la fréquence d’écriture sur disque ou la quantité minimale de RAM à préserver.

# Exemples d’éléments à ajouter dans /etc/sysctl.conf  
vm.dirty_background_ratio=5  
vm.dirty_ratio=10  
vm.min_free_kbytes=65536  
kernel.sched_autogroup_enabled=0  

8. Utiliser ZRAM

ZRAM compresse la mémoire et permet ainsi d’économiser de la RAM.
Si vous configurez aussi Zswap, le swap compressé sera également activé.

sudo apt install zram-config  
sudo systemctl start zram-config  
  
# Ajouter aux réglages GRUB  
sudo nano /etc/default/grub  
GRUB_CMDLINE_LINUX_DEFAULT="zswap.enabled=1"  
sudo update-grub  
sudo reboot  

9. Limiter l’utilisation CPU d’un processus

La commande cpulimit permet de limiter l’utilisation CPU d’un processus spécifique.
Une limite permanente peut aussi être définie avec les paramètres systemd.

sudo apt install cpulimit  
sudo cpulimit -e firefox -l 30  # limiter firefox à 30 %  
  
# Configuration avec systemd  
sudo systemctl set-property nom_du_service CPUQuota=30%  

10. Mettre régulièrement le système à jour

Les mises à jour récentes contribuent à améliorer les performances et à corriger des bugs, il faut donc les appliquer régulièrement.

sudo apt update && sudo apt upgrade    # Debian/Ubuntu  
sudo yum update                        # RHEL/CentOS  

6 commentaires

 
wls52 2025-05-13

Je ne connaissais zram que de nom, alors je me suis demandé quels pouvaient être ses inconvénients et j’ai posé la question à qwq:32b.

Pourquoi les distributions Linux n’activent-elles pas zram par défaut ?

Parce que les problèmes de manque de mémoire sont devenus moins fréquents sur les systèmes modernes : aujourd’hui, la plupart des PC embarquent au moins 4 Go de RAM. Dans un environnement où la pénurie de mémoire est rare, l’utilité de zram diminue.

Risque de charge CPU : zram peut augmenter l’utilisation du CPU, ce qui ne le rend pas forcément sûr pour tous les matériels.
Comme les distributions privilégient les « environnements généraux », elles peuvent estimer que le surcoût CPU de zram n’en vaut pas la peine.

Évolution de l’usage par défaut du swap : avec la généralisation des SSD, la vitesse des disques de swap traditionnels s’est fortement améliorée.
L’avantage de vitesse de zram est donc relativement moins marqué qu’auparavant.

Diversité des environnements utilisateur : zram n’est réellement efficace que dans certains contextes (par exemple, les appareils peu puissants), et n’apporte pas d’avantage particulier à l’utilisateur moyen.
Comme les distributions recherchent une « compatibilité maximale avec une configuration minimale », elles n’activent pas zram par défaut.

Complexité de la configuration : pour l’optimiser, il faut ajuster manuellement la taille de zram, l’algorithme de compression, etc., ce qui peut être difficile à comprendre pour un utilisateur ordinaire.

 
secret3056 2025-05-13

La compression de la mémoire est aussi activement utilisée sur macOS.

Pourquoi les distributions Linux n’activent-elles pas zram par défaut ?

Fedora 33 et openSUSE l’activent par défaut depuis Aeon.
Les benchmarks passent toujours en premier, mais cela peut être plus utile qu’on ne le pense.

 
hoonix 2025-05-13

zswap est plutôt valable. Sur macOS, une fonctionnalité similaire est d’ailleurs activée par défaut. Dans un environnement aux ressources limitées comme un laptop, quand on ouvre un navigateur ou beaucoup d’applications, ça fonctionne bien. En revanche, comme vous l’avez mentionné, il y a un compromis côté CPU, donc cela aura sans doute un impact sur la batterie.

 
fanotify 2025-05-13

Est-ce que zram et zswap, c’est différent ?
sudo apt install zram-tools
systemctl enable zramswap
C’est comme ça que je l’utilise, mais je ne sais pas si ce qu’on appelle zswap correspond à ça..

 
hoonix 2025-05-13

Les noms techniques sont assez déroutants. zram est une fonctionnalité du noyau qui crée un périphérique bloc avec compression automatique, autrement dit une sorte de stockage. Ensuite, si l’on crée et utilise sur ce stockage un fichier de swap classique, on obtient en quelque sorte une fonction de swap basé sur la RAM avec compression. Le service zramswap semble justement remplir ce rôle. Mais comme ce cas d’usage a ensuite été jugé utile, zram + swap a été intégré directement comme fonctionnalité du noyau. C’est zswap. zswap peut être activé sur la plupart des distributions Linux par une simple commande, sans installation supplémentaire. (Référence : https://wiki.archlinux.org/title/Zswap)