je vois passer pas mal de PC avec peu de mémoire vive (je pense perso que 8GB c’est limite et 4GB c’est pas assez). Et évidement c’est un soucis rien qu’avec le web moderne, si on ouvre un peu trop d’onglets avec des appli web gourmandes ca swap. Sur un disque SSD ça va encore mais si c’est un HDD ça revient quasiment à devoir éteindre le PC de force… Je pense notamment aux PC qu’on nous amène lors des install party.
Et il se trouve qu’il existe une alternative au swap classique : zram.
L’idée est de compresser les données en mémoire. C’est apparemment plus rapide qu’un swap sur SSD et sans commune mesure avec un swap sur HDD.
Perso, j’en ai appris l’existence récemment et peu de distribution linux l’activent par défaut (c’est le cas de Fedora et Pop’Os mais ça n’est pas le cas de Mint, Ubuntu ou Debian).
En version courte et pour une distrib basée sur Debian :
sudo apt install zram-tools
La config se trouve dans /etc/default/zramswap
Par défaut, c’est quelque chose comme cela :
ALGO=lz4 # Algo de compression
PERCENT=50 # Taille "virtuelle" maximum en pourcent de la RAM
PRIORITY=100 # Priorité (100 = moins que la RAM mais plus que le swap)
On peut avoir des informations sur ce qu’il se passe avec sudo zramctl
Alors la question maintenant : quel serait la bonne configuration à appliquer dans un cas un peu général (genre un PC avec 4GB de mémoire) ?
Il semblerait qu’il y ait deux choix potables pour l’algo de compression :
lz4 pour privilégier la vitesse avec un rapport de compression mesuré autour de 2.63
zstd pour privilégier la compression avec un rapport autour de 3.37
Et la grande question c’est la taille maximum, j’ai vu beaucoup de réglage à 50% mais aussi à 100%.
Piste intéressante! Je sais que yunohost configure de la zram par défaut, @Aleks s’y connait peut-être un peu du coup. J’avoue que je regardais plus du côté des navigateurs légers et recommandation de ne pas abuser sur les onglets pour des laptops à <4G de RAM. Je trouve que 4G avec Linux Mate ça passe encore. En 2022 Chromium se comportait beaucoup mieux que Firefox avec beaucoup d’onglets sur un netbook de 4G.
Je comprend pas du tout cette histoire de navigateur léger : si un site web (ou une appli web) demander à gérer beaucoup de ressources (beaucoup d’images, bibliothèque Javascript, consommation mémoire des script Javascript ou wasm), je ne vois pas ce que le navigateur léger peut y faire.
Firefox et Chrome/ium et cie ont les machines virtuelles Javascript parmi les plus performantes qui existent. Si tu a une appli web qui se met à consommer beaucoup de mémoire (ou de temps de calcul) t’as pas d’autre choix que de fournir les ressources. C’est les sites web qui consomment pas le navigateur en lui même.
En plus, une des raison de la consommation mémoire est la séparation des données (et cache) entre les différents onglets pour des raisons de cybersécu. Mais on ne peut pas enlever ça sans mettre en danger l’utilisateur.
Je pense qu’il faudrait faire des tests sur une machines 4G, sur une 8 t’as pas les même contraintes donc tu verras pas les effets de bord. En survolant rapidement les forums j’ai vu que les gain était pas si évident et que c’est pour ça que Mint et Ubuntu le mettaient pas de base.
En 2022 quand j’ai testé la gestion des onglets idle était pas du tout la même entre firefox et chrome. Sur chrome la RAM ne dépendait quasiment pas du nombre d’onglets. Alors que encore aujourd’hui sur mon firefox plus j’ai d’onglets idle plus firefox utilise de la RAM. Tout ça à confirmer en 2025.
Et pour prendre un cas concret du dernier atelier HOP, la femme qui avait sa tablette windows 4Go disait qu’elle n’ouvrait qu’un onglet à la fois. Et je connais d’autres personnes qui ont déjà l’habitude de ne pas ouvrir trop d’onglets en parallèle. Donc peut-être que la solution n’est pas technologique mais d’éducation populaire.
Je suis pas sûre que le web devienne significativement plus lourd ces dernières années, surtout avec un ublock.
Perso je suis une catastrophe sur le nombre d’onglets ouverts, et ma machine 8G galère, mais je vais plutôt essayer de me contrôler
Je suis étonné de ce que tu me dit. J’ai lu pas mal de chose sur zram et j’ai vu aucun retour négatif par contre il y a beaucoup de retour positif et là je parle de personnes qui ont fait des tests documentés lors des campagne de mise à jour de distribution (en particulier Fedora et Pop’OS)
Il y a un désavantage : ça empêche l’usage de l’hibernation.
J’ai du mal à croire que Fedora ait fait les chose à la légère, c’est la distribution qui sert de base aux évolutions de RedHat. Ils utilisent zram depuis longtemps sur Fedora IoT et on commencé en 2019 à mettre une taille de zram de 50% max de la RAM avec une limite de 4GB (voir ici). Suite au succès de ce changement ils sont passé à une taille de 100% max de la RAM avec une limite de 8BG (voir ici) en 2021.
Sur Pop’Os, il faut voir qu’il y a une grosse communauté d’utilisateur de jeux vidéo. Les JV peuvent être très gourmand en ressources et les utilisateurs ont rapporté que zram leur permettait d’améliorer le nombre d’image par seconde dans le jeux et de lancer des jeux qu’ils ne pouvaient pas avant (voir ici).
Perso dans ce thread je voulais juste partager mon expérience liée au fait que j’ai utilisé en 2022 un netbook 4G de RAM sous Linux Mint Mate + i3wm + chromium (firefox c’était dead) pendant plusieurs mois sans trop de soucis et sans zram. D’ailleurs les tiling manager (i3wm) sont aussi une approche possible quand peu de RAM, mais là encore pas évident à proposer au commun des mortels sans boulot d’éducation populaire et de paramétrage de i3wm.
Je n’y connais rien à la zram et je trouve ça cool si tu trouves une solution pour introduire ça en install party. J’insiste juste sur le fait que j’hésiterais à proposer une config en install party tant qu’on a pas quelqu’un dans nos réseaux qui nous confirme par une utilisation sur son propre laptop 4G, voir 3G/2G que le gain est significatif. Je pense que c’est possible que la zram apporte un gain sur des machines 8G, mais pas sur des <=4G.