Linux load average and other silly metrics

Talk by Franck Pachot. Link to the details in the Reference section.

The talk starts with the saying the load is often misunderstood.

He shows a classic example of io wait with high load, low cpu. Lots of processes in D state, this can lead to high load.

You can lower the io wait percentage by running ‘yes’. Well, it simply means that the cpu is no longer only waiting on io.

In the first example he uses fio with direct (synchronous) io. This leaves the process in D state.

In the second example he uses libaio leading to fio remaining in sleep state. As it is interruptible. The S state does not count for the load, D does count.

Comparing the load average to the number of cores does not always tell you if there is a problem. High io load leads to high load, but may not be a problem.

The comment about the load average in loadavg.c of the Linux kernel comically states it is a ‘silly magic number but people think it is important’.

In Linux you don’t want to look at ‘free’ memory, but rather at ‘available’ memory.

Conclusion

Good talk about Linux load averages. If the number is confusing to you this is a good talk. However, for a system administrator with experience reading load averages and determining how busy a machine really is this talk was not very valuable.

As mentioned during the Q/A, the Pressure Stall Information metrics are often more valuable than load average.

References

Linux load average and other silly metrics