¿Que es “swappiness y como puedo cambiarlo? Esa sería la pregunta inicial y la que da motivo a esta publicación. Pero sería apropiado hacer antes una breve introducción.
En la mayoría de los sistemas operativos existe una memoria de intercambio utilizada por el sistema operativo para volcar páginas de memoria en disco cuando esta se encuentra colpsada o antes inclusive.
Si utilizas aplicaciones que requieren buen uso de memoria, tales como suites de oficina, editores de video y más que nada juegos, es posible que necesites más memoria de la memoria física que dispones. Esa memoria es la memoria de intercambio (fìsicamente ubicada en disco, en el caso de GNU/Linux en una partición del tipo swap). La memoria de intercambio también se utiliza en otros escenarios, como la hibernación, eventos imprevisibles o para optimizar el uso de la memoria fìsica.
Lo cierto es que el uso de memoria de intercambio aumenta nuestra memoria disponible pero hace que el sistema funcione algo más lento debido a que no es lo mismo trabajar con memoria RAM que con memoria secundaria (disco).
Lo ideal para cualquier PC es disponer primero de todo de mucha memoria RAM, eso beneficiará mucho el desempeño del sistema. Luego, si eres como yo (partidarios del no-swap), en GNU/Linux puedes ajustar la forma en que el Kernel utilizará la memoria de intercambio con el valor de swappiness.
El valor de swappiness controla la tendencia del Kernel para mover los procesos de la memoria física y al disco de intercambio.
Swappiness puede tener un valor de entre 0 y 100, donde:
- Swappiness = 0 hace que el Kernel evite el intercambio de la memoria física a la memoria de intercampo por el mayor tiempo posible
- Swappiness = 100 hace que el Kernel utilice de forma “agresiva” el intercambio entre memoria física y de intercambio
Por defecto, sistemas operativos como Ubuntu GNU/Linux tienen un valor de swappiness = 60. Reducir este valor predeterminado probablemente mejorará el rendimiento global de una instalación típica de escritorio. Pero el valor elegido dependerá mucho del uso particular que se le de al sistema.
- ¿Como chequear el valor de intercambio?
60
$
- ¿Como cambiar el valor de swappiness? Editar el archivo /etc/sysctl.conf, cambiar vm.swappiness=60 por vm.swappiness=10, por ejemplo. Si no existe la variable, debes agregarla al final del archivo.
- ¿Como hacer que los cambios tengan efecto? Reiniciar el sistema.
Para cambiar el valor de swappiness sin reiniciar el sistema, solo para la sesión actual puedes ejecutar:
Vía: guvnr





piponazo
noviembre 20, 2009
Magnifica entrada