O projeto Compressed RAM (CRAM), proposto pelo engenheiro Grigory Pris, representa uma solução para um gerenciamento de memória mais eficiente no sistema operacional Linux. Diferentemente das tecnologias existentes ZRAM e Zswap, o CRAM trata a área comprimida como memória RAM nativa, o que permite evitar o uso de swap tradicional ou virtual e otimizar o acesso aos dados.
Em uma apresentação realizada na conferência Linux Plumbers Conference 2026, foi demonstrado que o CRAM alcançou um desempenho que é 452 vezes superior ao do ZRAM. A equipe de Grigory Pris, engenheiro da Meta, apresentou um conceito capaz de tornar o kernel Linux ainda mais eficiente ao lidar com grandes volumes de dados na RAM, especialmente em cenários de escassez de memória.
Como o nome sugere, o CRAM baseia-se em uma nova abordagem de compressão de dados diretamente na memória RAM. Embora métodos semelhantes existam, no Linux destacam-se dois padrões: ZRAM e Zswap. Compreender seus princípios ajuda a avaliar as vantagens do CRAM.
O ZRAM cria um tipo de bloco de dados virtual, simulando um disco rígido ou SSD dentro da própria memória RAM. Quando a memória começa a encher, páginas de memória inativas ou pouco utilizadas são comprimidas e movidas para este bloco, reduzindo assim o consumo de RAM. É importante notar que o ZRAM funciona como um mecanismo de swap, usando parte do espaço em disco como extensão da RAM, mas faz isso dentro da própria RAM.
O Zswap é semelhante em princípio, mas mais avançado. Ele intercepta as tentativas do sistema operacional de enviar páginas de memória para o swap real (em HDD ou SSD). Em vez disso, os dados dessas páginas são comprimidos e armazenados em áreas específicas da memória RAM. Somente quando a memória se aproxima da saturação, as páginas são enviadas para o swap real.
Apesar de ZRAM e Zswap serem soluções geniais, eles enfrentam um potencial problema de desempenho. A dinâmica de compressão e descompressão de dados para processamento através de swaps, sejam reais ou virtuais, é significativamente mais lenta do que as operações realizadas diretamente na memória RAM.
É aqui que o CRAM entra como solução. Embora à primeira vista o CRAM se assemelhe ao ZRAM, a diferença chave é que, no primeiro caso, o bloco que armazena os dados comprimidos é tratado como memória RAM real, e não como um swap tradicional. O Linux começa a operar neste espaço como se fosse um bloco adicional de RAM, ativando mecanismos nativos de gerenciamento de memória do kernel para trabalhar com a área contendo os dados comprimidos.
Essas funções integradas permitem, sob certas circunstâncias, acessar dados comprimidos sem gerar um erro de página (page fault) — uma situação em que o sistema tenta acessar uma página de memória que não está disponível ou não está mapeada, exigindo intervenção do kernel. Eles também garantem a migração de páginas entre endereços, reduzindo o risco de interrupções, entre outras coisas, o que impacta positivamente o desempenho.
Quão exatamente o desempenho melhora? No evento Linux Plumbers Conference (LPC) 2026, Grigory Pris explicou que, em um benchmark específico, o CRAM permitiu executar 489 milhões de operações por segundo contra 1,1 milhão de operações por segundo do ZRAM. Isso significa que, neste teste, o CRAM foi 452 vezes mais rápido que o ZRAM clássico, e isso foi alcançado sem a necessidade de criar uma infraestrutura de gerenciamento de memória totalmente nova no Linux.
Embora o nível de desempenho possa variar dependendo do aplicativo, a tendência indica que o CRAM sempre apresentará melhores resultados. O projeto é promissor, no entanto, é preciso conter o entusiasmo excessivo, pois o desenvolvimento do CRAM ainda não foi concluído e, no momento, não há data prevista para lançamento oficial. Também deve-se considerar que tal solução provavelmente será voltada para aplicações profissionais rodando em servidores, embora potencialmente possa ser útil para uso doméstico.



