- Quel est le but d'une partition de swap?
- Comment savoir si j'ai juste assez de partition d'échange? Pas trop / peu.
Mon PC Ubuntu est utilisé pour des choses typiques:
- Web (email, facebook, etc.)
- Quelques films
- le jeu est rare
Mon PC Ubuntu est utilisé pour des choses typiques:
Réponses:
La partition de swap a plusieurs objectifs.
Il sert de RAM de "sauvegarde". En d’autres termes, si votre ordinateur manque de RAM, il utilisera la zone d’échange comme source temporaire de mémoire supplémentaire. Plus précisément, il «permutera» les éléments inutilisés de la RAM vers la zone de permutation afin de laisser un espace disponible aux applications qui en ont besoin à cet instant. Ce n'est pas idéal car le taux de transfert de données vers le disque dur est nettement inférieur à celui de votre RAM normale. En pratique, cela signifie qu'il est beaucoup plus lent à extraire des informations de la zone d'échange.
Il est utilisé lors de l'hibernation de l'ordinateur. L'hibernation implique de prendre une image de la RAM dans son état actuel (comme une image ISO représente une image) et de l'enregistrer dans la zone d'échange. Il recharge ensuite cette image au redémarrage de l'ordinateur.
Pour être plus utile, la zone de swap doit être au moins (RAM * 1,5), bien qu’il soit recommandé d’en utiliser plus. Par exemple, sur mon système avec 3 Go de RAM, j'ai une zone d'échange de 7,2 Go.
C'est très proche de la même chose que cette question sur la “bonne” taille pour une partition de swap. La plupart des informations contenues dans ma réponse sont valables. En gros, si vous souhaitez passer en hibernation, vous souhaitez généralement que votre espace d'échange soit au moins égal à votre RAM. Un nombre arrondi, tel que 1 ou 2 Go, suffit aisément. Parce que le swap est beaucoup plus lent que la RAM, si vous remplissez plusieurs gigaoctets de swap, votre ordinateur est certainement devenu incroyablement lent.
Il n’ya pas non plus de réel besoin d’une partition swap: les fichiers swap (disponibles sur les systèmes de fichiers linux traditionnels) offrent les mêmes performances et facilitent l’ajout de plus d’espace swap si vous décidez de ne pas en avoir assez.
voici une information très profonde sur l'échange
Certaines personnes disent le double de votre bélier, mais personnellement, je recommande ceci:
swap = 1,5 X Total Ram
Exemple :
si vous avez 2 Go de RAM -> swap = 1,5 x 2 = 3
PD: Ubuntu Desktop utilise Swap to Hibernate (ordinateur éteint, aucune alimentation requise, état des programmes sauvegardé). Si le mode Veille prolongée est important pour vous, disposez de davantage d'espace d'échange que de dépassement de mémoire vive et d'échange.
La free
commande peut vous dire combien de swap vous utilisez. Par exemple sur cette machine:
$ free -m
total used free buffers cached
Mem: 1947 1863 84 312 758
-/+ buffers/cache: 792 1154
Swap: 4000 3 3997
me montre que j'ai 2 Go (1947 m) de RAM et que le système en a utilisé la majeure partie. Toutefois, 312 m est utilisé pour les mémoires tampon d’E / S et le reste (758 m) que le système a décidé de remplir avec le cache disque.
Le cache disque est intéressant car il utilise une mémoire rapide au lieu d'un disque lent pour son contenu. Le contenu peut être obtenu à partir du disque, mais il est conservé au besoin. Cela signifie également que 758 m de mémoire peuvent être récupérés en un instant si nécessaire, car le système sait qu'il peut trouver ces données sur le disque.
C’est pourquoi une deuxième ligne indique que s’il n’y avait ni mémoire tampon ni cache, la moitié de ma RAM (1154 m) serait utilisable.
La troisième ligne montre que j'ai une partition de swap trop volumineuse (elle était là et ne faisait rien) dont 3 millions ont été utilisés. C’est un truc que le noyau ne s’attend vraiment pas à utiliser bientôt, il a donc été collé sur le "porche arrière".
Alors que free
vous donne l'instantané maintenant, vmstat
peut vous donner une image courante:
$ vmstat 10
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
0 0 3588 86236 316524 769132 0 0 14 13 126 81 4 1 95 0
0 0 3588 83872 316532 770512 0 0 0 20 264 1229 3 1 96 0
Il y a beaucoup d'informations là-bas, mais il est intéressant de noter qu'il n'y a pas de trafic d'échange (si) ou d'échange (donc). Ce qui signifie que je n'utilise pas l'échange du tout au cours des 10 dernières secondes.
Vous pouvez vérifier la zone d'échange utilisée et disponible à l'aide de la commande suivante:
$ cat /proc/swaps
Filename Type Size Used Priority
/dev/sda10 partition 7812092 16 -1
J'ai un ordinateur portable avec un disque dur lent, mais une RAM relativement importante (8 Go). Sur cette configuration, je trouve qu'un lecteur d'échange est contre-productif pour les raisons suivantes:
La récupération des applications du swap est lente , ce qui est comparable au chargement de l’application à partir de zéro. Je préférerais un environnement qui réponde rapidement, même si cela signifie que je dois parfois fermer et recharger des applications, plutôt qu'un environnement qui m'arrête parfois de manière inattendue.
Si je voulais pouvoir hiberner, cela voudrait dire écrire beaucoup de données sur disque. Ce serait une constante fuite sur la batterie si elle a été fait persistante (le comportement par défaut de swappiness 60), ou si elle a été faite uniquement au moment de la mise en veille prolongée (en réduisant swappiness), il faudrait beaucoup de temps pour mise en veille prolongée en fait. J'ai trouvé que suspendre pour être de la RAM au lieu de suspendre sur un disque était tout à fait satisfaisant. Il pourrait rester suspendu quelques jours et resterait suspendu beaucoup plus rapidement qu’une hibernation complète.
Parce que le disque dur est lent, je préfère garder 1 Go de RAM réservée au cache disque , échangeant efficacement de la mémoire pour la vitesse. Cela garde ma machine branchée, mais cela signifie que je ne peux utiliser que 7 Go de mes 8 Go de RAM pour les applications. Le logiciel que j'utilise pour y parvenir est une fourchette de earlyoom qui tue les anciens onglets du navigateur lorsque 88% de la RAM est utilisée. Je dois parfois recharger d'anciens onglets de navigateur qui ont été supprimés.
Quand ce conseil ne s'appliquerait-il pas?
Si vous avez un lecteur de disque dur rapide ou un disque SSD et que vous vous inquiétez moins de l'épuisement de la batterie, les inconvénients que j'ai décrits ci-dessus ne s'appliqueront pas. (Bien que les premiers disques SSD puissent avoir des problèmes d'usure, je pense que tous les disques SSD vendus depuis 2018 devraient convenir.)
Si votre ordinateur dispose de très peu de RAM ou si vous souhaitez utiliser plusieurs applications gourmandes en mémoire en même temps, vous devrez peut-être utiliser swap pour que votre travail soit effectué, quels que soient les inconvénients. C'était le principal cas d'utilisation du swap, avant que la mémoire ne commence à devenir moins chère.
Si vous avez vraiment besoin de l'hibernation (vous souhaitez peut-être suspendre votre ordinateur portable et le rouvrir après quelques jours sans charge), vous avez besoin d'un lecteur d'échange (recommandé, au moins aussi grand que votre RAM).
Caveat: