Tem certeza absoluta de que este é um problema real: a RAM usada é não igual à memória RAM indisponível (Veja isto ServerFault pergunta em livre / buffers / cache ), o reflexo de querer ter memória listada como livre é muitas vezes errado .
O Slab não é uma coisa específica, é um dos alocadores de memória dentro do kernel, em particular laje permite ao kernel gerenciar objetos que não são do tamanho da página (como apontado em outros lugares / proc / slabinfo e slabtop devem dar a você alguma indicação do que ela está segurando no momento). Mais informações sobre a placa podem ser encontradas aqui
Se você vir o SReclaimable abaixo de Slab, é da opinião que quase toda a memória alocada pela placa pode ser recuperada quando / se necessário. Então, sim, a memória será liberada quando necessário. O custo acessório da recuperação está pagando alguns custos de contabilidade diferidos em ciclos de cpu.
Não tenho certeza se slab falando estritamente precisa de toda essa memória, em muitos casos reterá objetos inicializados para uso posterior (salvando a inicialização), alguns deles são vários caches, a maioria é provavelmente benéfica (Ou seja, os efeitos dos caches do sistema de arquivos são imensos).
Se você quiser controlar o comportamento do vmm, confira / proc / sys / vm , em particular min_slab_ratio pode ser de interesse. Você também pode limitar os caches slab individuais por meio de / proc / slabinfo (consulte o artigo ibm developerworks para detalhes). Embora, antes de começar a ligar o vmm e a laje: descubra o que você realmente quer realizar, e faça algumas pesquisas sobre o vmm e como ele pode ser ajustado para se ajustar à sua carga de trabalho. É bem possível quebrar seu sistema de maneira sutil e espetacular, tocando com botões de ajuste de vmm.