Optimiser la mémoire

Bonjour,

Mon ordi roule Ubuntu 18.04 avec 5,5 Go de Ram et 4,5 Go de fichier d’échange. Voyant qu’il ramait dur sans raison, j’ai ajouté cette ligne au fichier etc/fstab: tmpfs /tmp tmpfs defaults,size=1g 0 0

Cela améliore les choses, mais je constate avec le moniteur système que, même si je ferme des applications, la RAM et le fichier d’échange ne se «vident pas». Peut-être qu’il suffirait que je lance d’autres applications pour que la «vidange» ait lieu. Mais je ne suis pas assez compétent pour le savoir. Aussi je me demande s’il n’y aurait pas moyen d’automatiser la vidange de la RAM et, si possible, du fichier d’échange.

Mais cela n’est peut-être pas une bonne chose, car, si je relance une application que je viens de fermer après une vidange, j’aurai en fait provoqué un ralentissement du travail de la mémoire car cette dernière devra remettre en cache des éléments qu’elle vient tout juste de vider…

Merci à ceux qui sont de fins utilisateurs de m’éclairer sur la meilleure façon de configurer tout cela (RAM, fichier d’échange, etc.)

Une dernière question: est-ce vrai qu’il est opportun de limiter le plus possible l’utilisation des disques SSD pour augmenter leur durée de vie, ce qui serait un motif pour gérer au mieux la mémoire?

Merci,

François Huot

Bonjour M. Huot, comment mesurez-vous la consommation de RAM? top, htop, GNOME System Monitor? Honnêtement je me fierais juste à GNOME System Monitor, qui est un des logiciels qui représente le plus fidèlement la consommation de RAM d’une manière correspondant à notre compréhension humaine. Beaucoup de logiciels nous présentent un fouillis de chiffres avec la consommation en « cache ». GNOME System Monitor, dans les graphiques ou dans la colonne « Mémoire » (pas Mémoire virtuelle ou autres colonnes) est assez fiable sur ce point. Ne pas oublier de choisir d’afficher « tous les processus ».

Si c’est effectivement de la mémoire cache ou du fichier d’échange, en théorie ça ne sert à rien de la « vider », c’est supposé s’autogérer. Sinon vous pouvez modifier le paramètre « vm.swappiness » du kernel Linux mais bon… selon certaines écoles de pensée, la RAM qui n’est pas utilisée est un gaspillage. Je n’arrive plus à trouver facilement où j’avais lu des commentaires en ce sens cependant. Mais je pense que vous avez déjà deviné l’état de la situation, vous avez la bonne idée dans l’ensemble je crois.

De mon expérience, 2 Go n’est plus suffisant de nos jours pour du GNOME + Firefox « sans risques de death swap / OoM », mais avec 4 GB+ on est "ben correc’ " pour une utilisation basique. Évidemment si on a des centaines d’onglets et de documents ouverts comme moi, c’est mieux d’avoir au moins 16 GB (mon ordinateur fixe en a 24…) pour ne « plus avoir à y penser ».

Voir aussi: https://www.linuxatemyram.com

Tant que votre ordinateur ne rencontre pas de problèmes de plantages ou ralentissements marqués, je dirais que pas besoin de s’en faire. Par contre si comme moi vous rencontrez des OoM où le kernel Linux se met à faire n’importe quoi et le système rampe par terre, ben rajoutez de la RAM (ou du swap si ce n’est pas possible). J’ai passé dix ans à essayer de contourner le problème, et à moment donné en 2015 j’en ai eu plein mon casque et j’ai juste fait une machine avec une quantité monstrueuse de RAM pour ne plus avoir à y penser.

Autres lectures, où on voit que les gens de Red Hat tentent d’améliorer un peu le cas des OoM dans Fedora:

Les SSDs ont un nombre d’écritures limités sur chaque blocs, dépendamment du type de SSD/cellules (y’a du SLC, MLC, TLC, et maintenant 3D-nand MLC/TLC)… y’a de la lecture à faire sur cet article et sur Wikipedia; mais en gros, à moins de prendre du SSD ultra cheap (ou des cartes SD ou clés USB ou trucs du genre), on parle quand même d’un nombre énorme d’écritures par cellule. Wikipedia cite des trucs du genre « ça a pris 800 terabytes d’écritures pour que ça fail avec un TLC ») alors bon… bonne chance pour tuer SSD.

Une petite astuce que j’ai pour réduire très légèrement le nombre d’écritures (mais probablement de manière négligeable, surtout à voir l’article ci-dessus), c’est de mettre le paramètre « noatime » dans les options dans les diverses partitions SSD de /etc/fstab…

En tout cas j’ai des SSDs d’entrée de gamme Kingston depuis 2012 et y’en a pas encore un qui est mort. Mais c’est la série SV300 que j’ai, du MLC (ou la variante 3D) au lieu de TLC, et non la nouvelle série super-cheap « A400 » qui n’a pas très bonne réputation