A resposta à consulta principal está mais abaixo - mas primeiro um aviso sobre a sugestão de Mirra:
Cuidado com isso:
In : /proc/sys/vm/overcommit_memory I try put there 2.
Nesse caso, mesmo quando a memória física estiver disponível, todos os processos que solicitam memória do sistema operacional quando vmcom maior que vmlim receberão erros (eu tenho muitos erros e falha com os aplicativos básicos do sistema como compiz). E por causa de:
vmlim = SWAP_size + 0.5 * RAM_size.
onde 0.5 (50%) é o valor padrão para o parâmetro / proc / sys / vm / overcommit_ratio, você pode facilmente obter muitos erros como eu.
Responda à pergunta principal: é melhor reverter as alterações no parâmetro overcommit_memory para o valor padrão (0 para mim (Ubuntu 12.04 LTS), mas pode ser 1 para outros sistemas operacionais). De acordo com o ótimo artigo , podemos calcular a memória realmente usada pelos processos:
MemoryUsed ~ tot - (cache + buff + free) ~ 23.6G - ( 6.7G + 0.067G + 0.136G) ~ 16.7G
Portanto, apenas 16,7G é realmente usado por processos (a partir de 23,6G de RAM instalada) e a linha vermelha no topo da saída pode ser ignorada.