Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
issue130:labolinux1 [2018/02/28 12:21] – [3] auntiee | issue130:labolinux1 [2018/03/01 16:43] (Version actuelle) – andre_domenech |
---|
SwapFree 23,999,484 kB** | SwapFree 23,999,484 kB** |
| |
Le mois dernier, j'ai retweeté un lien vers un article d'Abhishek Prakash dans It's FOSS sur Combien de swap faut-il utiliser sous Linux ? https://itsfoss.com/swap-size/ La réponse courte donnée dans l'article était « cela dépend de nombreux facteurs ». | Le mois dernier, j'ai retweeté un lien vers un article d'Abhishek Prakash dans It's FOSS sur Quelle taille de swap faut-il utiliser sous Linux ? https://itsfoss.com/swap-size/ La réponse courte donnée dans l'article était « cela dépend de nombreux facteurs ». |
| |
L'article m'a fait songer à la quantité de RAM et de swap que j'utilisais pendant une journée normale au bureau. Voici quelques détails concernant ma machine au boulot : Intel Core i7-3770 @ 3,9 GHz, 28 Go RAM, SSD Intel 530 de 180 Go + un disque dur Seagate ST1000DM003 de 1 To. | L'article m'a fait songer à la quantité de RAM et de swap que j'utilisais pendant une journée normale au bureau. Voici quelques détails concernant ma machine au boulot : Intel Core i7-3770 @ 3,9 GHz, 28 Go RAM, SSD Intel 530 de 180 Go + un disque dur Seagate ST1000DM003 de 1 To. |
MemFree 28,225,148 kB | MemFree 28,225,148 kB |
SwapFree 23,999,484 kB | SwapFree 23,999,484 kB |
| |
===== 2 ===== | ===== 2 ===== |
| |
MemFree 27,183,420 kB** | MemFree 27,183,420 kB** |
| |
Avant de continuer, cela vaut le coup de noter que SwapFree n'a changé à aucun moment du test. Ceci semble confirmer la théorie d'Abhishek que, avec beaucoup de RAM, vous pourriez ne jamais toucher à l'espace swap/ | Avant de continuer, cela vaut le coup de noter que SwapFree n'a changé à aucun moment du test. Ceci semble confirmer la théorie d'Abhishek que, avec beaucoup de RAM, vous pourriez ne jamais toucher à l'espace swap. |
| |
J'ai commencé par me connecter, puis charger le bureau Cinnamon. Depuis le démarrage, mon téléphone était connecté au PC en mode Charger uniquement, mais rien d'autre s'exécutait. J'ai lancé le même cat /proc/meminfo et le résultat était | J'ai commencé par me connecter, puis charger le bureau Cinnamon. Depuis le démarrage, mon téléphone était connecté au PC en mode Charger uniquement, mais rien d'autre ne s'exécutait. J'ai lancé le même cat /proc/meminfo et le résultat était : |
| |
MemFree 27,752,840 kB | MemFree 27,752,840 kB |
| |
Un peu plus de 472.308 kB de différence. Firefox est, sans aucun doute, l'une des applications les plus utilisées sous Ubuntu ; aussi, j'ai commencé par le lancer. J'avais déjà entendu que Firefox a tendance à faire fuiter le RAM. Firefox étant lancé, mais resté sur sa page par défaut, l'usage de la RAM était : | Un peu plus de 472.308 kB de différence. Firefox est, sans aucun doute, l'une des applications les plus utilisées sous Ubuntu ; aussi, j'ai commencé par le lancer. J'avais déjà entendu que Firefox a tendance à faire fuiter la RAM. Firefox étant lancé, mais resté sur sa page par défaut, l'usage de la RAM était : |
| |
MemFree 27,183,420 kB | MemFree 27,183,420 kB |
In other words, Yahoo by itself takes 447,248 kB, roughly the equivalent of 3-4 tabs. I picked Yahoo on purpose because I see a lot of people using Yahoo as a starting page (or for email). I’m not sure why people pick such a heavy site as a home page in this day and age, but it still seems to be relevant for some people.** | In other words, Yahoo by itself takes 447,248 kB, roughly the equivalent of 3-4 tabs. I picked Yahoo on purpose because I see a lot of people using Yahoo as a starting page (or for email). I’m not sure why people pick such a heavy site as a home page in this day and age, but it still seems to be relevant for some people.** |
| |
Il s'agit d'une différence de 1,041,728 kB. Sur un système ayant 28 Go de RAM, cette différence ne se remarque à peine, mais sur un système avec seulement 2 Go de RAM, la RAM disponible pour les autres applications et le système d'exploitation se voit déjà baisser de façon significative. En gardant à l'esprit qu'un peu moins de la moitié du chiffre est le bureau Cinnamon, il s'agit d'un argument pour l'utilisation d'un bureau plus léger, comme LXDE, iceWM ou Enlightenment - au moins sur du matériel vieillissant. Cela illustre également le fait que les applications modernes ont tout simple besoin de peu plus de RAM. | Il s'agit d'une différence de 1.041.728 kB. Sur un système ayant 28 Go de RAM, cette différence ne se remarque à peine, mais sur un système avec seulement 2 Go de RAM, la RAM disponible pour les autres applications et le système d'exploitation se voit déjà baisser de façon significative. En gardant à l'esprit qu'un peu moins de la moitié du chiffre est le bureau Cinnamon, il s'agit d'un argument pour l'utilisation d'un bureau plus léger, comme LXDE, iceWM ou Enlightenment, au moins sur du matériel vieillissant. Cela illustre également le fait que les applications modernes ont tout simplement besoin d'un peu plus de RAM. |
| |
Bien entendu, personne n'ouvre Firefox pour le laisser sur la page d'accueil. J'ai ouvert 5 onglets avec les pages Web suivantes : mon blogue (quelques photos, pas de vidéo), le site Web du magazine Full Circle, Slashdot (vous vous rappelez quand c'était à la mode ?), Distrowatch et OMG Ubuntu UK. L'utilisation de la mémoire était : | Bien entendu, personne n'ouvre Firefox pour le laisser sur la page d'accueil. J'ai ouvert 5 onglets avec les pages Web suivantes : mon blog (quelques photos, pas de vidéo), le site Web du magazine Full Circle, Slashdot (vous vous rappelez quand c'était à la mode ?), Distrowatch et OMG Ubuntu UK. L'utilisation de la mémoire était : |
| |
MemFree 26,620,820 kB | MemFree 26,620,820 kB |
| |
Gardez à l'esprit, à ce stade, qu'aucune autre application de bureau n'est ouverte, seulement Firefox avec 5 onglets. L'usage de la mémoire est passé à 1.604.328 kB ou 562.600 kB de plus qu'avec un seul onglet ouvert. Pendant que j'ouvrais tous ces onglets, je me suis rendu compte que certains sites Web ont beaucoup plus de contenu que d'autres : Yahoo, par exemple, a souvent beaucoup de pub et Javascript. J'ai fermé tous les onglets, puis je n'ai ouvert que Yahoo. Il a fallu une attente de presqu'une minute sur une connexion à haut débit, avant le chargement complet (avec tous les scripts) de la page de Yahoo. La quantité de RAM nécessaire pour tout simplement charger Yahoo seul est un peu stupéfiant : | Gardez à l'esprit, à ce stade, qu'aucune autre application de bureau n'est ouverte, seulement Firefox avec 5 onglets. L'usage de la mémoire est passé à 1.604.328 kB, soit 562.600 kB de plus qu'avec un seul onglet ouvert. Pendant que j'ouvrais tous ces onglets, je me suis rendu compte que certains sites Web ont beaucoup plus de contenu que d'autres : Yahoo, par exemple, a souvent beaucoup de pub et de Javascript. J'ai fermé tous les onglets, puis je n'ai ouvert que Yahoo. Il a fallu une attente de presque une minute sur une connexion à haut débit, avant le chargement complet (avec tous les scripts) de la page de Yahoo. La quantité de RAM nécessaire pour tout simplement charger Yahoo seul est un peu stupéfiant : |
| |
MemFree 26,736,172 kB | MemFree 26,736,172 kB |
| |
Autrement dit, il faut à Yahoo seul 447.248 kB de mémoire, environ l'équivalent de 3 à 4 onglets. J'ai choisi Yahoo exprès, car j'ai constaté que beaucoup de gens utlisent Yahoo comme page d'accueil (ou pour leur mails). Je ne sais pas pourquoi des gens choisissent un site aussi lourd comme page d'accueil de nos jours, mais il semble toujours approprié pour certains. | Autrement dit, il faut à Yahoo seul 447.248 kB de mémoire, environ l'équivalent de 3 à 4 onglets. J'ai choisi Yahoo exprès, car j'ai constaté que beaucoup de gens utlisent Yahoo comme page d'accueil (ou pour leur mails). Je ne sais pas pourquoi des gens choisissent un site aussi lourd comme page d'accueil de nos jours, mais il semble toujours approprié pour certains. |
| |
| |
===== 4 ===== | ===== 4 ===== |
| |
MemFree 28,232,364 kB** | MemFree 28,232,364 kB** |
| |
| J'ai mentionné, plus haut dans l'article, que j'avais entendu que Firefox laisse « fuiter » la mémoire. Il semble raisonnable de supposer que toute la RAM n'est pas vidée quand tout ce que vous faites c'est de fermer une application. Après avoir fermé Firefox, la quantité de RAM disponible était de : |
| |
| MemFree 27,452,500 |
| |
| Quand je me suis connecté à Cinnamon au départ, la mémoire disponible était de 27.752.840 kB. Le chargement de Firefox avec plusieurs pages, puis sa fermeture semble avoir mangé 300.340 kB supplémentaires, ce qui confirme que, oui, des applications semblent utiliser un peu plus de RAM même quand elles sont fermées. Je me suis asssuré qu'aucun processus de Firefox ne tournait en faisant ps aux | grep firefox. Le résultat était ma propre session grep ; aucune instance de Firefox n'était chargée. |
| |
| Bon. Quid de l'autre navigateur magique, celui de Google : Google Chrome ? Google Chrome (pas Chromium), a utilisé un peu plus de RAM que Firefox. Le résultat de cat /proc/meminfo était : |
| |
| MemFree 27,024,536 kB |
| |
| Je me suis dit que certains pourraient soulever l'idée que d'autres applications avait déjà été chargées dans la RAM et que cette RAM était encore utilisée par le reliquat de ces applications-là ; aussi, j'ai redémarré le système à nouveau, ouvert un terminal virtuel et lancé cat /proc/meminfo encore une fois. Cette fois-ci (avant de me connecter à Cinnamon), l'usage de la mémoire était un peu moindre : |
| |
| MemFree 28,232,364 kB |
| |
===== 5 ===== | ===== 5 ===== |
| |
MemFree 26,392,388 kB** | MemFree 26,392,388 kB** |
| |
| J'ai chargé Google Chrome (la page d'accueil par défaut) et relancé cat /proc/meminfo : |
| |
| MemFree 27,324,268 kB |
| |
| En fait, Google Chrome semble utiliser légèrement moins de mémoire (que Firefox) : 908.096 kB, lorsque la page d'accueil par défaut était ouverte. |
| |
| Avant de redémarrer pour tester Chrome, j'ai décidé de tester l'usage de la mémoire quand de multiples applications étaient ouvertes. J'ai ouvert Firefox sur le site Web du magazine Full Circle. Ensuite, j'ai ouvert le gestionnaire de logiciels de Mint, le gestionnaire de fichiers Nemo, l'application de fond d'écran, GIMP (avec une capture d'écran faite auparavant) et j'ai réglé VLC pour qu'il joue une station radio Web en streaming. Toutes ces applications étant ouvertes, j'ai pris le terminal virtuel et j'ai lancé cat /proc/meminfo. Voici le résultat : |
| |
| MemFree 25,353,268 kB |
| |
| Sur une machine n'ayant que 2 Go de RAM, on serait entré sur le terrain de swap (2.871.800 kB) depuis longtemps, mais, sur ma machine de travail, l'utilisation de la RAM est vraiment minime. J'ai fermé toutes les applications sauf VLC (qui faisait toujours du streaming audio) et l'usage de la mémoire a baissé : |
| |
| MemFree 26,392,388 kB |
| |
===== 6 ===== | ===== 6 ===== |
| |
sync; echo 1 > /proc/sys/vm/drop_cache** | sync; echo 1 > /proc/sys/vm/drop_cache** |
| |
| À ce stade, je me demandais si le problème était VLC ou si ce n'était pas tous les restes de Firefox et les autres applications. Et, s'il s'agissait bien des autres applications, comment « purger » la RAM sans redémarrer (que ce soit Linux ou le bureau Cinnamon) ? |
| |
| J'ai trouvé un article sur Tecmint sur Comment vider le cache de ram, le tampon et le swap sous Linux ici : |
| https://www.tecmint.com/clear-ram-memory-cache-buffer-and-swap-space-on-linux/. |
| |
| L'article sur Tecmint nous dit comment vider PageCache, les entrées de répertoires et les inodes, et les trois ensemble, mais sans nous dire vraiment ce que sont les entrées de répertoires et les inodes, bien qu'il prévienne qu'il ne faut pas vider les entrées de répertoires et les inodes sur un serveur de production. Pour vider seulement PageCache, l'article suggère de lancer (en tant que root) : |
| |
| sync; echo 1 > /proc/sys/vm/drop_caches |
| |
===== 7 ===== | ===== 7 ===== |
| |
MemFree 27,475,792 kB** | MemFree 27,475,792 kB** |
| |
| Ça vaut le coup de noter que j'ai essayé de lancer cette commande avec sudo, mais c'était impossible ; vous devez vraiment vous connecter comme l'utilisateur root en tapant : |
| |
| sudo su - |
| |
| Après avoir exécuté « sudo su - » et saisi votre mot de passe (du moment où vous appartenez au groupe qui peut utiliser sudo), vous verrez l'invite de root. La commande « sync; echo » paraît fonctionner à partir de l'invite root. Puisque je ne faisais pas tourner un quelconque serveur de production ou n'importe quoi de critique, j'ai lancé la commande pour vider les trois éléments ensemble : PageCache, entrées de répertoires et inodes : |
| |
| sync; echo 3 > /proc/sys/vm/drop_caches |
| |
| À nouveau, ne jamais le lancer sur un serveur de production. Pour une meilleure idée de ce que sont les entrées de répertoires, regardez l'article Virtual File System de notre propre Bruce Fields. Il se trouve ici : http://www.fieldses.org/~bfields/kernel/vfs.txt |
| |
| Maintenant, il ne restait que VLC qui continuait à faire du streaming audio de la même station radio. Le résultat de la mémoire libérée était étonnant : |
| |
| MemFree 27,475,792 kB |
| |
===== 8 ===== | ===== 8 ===== |
| |
What does this all mean? It seems to mean that applications do “leak” RAM, and, even if you’ve closed an application completely, there may still be some residual RAM usage. When using a web browser, it’s much like using any other application that loads a lot of data; a single large file, or web page, may use up a lot of RAM compared to many smaller pages/files. While we all love the mantra of reuse before recycle, old computers with 2GB or less RAM might struggle when used for even light surfing if you surf large sites with lots of content, or open multiple tabs - 4GB of RAM really starts looking like a minimum even for basic web surfing. Lastly, if you are stuck using a system with a small amount of RAM for surfing, you can clear up some of that leaked RAM by clearing the PageCache, dentries and inodes cache.** | What does this all mean? It seems to mean that applications do “leak” RAM, and, even if you’ve closed an application completely, there may still be some residual RAM usage. When using a web browser, it’s much like using any other application that loads a lot of data; a single large file, or web page, may use up a lot of RAM compared to many smaller pages/files. While we all love the mantra of reuse before recycle, old computers with 2GB or less RAM might struggle when used for even light surfing if you surf large sites with lots of content, or open multiple tabs - 4GB of RAM really starts looking like a minimum even for basic web surfing. Lastly, if you are stuck using a system with a small amount of RAM for surfing, you can clear up some of that leaked RAM by clearing the PageCache, dentries and inodes cache.** |
| |
| Un peu plus de mémoire est utilisée par rapport à ma première connexion au bureau Cinnamon, mais, en effet, cela paraît libérer une quantité significative de mémoire (1.083.404 kB). Cela semble indiquer que VLC n'utilisait que 277.048 kB de plus de RAM que lors de ma première connexion. VLC continuait son streaming en tâche de fond pendant que je vérifiais l'usage de la RAM. |
| |
| Quelle est la signification de tout ceci ? Il semble signifier qu'en fait les applications laissent « fuiter » la RAM et que, même si vous avez fermé une application complètement, il pourrait toujours y avoir un peu d'usage résiduel de la RAM. Lors de l'utilisation d'un navigateur Web, c'est très similaire à l'utilisation de n'importe quelle autre application qui charge beaucoup de données ; un seul gros fichier, ou page Web, peut consommer beaucoup de RAM par rapport à des pages/fichiers plus petits. Bien que nous aimions tous le mantra de réutiliser avant de recycler, les vieux ordinateurs avec 2 Go de RAM ou moins peuvent ramer quand ils servent à faire même de la navigation légère sur le Net si vous allez sur de gros sites avec beaucoup de contenu ou ouvrez de multiples onglets ; 4 Go commence vraiment à paraître le minimum nécessaire pour faire de la navigation Web, même de base. Enfin, si vous ne pouvez faire autrement qu'utiliser un système avec peu de RAM pour aller sur le Net, vous pouvez vider une partie de la RAM qui a fuité en vidant le cache de PageCache, entrées de répertoires et inodes. |
| |
===== 9 ===== | ===== 9 ===== |
| |
It’s FOSS - How Much Swap Should You Use in Linux? https://itsfoss.com/swap-size/** | It’s FOSS - How Much Swap Should You Use in Linux? https://itsfoss.com/swap-size/** |
| |
| Liens intéressants : |
| |
| L'article de Bruce Fields sur le système de fichier virtuel : http://www.fieldses.org/~bfields/kernel/vfs.txt |
| |
| Tecmint - Comment vider les cache, tampon et swap de la mémoire RAM sur Linux : https://www.tecmint.com/clear-ram-memory-cache-buffer-and-swap-space-on-linux/ |
| |
| It's FOSS - Quelle quantité de swap sous Linux ? https://itsfoss.com/swap-size/ |