Alto en% wa desde el command superior, ¿hay alguna forma de restringirlo?

Aquí está mi última información superior antes de que suene:

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 puede ver, desde que hadoop get aproximadamente 2000 processs ejecutando el command hadoop get , % wa es muy alto. Limito la memory y la CPU en cgroups , ¿será útil si también limito el disco IO? Si es así, ¿alguien podría darme una idea de cómo hacer eso en cgroups ? Gracias por adelantado.

Su sistema está intercambiando mucho (se usa el intercambio 17G) lo que hará que cualquier E / S de los processs normales a la unidad respectiva sea extremadamente lenta, lo que se traduce en un alto %wa .

No es 100% seguro, pero incluso el intercambio puede contribuir directamente también a la figura %wa (generalmente a través del process kswapd , también es probable que sea el mejor kswapd CPU en su situación).

Primero, debe limitar el número de processs para que no se use (o muy poco) el intercambio y luego volver a verificar el% wa y evaluar si realmente necesita restringir la E / S para esos processs.