CPU monitoring explained

A quick look at what all the CPU metrics mean, and which should be monitored carefully.

CPU usage is a utilization metric used for measuring whether the CPUs in your system are used well. As the one responsible for maintaining the systems running the business applications and services you need to monitor their CPU usage constantly. With CloudRadar, you can watch several system metrics - including CPU - by installing an agent on your systems.

Linux CPU metrics

  • Load average

    The load averages measure the trend in CPU utilization. Load averages include all demand for the CPU, and not only how much was active at the time of measurement.

  • (idle) Time spent idling

    Idle CPU time is accounted when no runnable process is present in the system. In this case the kernel begins executing a special idle process. Consider that the sum of the user-space percentage, the niced percentage, and the idle percentage should be close to 100%.

  • (iowait) Time waiting for completion of I/O activities

    Iowait is a form of idle time accounted when there are no runnable processes. It is used instead of idle when there is at least one process that was put to sleep (as a throttling mechanism) by the kernel due to excessive I/O. Iowait indicates free CPU time that could be used for something CPU-intensive but not I/O-intensive.

  • (system) Time running kernel processes

    All the processes and system resources are handled by the kernel. The kernel is running when a user-space process needs something from the system (for example, allocating memory). The amount of time spent in the kernel is usually low; it could become higher, especially when there is a lot of I/O.

  • (user) Time running user-space processes

    A user space program is any process that doesn't belong to the kernel, for example shells, compilers, databases, or Web servers. If the processor isn't idle, it is normal the majority of the CPU time to be spent running user-space processes.