viernes, 17 de diciembre de 2010

Usar más RAM y menos la SWAP

Como casi todos sabéis, cuando Linux se empieza a quedar sin memoria RAM en el PC, lo que hace es usar la partición SWAP que, claro está, es mucho mas lenta por ser una partición en el disco duro y no un modulo de memoria RAM que es mucho mas rápido.

A lo que vamos, el caso es que el comportamiento de Linux es que cuando hay algo en la RAM que se usa poco, lo mueve a la SWAP, en función de la memoria RAM disponible y a este comportamiento le podríamos llamar "agresividad de SWAP"

Por defecto, en Ubuntu (de la 10.04 para arriba que yo sepa) la agresividad está en 60.


Para mirar cual es la configuración de agresividad que estas usando hacer:

scorpyo@pc-cito:~$ cat /proc/sys/vm/swappiness

[sudo] password for scorpyo:
40


Como ves, tras pedirme la clave me suelta el valor 40, en tu caso, seguramente habrá soltado el valor por defecto que es 60

Si tienes mucha rám, y no sueles llenarla, lo mejor es bajar esa agresividad, ¿para qué? pues para que Linux no use tanto la memoria SWAP que es muy lenta cuando en realidad le queda muchísima RAM libre.

Si quieres ver cuanta RAM tienes usada, puedes mirarlo así en la terminal:

scorpyo@pc-cito:~$ free -mt

O puedes ir a: Sistema | administración | monitor de sistema

Bien, si crees que tienes mucha RAM sin usar y para colmo, tienes algo de la SWAP en uso, pues es hora de cambiar ese comportamiento, comportamiento que está pensado para máquinas con poca RAM pero que no es nuestro caso.

Para cambiar la agresividad solo hay que añadir "vm.swappiness = porcentaje"
al final del archivo "/etc/sysctl.conf"

Al lío:

scorpyo@pc-cito:~$ sudo gedit /etc/sysctl.conf

Os movéis asta el final del archivo y poneis:

vm.swappiness = 50


Guardáis el archivo y lo cerráis, con eso habéis cambiado el valor a 50.
Para comprobarlo, reiniciamos, y volvemos a comprobar el valor como antes:


scorpyo@pc-cito:~$ sudo cat /proc/sys/vm/swappiness

[sudo] password for scorpyo:
50


Listo!

Yo lo tengo puesto en 40, ya que tengo 4 Gb de RAM y nunca llego a llenar el primer giga de esta.

Si queréis deshacer, solo tenéis que volver a editar el archivo y borrar la linea creada.

Saludos.

No hay comentarios:

Publicar un comentario

Deja aquí tu mensaje...