[MASOCH-L] Duvidas gerencialmento memoria Linux

Rejaine Silveira Monteiro rejaine at bhz.jamef.com.br
Wed Jan 27 16:22:16 -03 2021


Sabe-se que o  Linux sempre tentará usar RAM livre para armazenar várias
coisas (subir em cache/buffers o máximo de coisas para tornar o sistema
mais rápido)

Assim, o comando free  quase sempre mostrará pouca memória livre , mas na
verdade a memória livre que "IMPORTA" é a que esta na coluna 'free'
da  linha - / + buffers / cache , conforme exemplo abaixo:

# free -m
            total       used       free     shared    buffers     cached
Mem:         96684      94859       1825         13          4      29740
-/+ buffers/cache:      65114      *31570*
Swap:         1023       1023          0


Na primeira linha, supostamente temos apenas 1.8G livre, porém na segunda
linha, a coluna free mostra que há, de verdade, 31G livre/disponível.

Se há 31G livre , porque a linha a terceira linha mostra que o swap foi
totalmente usado?  Porque não liberou/usou a área em cache/buffers para
subir e/ou processas as rotinas que requisitaram memória? Sera que o que
estava em cache/buffers estavam sendo usados e realmente houve necessidade
de subir mais coisas pra memória 'real'?

# egrep --color 'Mem|Cache|Swap' /proc/meminfo
MemTotal:       99005368 kB
MemFree:         1159180 kB
MemAvailable:   30661228 kB
Cached:           394952 kB
SwapCached:        63092 kB
SwapTotal:       1048572 kB
SwapFree:            904 kB
O mesmo comportamento pode ser visto no comando acima:

Já estou usando os parametros abaixo :

#swappiness: Controla como o kernel realiza as trocas de cache na RAM. Ao
aumentar esse valor, aumentará a quantidade de trocas. O valor padrão é 60,
colocando 10 significa qu
e a Swap só será usada quando a RAM atingir 90% (valor default: 60).
vm.swappiness=10
#vfs_cache_pressure: Controla a tendência do kernel para recuperar a
memória que é usada no cache do sistema virtual de arquivos. O valor 50 é o
ideal, valores mais altos pode
m deixar o sistema lento e muito baixos reduzem o uso do cache (valor
default: 100).
vm.vfs_cache_pressure=50

Realmente está faltando RAM? E o cache, pq não é usado preferencialmente ao
swap?
Mesmo executando o comando abaixo para limpar drop_caches, não está
liberando o cache... Significa de fato que não tenho memória
free/diponível? Então porque o free mostra e egrep acima mostrou que há
memória disponível?
sync ; echo 1 > /proc/sys/vm/drop_caches

-- 
*Esta mensagem pode conter informações confidenciais ou privilegiadas, 
sendo seu sigilo protegido por lei. Se você não for o destinatário ou a 
pessoa autorizada a receber esta mensagem, não pode usar, copiar ou 
divulgar as informações nela contidas ou tomar qualquer ação baseada nessas 
informações. Se você recebeu esta mensagem por engano, por favor avise 
imediatamente ao remetente, respondendo o e-mail e em seguida apague-o. 
Agradecemos sua cooperação.*


More information about the masoch-l mailing list