Troca de Linux - Ajustando as configurações da VM do Kernel

9

Antes de ler isto, observe que entendo os benefícios do armazenamento em cache. Eu estou familiarizado com o dogma que o carneiro não utilizado é ram perdido.

Esta pergunta é uma que eu adaptei de uma pergunta anterior:

excluindo ram do cache do Linux

Naquela pergunta eu estava curioso sobre como ajustar meu servidor e armazena o cache de memória ram. O sistema é bastante dinâmico, então acredito que os arquivos em cache não me dão muito ganho. Além disso, temos código no servidor que precisa acessar rapidamente grandes quantidades de memória RAM em curtos períodos de tempo para processar arquivos de vídeo e acredito que verei um benefício de desempenho com a entrega direta do RAM em seguida, limpá-lo do cache e, em seguida, entregá-lo.

Gostaria de descobrir se algum de vocês tem experiência em ajustar o valor padrão de 60 no seguinte arquivo (isso acontece em um servidor Ubuntu):

/proc/sys/vm/swappiness  

E se sim, o que afeta você viu? Se eu substituir o valor padrão de 60 por 30, verei menos troca e muito mais reutilização de cache obsoleto? Eu me aproximo 0 ou 100 para diminuir a permeabilidade e aumentar a reutilização do cache?

Por fim, alguém sabe por que o padrão está definido para 60?

NOTA: Se estiver próximo de 0, o Linux preferirá manter os aplicativos na RAM e não aumentar os caches. Se estiver próximo de 100, o Linux preferirá trocar os aplicativos e ampliar os caches o máximo possível. O padrão é um saudável 60. - Obrigado pelo link abaixo, 3dInfluence.

    
por Patrick R 02.02.2010 / 15:39

1 resposta

6

Edite: Reescreva a resposta para que fique mais curta e clara, espero:)

Você realmente precisa entender como o subsistema da VM funciona como um todo para começar a ajustar os ajustes ou descobrir que não está obtendo os resultados esperados. Este artigo é um bom ponto de partida sobre como essas configurações funcionam em conjunto com a inclinação da área de trabalho.

Então, mais a sua pergunta. O Swappiness controla quando o subsistema da VM recupera as páginas da tabela de processo, desmapeando e paginando-as, ou seja, trocando. Esse ajuste funciona informando ao subsistema da VM para procurar páginas para trocar quando o% de memória mapeada para processar tabelas de páginas + valor de swappiness for > 100. Portanto, uma configuração de 60 fará com que o sistema comece a paginar páginas obsoletas da tabela de páginas de processo quando estiver usando mais de 40% da memória do sistema. Se você quiser permitir que seus programas usem mais memória às custas do cache, você deverá reduzir o valor do swappiness. Você também vai querer dar uma olhada em / proc / sys / vm / min_free_kbytes e / proc / sys / vm / vfs_cache_pressure. Como isso também irá controlar quanta memória é mantida em reserva e quão agressivo é o cache. Veja o artigo que eu criei para mais informações sobre o último deles.

    
por 02.02.2010 / 16:23

Tags