Meu cache de troca de laptop Ubuntu para o disco congelar meu sistema

2

Meu laptop é ThinkPad x220, 4G ram, disco rígido é 7200rpm, instalado com o Ubuntu 12.04, usando o desktop Unity.

Quando eu abro eclipse e chrome, eles comem cerca de 2G de memória. Aqui está o resultado free -m :

             total       used       free     shared    buffers     cached
Mem:          3841       3301        540          0         10        956
-/+ buffers/cache:       2334       1507
Swap:         8187        306       7881

E o resultado top :

 Mem:   3934188k total,  3540508k used,   393680k free,    45680k buffers
 Swap:  8384508k total,   313512k used,  8070996k free,  1078888k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                       
 5552 martin    20   0 4249m 388m 6560 S    0 10.1   2:46.28 java                                                                       
 3369 martin    20   0 2548m 182m  32m R    1  4.7  29:19.64 chrome                                                                     
 3406 martin    20   0 1000m 155m  16m S    0  4.1   4:18.97 chrome                                                                     
 2736 martin    20   0 1582m 106m  29m S    1  2.8  13:10.27 compiz                                                                     
 3704 martin    20   0  945m  85m 8396 S    0  2.2   0:15.60 chrome                                                                     
11047 martin    20   0  926m  82m  23m S    0  2.2   0:06.52 chrome                                                                     
11443 martin    20   0  915m  72m  21m S    0  1.9   0:46.08 chrome                                                                     
 4280 martin    20   0  822m  66m  12m S    4  1.7  14:59.41 chrome

Após alguns períodos de aproximadamente 10 minutos, eu tenho apenas 100M + de memória disponível, então o sistema começa a trocar memória para o disco, o que faz com que meu computador congele totalmente, ele se recuperaria após o término da troca.

Eu já tenho vm.swappiness = 10

Eu pesquisei no google, e alguns artigos disseram que quando a memória não é suficiente, o sistema Libere o cache e use-o como memória. Mas parece-me que o cache nunca é liberado. Quando o sistema não tem memória ( Mas na verdade eu tenho memória suficiente, alguma memória é usada apenas para cache ), ele não usa cache, ao invés disso, troca a memória diretamente para o disco, que causa congelamento.

Como posso evitar isso?

Diminuindo a memória em cache?

    
por jiluo 31.07.2012 / 10:23

1 resposta

0

Se você quiser mais memória livre, pode obtê-la definindo vm.min_free_kbytes . Por exemplo, se você quiser que o sistema desperdice 256 MB de memória, use este comando:

sysctl -w vm.min_free_kbytes=262144

O sistema irá agora manter 256MB livres e ter menos 256MB de memória para trabalhar. Isso tornará o desempenho pior, mas tornará o cache menor, conforme solicitado.

Mas acho que você está perdendo um ponto importante - a memória livre não é melhor que a memória que não está instalada no computador. Nenhum deles ajuda o computador a ter um melhor desempenho.

Você deve restaurar todas as configurações para os padrões e trabalhar no seu problema real - que o seu computador está congelando.

    
por 31.07.2012 / 11:55