CPU usage in top command is an important metric for CPU performance in Linux. Today we will learn what us sy ni wa hi st means. Then we can get an idea of which column uses the most CPU resource.
Exploring CPU Usage in Top command
us: Time spent in running user space processes. This reflects the CPU consumption by your application.
sy: Time taken by system processes. A higher number here can indicate too many processes, and the CPU is spending more time process scheduling.
ni: Time spent with user space processes that are assigned with execution priority (nice value).
id: Indicates the time spent in idle mode, where the CPU is doing nothing.
wa: Waiting for IO. A higher value here means your CPU is spending too much time handling IO operations. Try improving IO performance or reducing IO at application level. More details about IOwait
hi/si: Time spent in hardware interrupts or software interrupts.
st: Stolen CPU cycles. The hypervisor assigned these CPU cycles to another virtual machine. If you see a higher number in this field, try reducing the number of virtual machines from the host.
In general, we need to check which column plays a big part in CPU usage.