Ubuntu – How to a load average of 0.00 exist

cpu load

I understand that the load balance is a way of measuring how busy the CPU is. However, I don't understand how a load average of 0.00 can exist. Doesn't the kernel always run? Doesn't that take part of the CPU load?

Best Answer

The load average over a period of time is the average number of processes which were competing for CPU over that period of time. The "kernel" doesn't run if there is nothing to be done; more specifically, if there is nothing to be done the CPU is given to a special "idle" thread which is not counted (and which may do things like put the CPU is a state where it waits for an interrupt).

So, for example, a load average of 0.6 over 5 minutes usually means that during those 5 minutes the CPU was used for a total 3 minutes by some process(es) (or by the kernel), and for a total of 2 minutes it was idle. But, as @UKMonkey observes, it might mean that after 4 and a half minutes of doing nothing, 6 processes competed for the CPU for the last 30 seconds...

The CPU is idle is there is no process which wants to use it to run code, because all processes are either waiting for an input or output operation to complete or are sleeping waiting to be woken up at a certain future time.

@Panther's links provide more in-depth discussions of load averages.