Load average summarizes how many tasks are competing for CPU time or stuck waiting on I/O, making it a fast signal of system pressure on Linux.

Linux computes 1, 5, and 15-minute exponentially-weighted averages from the scheduler’s view of runnable tasks plus tasks in uninterruptible sleep (commonly blocked on disk or network I/O). Commands like uptime and top display the same values, so the numbers stay consistent across tools even when the presentation differs.

Interpreting load average depends on the number of CPU threads available to run work and whether the load comes from CPU contention or I/O stalls. Short spikes are common, but sustained load above the thread count typically means work is queuing and latency increases. In containers, load average is usually host-wide, so correlate the numbers with CPU usage and I/O wait when diagnosing per-container slowdowns.

Steps to check load average with uptime and top in Linux:

  1. Display the 1, 5, and 15-minute load averages with uptime.
    $ uptime
     20:35:36 up 10 days, 19:42,  0 user,  load average: 0.70, 0.66, 0.43
  2. Display load averages in a live view with top.
    $ top -b -n 1 | head -n 5
    top - 20:35:37 up 10 days, 19:42,  0 user,  load average: 0.70, 0.66, 0.43
    Tasks:   8 total,   1 running,   7 sleeping,   0 stopped,   0 zombie
    %Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st 
    MiB Mem :  11948.8 total,   8033.2 free,   1172.3 used,   3010.1 buff/cache     
    MiB Swap:   4096.0 total,   4096.0 free,      0.0 used.  10776.5 avail Mem 

    High load with a large id value but rising wa often indicates I/O stalls rather than CPU saturation.

  3. Read raw load average values from /proc/loadavg.
    $ cat /proc/loadavg
    0.70 0.66 0.43 1/272 3595

    The fields are 1/5/15-minute averages, then runnable/total tasks (1/845), then the most recently created PID (2248).

  4. Check the available CPU thread count for comparison.
    $ nproc
    8

    nproc reports the number of processing units available to the current session, which is the baseline for interpreting load.

  5. Compare load averages to the CPU thread count to gauge saturation.

    Sustained 1-minute load noticeably above the nproc value typically means tasks are queued or blocked, while values well below it usually indicate headroom.

  6. Watch load average changes over time with watch.
    $ TERM=xterm timeout 2 watch -n 1 uptime
    ##### snipped #####

    Press Ctrl+C to exit the live view.