Kernel 2.6.16 e mais recentes fornecem um mecanismo para que o kernel libere o "cache" de páginas e/ou "inode" e "dentry caches", o que pode ajudar a liberar uma grande quantidade de memória. Agora você pode jogar fora seus velhos scripts que atribuíam uma tonelada de dados aleatórios na memória apenas para se livrar do cache, bastando apenas atribuir um valor em /proc/sys/vm/drop_caches:

sync ; echo 3 > /proc/sys/vm/drop_caches

Esta é uma operação não-destrutiva e libera apenas dados que estão completamente inutilizados. Objetos sujos (dirty) continuarão a ser utilizados até por escrito para o disco e não são marcados como "free". Se você executar o "sync" primeiro afim de copiá-los para o disco, essa operação de limpeza tenderá a liberar mais memória ainda.

Fontes:
http://www.kernel.org/doc/Documentation/sysctl/vm.txt
http://wiki.hackstore.com.br/Linux_performance_tuning