Buenas a todos. En este tutorial voy a describir el cómo funciona zRam, y en qué condiciones es más conveniente utilizarlo, a fin de mejorar el rendimiento de aquellos ordenadores más antiguos, o con poca memoria RAM (por ejemplo, aquellas tablets con 1 GB de RAM e Intel Atom Z3735G (BayTrail) que, con otros sistemas operativos, van muy "ahogados" en tema rendimiento y necesitan de una ayudita extra para un rendimiento suficiente para su uso diario).
¿Qué es zRam?
zRam es un módulo del núcleo Linux, el cual usa un sistema de bloques de memoria comprimidos en la memoria RAM a fin de que puedan usarse en el caso de que al ordenador le falte memoria RAM para realizar sus tareas, evitando así el uso de la partición Swap del disco duro (la cual, es notablemente más lenta que la propia memoria RAM en sí, y ralentiza bastante la máquina). Podemos ver una serie de pros y contras en este módulo:
-Ventajas
-Menor uso de la partición Swap del disco duro, por lo que la responsividad (fluidez) del ordenador aumenta en condiciones de uso cuasi-completo de la memoria RAM, además de la reducción de escrituras en las unidades de estado sólido SSD (con el consecuente aumento de su vida útil).
-Posibilidad de usar más programas a la vez en una cantidad de memoria RAM relativamente pequeña, y una mejor capacidad de multitarea.
-Inconvenientes
-Mayor uso de CPU, debido a que es necesaria la compresión y descompresión de los módulos swap zRam cuando sea preciso. Esto, en procesadores antiguos y excesivamente lentos (Pentium 4, Atom de primera generación, Pentium M...) puede causar efectos contraproducentes en referencia a la fluidez del sistema operativo.
-No existe la posibilidad de una "compresión infinita", por lo que, si se llenan los módulos swap creados en la memoria RAM, el sistema operativo seguirá tirando de la partición Swap, con los efectos de lentitud ya vistos anteriormente.
-No merece mucho la pena usarlo con grandes cantidades de memoria RAM (2 GB o más), ya que el efecto que provoca es insignificante para el consumo de CPU que realiza.
Una vez vistos estos puntos, vamos a describir el cómo instalarlo y utilizarlo. Recomiendo únicamente usar esta técnica con una memoria de 1 GB de RAM o menos, ya que los efectos más visibles se comprobarán con esta cantidad en concreto.
¿Cómo instalar y usar zRam?
Esto dependerá del gestor de paquetes y de los repositorios que tengas en la distribución que tengas instalada. Estas instrucciones que voy a comentar son válidas para Lubuntu/Ubuntu. Para otras distros, el procedimiento será parecido, cambiando únicamente el gestor de paquetes a utilizar.
1. Abre una terminal y ejecuta este comando (necesitarás introducir tu contraseña de administrador del sistema)
sudo apt-get install zram-config
2. Cuando se instale, comenzará a ejecutarse inmediatamente, usando la mitad de la memoria RAM disponible en el sistema como Swap. Si alguna vez necesitases ver la cantidad de memoria RAM que es utilizada por este proceso ejecuta en una Terminal:
cat /proc/swaps
En un principio, para un uso básico, no debería haber problema en este sentido. Por supuesto que puedes modificar el comportamiento del módulo zRam, activándolo y desactivándolo a voluntad. Para ello usa estos dos comandos:
//Habilitar zRam:
sudo /usr/bin/init-zram-swapping
//Deshabilitar zRam:
sudo /usr/bin/end-zram-swapping
También es posible comprobar si está activo usando este comando:
dmesg | grep zram
Esto mostrará todas las unidades de zRam que estén usándose en ese momento.
Finalmente, se verá cómo modificar la cantidad de memoria RAM que está usando zRam para crear los archivos de intercambio en memoria. Para ello ve al siguiente archivo
/usr/bin/init-zram-swapping
Y en la línea esta:
mem=$(((totalmem / 2 / ${NRDEVICES}) * 1024)
Podrás ver la cantidad de memoria que se usa en zRam y modificar esta variable a un valor en KB (kilobytes). Por ejemplo, 1024 kilobytes, es un megabyte. Multiplicas la memoria que necesites (en MB) por 1024 y la pones como valor de "mem". Aunque, para un uso habitual, no es necesario cambiar esto.
Finalmente, para desinstalar zRam, ejecuta en un Terminal, como administrador:
sudo apt-get remove --purge zram-config
Y ya estaría solucionado.