Todos sabemos que los programas se ejecutan desde la memoria
RAM, pero como esta es cara y limitada, el sistema automáticamente pasa
programas que no estén en ejecución a la swap de disco evitando así que
agotemos la RAM y el sistema se colapse.
Lo ideal sería tenerlo todo en la RAM, pero no podemos
llenarla. Lo bueno sería usar la casi ilimitada swap, pero es lenta.
¿Y si jugamos con las proporciones de una y otra?
El sistema trata automáticamente de mantener una cantidad de
RAM libre “por lo que pueda pasar” y llegado a una cantidad de uso de RAM
empieza a pasar datos al swap. Él lo gestiona automáticamente, pero podemos ver
y modificar este porcentaje de RAM.
Lo primero que haremos será ver qué cantidad de RAM se puede
utilizar antes de que el sistema empiece a hacer swap. Para ello en la terminal
teclearemos
- cat /proc/sys/vm/swappiness
Casi seguro que te devolverá un 60, lo que quiere decir que
cuando el uso de RAM pasa del 60% es cuando entra en juego el swap.
¿Y si queremos modificarlo? Vamos a torturar a un amigo,
haciendo que su equipo empiece a usar el lento swap cuando tenga utilizado solo
el 20% de RAM. Tenemos que abrir una terminal y logarnos como root. En
este caso, no nos servirá de nada usar sudo.
- echo 20 > /proc/sys/vm/swappiness
Si repetimos el cat /proc/sys/vm/swappiness que usamos
antes, veremos que el PC solo usa el 20% de la memoria antes de empezar a usar
swap, con lo que el rendimiento del equipo…
Pero ahora vamos a obrar el milagro y mejorar el rendimiento
“espectacularmente”. Vamos a usar un 70% de RAM antes del swap
- echo 70 > /proc/sys/vm/swappiness
Podemos hacer varias pruebas hasta quedar contentos con el
rendimiento del equipo y conseguir el equilibrio perfecto entre RAM y swap. Una
vez logrado, podemos fijar el valor editando, de nuevo como root, el fichero /etc/sysctl.conf
al que le añadiremos al final una línea que diga
vm.swappiness = el_valor_que_hemos_pensado_que_es_el_optimo
Si ya existe la línea, lo que haremos es cambiar el valor
por el que nosotros queramos.
Y ahora, para que coja el nuevo valor, tenemos dos opciones.
La de ex-windowsero, que no es otra cosa que reiniciar. Y la de linuxero, que es
ejecutar
- sysctl –p
y cómo te resultó?
ResponderEliminarNo se nota mucha diferencia
Eliminar¿Estás seguro de que es así y no al revés?
ResponderEliminarEn todos los tutoriales de optimización de la ram que he visto dicen lo contrario. Es decir, a menos valor del " swappines " menor uso de la memoria de intercambio.
Un saludo
Yo lo ha leído y entendido así, pero lo revise
EliminarRevisa que creo que lo has entendido mal.
EliminarA menor valor de vm.swappiness menor uso de de swap
Aquí lo explican graficamente:
http://aplicacionesysistemas.com/swappiness-en-sistemas-gnu-linux-que-es-y-como-configurarlo/
Es porque le quedo al revés; swappiness=0 con este valor solo usaría la memoria RAM
ResponderEliminar