Alto em% wa do comando top, existe alguma maneira de restringi-lo?

1

Aqui está a minha última informação antes de começar:

top - 18:26:10 up 238 days,  5:43,  3 users,  load average: 1782.01, 1824.47, 1680.36
Tasks: 1938 total,   1 running, 1937 sleeping,   0 stopped,   0 zombie
Cpu(s):  2.4%us,  3.0%sy,  0.0%ni,  0.0%id, 94.5%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  65923016k total, 65698400k used,   224616k free,    13828k buffers
Swap: 33030136k total, 17799704k used, 15230432k free,   157316k cached

Como você pode ver, desde que eu lancei cerca de 2000 processos executando o comando hadoop get , % wa é muito alto. Limito memória e cpu em cgroups , será útil se eu limitar o disco IO também? Em caso afirmativo, alguém poderia me dar uma idéia de como fazer isso em cgroups ? Agradecemos antecipadamente.

    
por KAs 12.06.2015 / 12:45

1 resposta

2

Seu sistema está trocando muito (17G swap usado), o que tornará qualquer E / S de processos regulares para a respectiva unidade extremamente lenta - o que se traduz em alta %wa .

Não tem 100% de certeza, mas mesmo a própria troca também pode contribuir diretamente para o valor de %wa (normalmente por meio do processo kswapd , provavelmente também o maior número de CPUs na sua situação).

Primeiramente, você quer limitar o número de processos para que nenhum (ou muito pouco) swap seja usado e, em seguida, verifique novamente o% wa e avalie se você realmente precisa restringir o I / O para esses processos.

    
por 12.06.2015 / 19:50