Si algunos de nuestros foros, manuales, ALDOS, paquetería o proyectos te han resultado de ayuda, apreciaremos mucho nos apoyes con un donativo.

Utilizando zRam para optimizar uso de memoria del sistema.

zRam es un módulo experimental del núcleo de Linux que ayuda a mejorar el desempeño del sistema evitando utilizar la memoria de intercambio en el disco duro (swap) utilizando en su lugar un dispositivo de bloque comprimido en la memoria RAM.

Siendo que utilizar memoria RAM es más eficiente y rápido que utilizar memoria de intercambio en el disco duro, zRam permite utilizar la memoria RAM al realizar intercambio/paginación cuando es requerido. Es sin duda una excelente alternativa para equipos antiguos con poco RAM.

ALDOS 1.4 incluye en sus almacenes YUM el paquete kmod-staging, el cual consiste en una colección de módulos adicionales para el núcleo de Linux. zRam está incluido en este paquete.

Para hacer uso de zRam, es necesario primeri cambiarse a root:

su -l root

Verifique la cantidad de memoria de intercambio actual ejecutando free con la opción -m:

free -m

Deberá mostrar una salia similar a la siguiente:

             total       used       free     shared    buffers     cached
Mem:          3920       3693        227          0         46        809
-/+ buffers/cache:       2837       1082
Swap:         6134          0       6134

Luego ejecutar lo siguiente para instalar lo necesario:

yum -y install staging-kmod

Lo que procede a continuación es cargar el módulo correspondiente.

modprobe zram

Luego se define el tamaño en bytes para el dispositivo /dev/zram0 que será utilizado. En el ejemplo se define un tamaño de 2 GB:

echo 2147483648 > /sys/block/zram0/disksize

A continuación se le da formato de swap al dispositivo /dev/zram0:

mkswap /dev/zram0

Y finalmente se activa el uso de este dispositivo como memoria de intercambio.

swapon -p 10 /dev/zram0

En el mandato anterior, la opción -p se utiliza para indicar la prioridad que tendrá el dispositivo de memoria de intercambio respecto de los demás. El valor predeterminado utiliza para las particiones de memoria intercambio en el disco duro tiene valores negativos (-1 para la primera partición de memoria de intercambio, -2 para la siguiente y así sucesivamente), así que si se define -p 10 significa que el dispositivo /dev/zram0 tendrá mayor prioridad de uso sobre las particiones de memoria de intercambio en el disco duro.

Para hacer las comprobaciones, ejecute free cola opción -m:

free -m

Se deberá mostrar una salida similar a la siguiente:

             total       used       free     shared    buffers     cached
Mem:          3920       3693        227          0         46        809
-/+ buffers/cache:       2837       1082
Swap:         8191          0       8191

Cabe señalar que /dev/zram0 será un dispositivo de memoria volátil. Es decir, jamás debe utilizarse zRam en un sistema que va a ser hibernado, pues dicho procedimiento requiere guardar en la unidad de almacenamiento el estado actual del sistema para poder restaurarlo posteriormente.

Para automatizar el uso de zRam en el sistema con cada reinicio, edite el archivp /etc/rc.local:

vim /etc/rc.local

Añada el siguiente contenido (todo va en una sola línea):

/sbin/modprobe zram > /dev/null 2>&1 && echo 2147483648 > /sys/block/zram0/disksize && mkswap /dev/zram0 > /dev/null 2>&1 && swapon /dev/zram0 -p 10 > /dev/null 2>&1

Reinicie el sistema y verifique los resultados con el mandato free con la opción -m. Utilice el sistema normalmente para probar las mejoras en el rendimiento

¿Cuánto se puede asignar de memoria con zRam? La cantidad total de RAM en el sistema se divide entre el número de CPUs y a esta cantidad se le multiplica por 0.7, 08 o 0.9, es decir se asigna un máximo del 90% del RAM que corresponde a cada CPU. Sobrepasar el 90% hará que el sistema empiece a terminar procesos. La recomendación es asignar entre el 70% y 90%.

Asumiendo que se dispone de un sistema con aproximadamente 4 GB de RAM, sin memoria compartida con la tarjeta gráfica, es decir 4294967296 bytes, con 2 CPU, sí se decide asignar sólo el 70% del RAM del sistema, el tamaño del dispositivo para zRam puede ser de 1503238553 (1433 MB) (resultado de 4294967296/2*0.7). Como hay dos CPU se pueden crear dos dispositivos de 1433 MB cada uno.

modprobe zram num_devices=2
echo 1503238553 > /sys/block/zram0/disksize
echo 1503238553 > /sys/block/zram1/disksize
mkswap /dev/zram0
mkswap /dev/zram1
swapon -p 10 /dev/zram0
swapon -p 10 /dev/zram1


Atención: Salvo que se indique lo contrario, la licencia del texto de este documento es Creative Commons Reconocimiento 2.5, mediante la cual usted tiene permitido copiar, modificar, comunicar y distribuir el contenido de este texto, de manera total o parcial, y publicarlo o difundirlo en cualquier otro sitio de Internet o medio de comunicaciòn, siempre y cuando incluya o cite (1)el nombre de este sitio de Internet, (2)enlace permanente de este documento, (3)nombre del autor y (4)la misma licencia de distribución.

Opciones: Imprimir | Recomendar | Enlace permanente

Twitter Facebook Google Bookmarks Bitacoras.com Wikio Menéame Technorati Bloglines Digg Yahoo Buzz

Seguimientos (Trackback)

URL de seguimiento para esta entrada:
http://www.alcancelibre.org/trackback.php/aldos-zram
  • Utilizando zRam para optimizar uso de memoria del sistema.
  • 0comentarios
  • Crea cuenta nueva
Agregar comentario

Los siguientes comentarios son de la persona que los haya enviado. Este sitio se deslinda de cualquier responsabilidad respecto de las opiniones expresadas por los participantes en nuestros foros y secciones de comentarios, y el hecho de publicar las mismas no significa que se esté de acuerdo con éstas.