What Load Average Really Means
Load average represents the average number of processes waiting for CPU time (runnable + uninterruptible I/O). It includes both running processes and those waiting for disk I/O.
Reading Load Average
uptime
cat /proc/loadavg
w
top -bn1 | head -1
Interpreting the Numbers
Compare load to CPU core count:
nproc # number of CPU cores
# Load 1.0 on 4 cores = 25% utilization
# Load 4.0 on 4 cores = 100% utilization
# Load 8.0 on 4 cores = 200% (bottleneck)
Finding Load Sources
ps aux --sort=-%cpu | head -10
ps -eo pid,ppid,stat,cmd --sort=-%cpu | head
iostat -x 1 3 # check I/O wait
Per-CPU Analysis
mpstat -P ALL 1 3
sar -u 1 5
vmstat 1 5
Automated Analysis with dargslan-load-average
pip install dargslan-load-average
dargslan-load-average