CRAM: nueva compresión de memoria en Linux alcanza 452 veces más velocidad

Fuentes: CRAM: New Linux memory compression hits 452x speedup over ZRAM

Un nuevo método de compresión de memoria, denominado CRAM, desarrollado por Gregory Price y su equipo en Meta, ofrece hasta 452 veces más rendimiento que ZRAM al mantener los datos comprimidos en la RAM física. A diferencia de las soluciones actuales como Zswap o ZRAM, que operan a través de la capa de intercambio (swap), CRAM evita el uso de swap, permitiendo acceder a los datos comprimidos a la velocidad de la DRAM. Esta técnica utiliza un nodo NUMA privado, conocido como 'ghost CPU', en lugar de tratar la memoria como un dispositivo de bloques, lo que permite que el kernel de Linux gestione la migración y el balanceo de memoria de forma nativa. El sistema incorpora un mecanismo llamado 'Chicken Bit' para prevenir fallos en cascada cuando las escrituras superan la capacidad de asignación de CRAM. Aunque la compresión en sí misma es rápida, el principal cuello de botella en las escrituras es la necesidad de realizar fallos de página y migrar folios de memoria, lo que reduce el rendimiento a 5,4 veces más rápido que ZRAM en el peor caso. Este avance, presentado en la Linux Plumbers' Conference en Praga, podría mejorar significativamente el rendimiento en servidores Linux y dispositivos como el Steam Deck, aunque aún quedan por resolver aspectos técnicos relacionados con la gestión de la memoria lógica comprimida.