How Is My CPU Actually Being Spent?
These panels break down CPU time by where it was spent, so you can attribute load to user code, kernel work, I/O wait, and other states.
CPU Utilization
Aggregate CPU busy ratio of the guest — 1 − idle. The first thing to look at when CPU climbs.
CPU User
Time the guest spent running user-space code. The first line of attribution for application owners — if this is high, profile your application.
CPU System
Time the guest kernel spent on syscalls and kernel-side work on behalf of user processes. High system time with low user time usually points at syscall storms, network softirq pressure, or contended kernel locks.
CPU IOWait
Time the CPU was idle while there was at least one outstanding I/O request. Read together with the disk panels and Hypervisor I/O Wait Time to localize whether the bottleneck is in the guest or in the storage backend.
CPU SoftIRQ
Time spent servicing software interrupts — dominated by network RX/TX processing on busy VMs. Sudden growth here is a strong hint that the instance is approaching a packet-per-second limit.
CPU Idle
The complement of CPU Utilization. Surfaced explicitly so you can spot "idle but unhappy" patterns: high idle combined with high IOWait or high CPU Other.
CPU Other
Catch-all bucket for the less common CPU states. Important: this is also where guest-observed steal time lives. If CPU Other climbs without CPU User or CPU System climbing, suspect host over-provisioning and cross-check with Hypervisor CPU Queue Time (Q1).
Hypervisor CPU Time / User / System
The total CPU the hypervisor billed to this domain — measured on the host side, not from inside the guest. Broken down into total time, user-space time, and kernel time. Useful when reconciling guest-side CPU spend with hypervisor-side capacity planning, and as a fallback when in-guest data is unavailable.
Hypervisor I/O Wait Time
Time the vCPU was blocked on I/O, measured on the host side. Read together with the disk latency panels (Q5) to localize I/O stalls.
API Reference
All instance metrics use DescribeInstanceMonitorData with the metricType values below.
CPU Utilization
CPU_UTILIZATION
CPU User
PROC_CPU_USER
CPU System
PROC_CPU_SYSTEM
CPU IOWait
PROC_CPU_IOWAIT
CPU SoftIRQ
PROC_CPU_SOFTIRQ
CPU Idle
PROC_CPU_IDLE
CPU Other
PROC_CPU_OTHER
Hypervisor CPU Time
HYPERVISOR_CPU_TIME
Hypervisor CPU User
HYPERVISOR_CPU_USER
Hypervisor CPU System
HYPERVISOR_CPU_SYSTEM
Hypervisor I/O Wait Time
HYPERVISOR_IO_WAIT_TIME
Last updated