Algunas veces mis servidores mostrarán un promedio de carga alto en el programa "superior" (por ejemplo, la carga es de ~ 10 en una máquina de 4 núcleos), pero el uso real de la CPU no es particularmente alto.
Supongo que el problema es que hay muchos trabajos intensivos de E / S en ejecución. ¿Hay alguna manera fácil de identificar estos trabajos que están causando la carga, si sus valores "% CPU" en la parte superior no son tan altos?

topcomando?Respuestas:
iostatpuede reportar estadísticas como esa. Normalmente se incluye en su distribución en el paquete sysstat.También vale la pena echar un vistazo a dstat , es un reemplazo moderno.
fuente
iostatiba a ser mi respuesta.Si tiene contabilidad IO en su kernel, puede usarla
iotoppara dar información como esa. Además, las herramientas de monitoreo como collectd pueden registrar e informar sobre los datos.fuente
Para averiguar qué está causando una carga alta, puede verificar algunas cosas.
vmstat -wle mostrará ovierwiem (procesos, intercambio, mem, cpu, io, sistema)pmstat -P ALLle proporcionará estadísticas (con% iowait) por núcleo de CPUiostat -xbusque un alto porcentaje de utilidad o espera larga o un gran tamaño de cola promedioiotopps -axbusque el estado D, que es suspensión ininterrumpida (generalmente IO), ejecútelo una vez más y verifique si todavía están en estado Dsar -b- actividades generales de iosar -d- actividades individuales del dispositivo de bloqueo iofuente