Le noyau Linux fournit un paramètre modifiable qui contrôle la fréquence d'utilisation du fichier d'échange, appelé swappiness (capacité d'échange).
Un paramètre de permutation de zéro signifie que le disque sera évité sauf si cela est absolument nécessaire (vous manquez de mémoire), tandis qu'un paramètre de swappiness de 100 signifie que les programmes seront échangés sur le disque presque instantanément.
Le système Ubuntu est livré avec une valeur par défaut de 60, ce qui signifie que le fichier swap sera utilisé assez souvent si l'utilisation de la mémoire est d'environ la moitié de ma RAM. Vous pouvez vérifier la valeur de swap de votre propre système en exécutant :
one@onezero:~$ cat /proc/sys/vm/swappiness
60
Comme j'ai 4 Go de RAM, j'aimerais réduire cette quantité à 10 ou 15. Le fichier d'échange ne sera alors utilisé que lorsque mon utilisation de la RAM se situera aux alentours de 10 ou 15 Go. 80 o 90 pour cent. Pour changer la valeur de permutation du système, ouvrez /etc/sysctl.conf as 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 en cours d'exécution.
sysctl vm.swappiness=10
vous pouvez également effacer votre swap en exécutant swapoff -a
y luego swapon -a
en tant que root au lieu de redémarrer pour obtenir le même effet.
Pour calculer votre formule de swap
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
donc le total est 3950 / 100 = 39.5 * 10 = 395
donc ce que ça veut dire c'est que quand 10 % 395 Mo de RAM restants, puis il commence à utiliser la permutation.