Go to main content
Oracle® ZFS Storage Appliance Analytics Guide, Release OS8.7.x

Exit Print View

Updated: August 2017
 
 

CPU: Percent Utilization

This statistic shows the average utilization of the appliance CPUs. A CPU may be a core on a socket or a hardware thread; the number and type can be seen under analytics interface. For example, a system may have four sockets of quad-core CPUs, meaning there are 16 CPUs available to the appliance. The utilization shown by this statistic is the average across all CPUs.

Figure 2  CPU Percent Utilization

image:graphic showing CPU percent utilization

The appliance CPUs can reach 100% utilization, which may or may not be a problem. For some performance tests, the appliance is deliberately driven to 100% CPU utilization to measure it at peak performance.

Example

Figure 3 shows CPU: Percent utilization broken down by CPU mode, while the appliance served over 2 Gbytes/sec of cached data over NFSv3.

An average of 82% utilization suggests that there could be more headroom available, and that appliance may be able to serve more than 2 Gbytes/sec (it can). (The breakdowns only add to 81%; the extra 1% is due to rounding.)

The high level of CPU utilization does mean that overall latency of NFS operations may increase, which can be measured by Protocol NFS operations broken down by latency, as operations may be waiting for CPU resources more often.

When to Check CPU Percent Utilization

You can check CPU percent utilization when investigating system bottlenecks. You can also check this statistic when enabling features that consume CPU, such as compression, to gauge the CPU cost of that feature.

CPU: Percent Utilization Breakdowns

The available breakdowns of CPU percent utilization are:

Table 12  Breakdowns of Percent Utilization
Breakdown
Description
CPU mode
Either user or kernel. See the CPU modes table below.
CPU identifier
Numeric operating system identifier of the CPU.
application name
Name of the application which is on-CPU.
process identifier
Operating system process ID (PID).
user name
Name of the user who owns the process or thread which is consuming CPU.

The CPU modes are:

Table 13  CPU Modes
CPU mode
Description
user
This is a user-land process. The most common user-land process consuming CPU is akd, the appliance kit daemon, which provides administrative control of the appliance.
kernel
This is a kernel-based thread which is consuming CPU. Many of the appliance services are kernel-based, such as NFS and SMB.

Further Analysis

A problem with this CPU utilization average is that it can hide issues when a single CPU is at 100% utilization, which may happen if a single software thread is saturated with work. Use the Advanced Analytic CPUs broken down by percent utilization, which represents utilization as a heat map of CPUs, allowing a single CPU at 100% to be easily identified.

Details

CPU utilization represents the time spent processing CPU instructions in user and kernel code, that are not part of the idle thread. Instruction time includes stall cycles on the memory bus, so high utilization can be caused by the I/O movement of data.