Tengo una CPU de 1 núcleo instalada en mi PC. A veces, uptime
muestra carga> 1. ¿Cómo es esto posible y qué significa esto?
EDITAR: los valores suben a 2.4
Tengo una CPU de 1 núcleo instalada en mi PC. A veces, uptime
muestra carga> 1. ¿Cómo es esto posible y qué significa esto?
EDITAR: los valores suben a 2.4
Respuestas:
La carga no es igual al uso de la CPU. Básicamente es un indicador de cuántos procesos están esperando para ejecutarse.
Algunos enlaces útiles:
htop
una buena descripción "gráfica".
uptime
muestra la carga del sistema (no exactamente el uso de la CPU), que se describe a man uptime
continuación:
Los promedios de carga del sistema son el número promedio de procesos que están en estado ejecutable o ininterrumpible. Un proceso en un estado ejecutable está usando la CPU o está esperando usar la CPU. Un proceso en estado ininterrumpido está esperando algún acceso de E / S, por ejemplo, esperando el disco. Los promedios se toman durante los tres intervalos de tiempo. Los promedios de carga no están normalizados para la cantidad de CPU en un sistema, por lo que un promedio de carga de 1 significa que un solo sistema de CPU se carga todo el tiempo, mientras que en un sistema de 4 CPU significa que estuvo inactivo el 75% del tiempo.
Mientras la carga sea menor que la cantidad de núcleos de CPU que tiene, debería estar bien. Si supera, significa que su sistema no puede hacer frente a su carga de trabajo "en tiempo real". Por lo tanto, algunos procesos deben esperar para obtener tiempo de CPU (o acceso de E / S). Se crea una línea de espera.
Si tiene una carga 2.7, significa que en promedio (durante los últimos 1, 5 o 15 minutos, dependiendo del valor que vea), los procesos 2.7 intentan ejecutarse en paralelo, pero solo tiene 1 núcleo, por lo que su sistema está sobrecargado Estás pidiendo demasiado de eso.
Sin embargo, no se asuste, puede que no sea un problema: una vez que finaliza el trabajo, las cosas suelen volver a la normalidad.
El tiempo de actividad muestra la salida de /proc/loadavg
para cargas.
La página de manual de man 5 proc
dice
/proc/loadavg
The first three fields in this file are load average figures giving
the number of jobs in the run queue (state R) or waiting for disk
I/O (state D) averaged over 1, 5, and 15 minutes.
Por lo tanto, puede tener altas cargas incluso si tiene un 0% de uso de CPU. One Core puede ganar cargas de hasta el 100% o 1 en sistemas multiprocesador.
Consulte también Carga elevada de CPU durante E / S
ps aux --sort -rss |head -15
Esto ordenará los 15 procesos más utilizados por la memoria rss
Además, esto ordenará los procesos más utilizados por CPU y memoria
ps aux --sort -pid |head -15
Si tiene 1 carga de CPU, más de 1 es una advertencia, examine la lista de procesos y vea quién de ellos usa más CPU y RAM
Cuando vea los procesos más utilizados, intente ver qué archivos están abiertos con
lsof -p [PID_most_used]
También sería bueno si le das salida del comando superior
load
es diferente deload average
. Como dijo @michas, la carga es un indicador para el recuento de procesos que están esperando ser ejecutados, pero el promedio de carga es la carga promedio del sistema calculada durante un período de tiempo dado de 1, 5 y 15 minutos.