web-dev-qa-db-fra.com

Comment configurer swappiness?

J'ai besoin d'un moyen simple et facile, étape par étape, de configurer swappiness.

335
One Zero

Le noyau Linux fournit un paramètre ajustable qui contrôle la fréquence d'utilisation du fichier d'échange, appelée swappiness.

Un paramètre swappiness de zéro signifie que le disque sera évité sauf en cas d'absolue nécessité (mémoire insuffisante), tandis qu'un paramètre swappiness de 100 signifie que les programmes seront permutés sur le disque presque instantanément.

Le système Ubuntu est livré avec un défaut de 60, ce qui signifie que le fichier d'échange sera utilisé assez souvent si l'utilisation de la mémoire est environ la moitié de ma mémoire vive. Vous pouvez vérifier la valeur de swappiness de votre propre système en exécutant:

one@onezero:~$ cat /proc/sys/vm/swappiness
60

Comme je dispose de 4 Go de RAM, j’aimerais le réduire à 10 ou 15. Le fichier d’échange ne sera alors utilisé que lorsque mon utilisation de RAM est proche 80 ou 90 pour cent. Pour modifier la valeur de swappiness du système, ouvrez /etc/sysctl.conf en tant que root . Ensuite, modifiez ou ajoutez cette ligne au fichier:

vm.swappiness = 10

Redémarrez pour que le changement prenne effet.

Vous pouvez également modifier la valeur pendant que votre système est toujours en cours d'exécution avec:

sysctl vm.swappiness=10

Vous pouvez également effacer votre échange en exécutant swapoff -a, puis swapon -a en tant que root au lieu de redémarrer pour obtenir le même effet.

Pour calculer votre formule d'échange:

free -m (total) / 100 = A

A * 10

root@onezero:/home/one# free -m
             total       used       free     shared    buffers     cached
Mem:          3950       2262       1687          0        407        952
-/+ buffers/cache:        903       3047
Swap:         1953          0       1953

le total est donc 3950/100 = 39,5 * 10 = 395

Donc, ce que cela signifie, c'est que quand 10% (395 Mo) de RAM est laissé, alors il commencera à utiliser swap.


Aide. Ubuntu. Échange

Quel est swappiness

Le paramètre swappiness contrôle la tendance du noyau à déplacer les processus de la mémoire physique vers le disque de swap. Les disques étant beaucoup plus lents que la RAM, les temps de réponse du système et des applications peuvent être plus lents si les processus sont déplacés de manière trop agressive en dehors de la mémoire.

  • swappiness peut avoir une valeur comprise entre 0 et 100.
  • swappiness=0:
    • Noyau version 3.5 et plus récente: désactive swapiness.
    • Version du noyau antérieure à 3.5: évite que les processus ne soient plus utilisés hors de la mémoire physique le plus longtemps possible.
  • swappiness=1:
    • Noyau version 3.5 et plus: swappiness minimum sans le désactiver complètement.
  • swappiness=100:
    • Indique au noyau d'échanger de manière agressive les processus de la mémoire physique et de les déplacer vers le cache.

Voir http://en.wikipedia.org/wiki/Swappiness .

Le paramètre par défaut dans Ubuntu est swappiness=60. Réduire la valeur par défaut de swappiness améliorera probablement les performances globales pour une installation de bureau Ubuntu typique. Une valeur de swappiness=10 est recommandée, mais n'hésitez pas à expérimenter.


Exemple

Commencé à utiliser swap à 91% :

enter image description here Comme j'ai configuré mon système & vm pour utiliser RAM à 90% , à 90% il n’ya pas eu d’échange.

Après cela, j’ai ouvert des applications comme Firefox & Shutter, et l’échange a commencé car la consommation de RAM est supérieure à à 90% .

494
One Zero