Analyzing CPU usage
Modified: 28 Apr 2022 01:26 UTC
This guide contains information on gathering data on CPU usage from the global zone of a compute node.
Load averages
The prstat command
All processes (inc. zones): prstat -Z
Per zone: prstat -Zz <zone_id> (zone_id from zoneadm list -v)
Per process: prstat -mLc 1
The kstat command
All zones: kstat -p caps::cpucaps_zone_*
Per zone: kstat -p caps::cpucaps_zone_<id> (zone_id from zoneadm list -v)
| Name | Description |
|---|---|
| usage | current CPU usage |
| maxusage | high watermark of CPU usage |
| value | CPU cap value. This is the most CPU the instance can use while bursting. |
| baseline | CPU minimum value. This is the guaranteed minimum CPU usage for the instance. |
| above_base_sec | Number of seconds the instance was bursting (above baseline) |
The percentage is the total across all CPUs (psrinfo). So, a value of 200 is equivalent to 2 virtual CPUs (a virtual CPU is either a core or a hyper-thread).