Show CPU Utilization on X-Series software
The swatch command (./swatch health_cpumem.swc) can be used to get detailed CPU load information. Linux reports CPU load in two separate modes, user mode and system mode. This applies to the CPMs and the APMs. The Linux command ‘top’ is a good way to determine how CPU utilization is distributed.
When the CPU utilization is reporting close to 100%, it is usually due to the excessive use of a single process. The interrupt levels of the process determines the mode. If a CPU is being maxed out in user mode, it will have little to no effect on the way the system behaves. If a CPU is being maxed out in system mode, it will have a direct impact on performance and may result in a slot reset due to missed heartbeats.
The CPU load being reported by the NPMs running Vxworks is straightforward. The CPU load on NPM is linear, and as it approaches 100%, it will have a direct impact on performance. The NPM has been designed to continue processing flows for the active flow table even with high CPU utilization, so problems would be observed with attempting to process new flows.
If the CPU utilization or load is taken by softIRQ (usually in case of an APM); it is usually the traffic causing it, and specifically small packet traffic profile.
In case of a CPM reporting high CPU on Iowait, the hard disk subsystem should be investigated for high activity.
NOTE: These are general observations, which apply to many but not all circumstances. A judgement should be made after carefully examining the output of commands such as top, swatch, vmstat, etc.
The following options can be viewed directly from the CLI, (beginning with XOS V8.5.4):
# show cpu
CPU utilization average for cp2:
for last 1 minute: 46.23
for last 5 minutes: 19.17
for last 15 minutes: 19.17
CPU load average for cp2:
for last 1 minute: 1.01
for last 5 minutes: 0.56
for last 15 minutes: 0.22
Slot Module CPU User Nice Syst Idle Irq SfIrq Iowt
---- ------ ----- ----- ----- ----- ----- ----- ----- -----
7 cp2 CPU 0.1 0.0 0.9 62.4 0.0 0.3 36.0
# show cpu ?
utilization-average - (Optional) Displays CPU utilization average
load-average - (Optional) Displays CPU load average
statistics - (Optional) Displays statistics for each CPU on the CPM and APM module