3.1.1 Processor monitoring examples
This subsection explains how to monitor processor performance.
- Organization of this subsection
(1) Overview
By monitoring processor performance, you can check performance trends for the entire system.
In Windows, as illustrated in the following figure, processes are executed in two processor access modes: user mode and kernel mode. This figure provides an overview of the Windows architecture.
|
You can also check performance trends for the entire system by monitoring the number of queued jobs.
Jobs, such as processes, are executed by the CPU according to the schedule determined by the OS. The number of queued jobs is the number of jobs that are waiting to be executed by the CPU. When the overall system load is high, the number of queued jobs tends to increase.
The monitoring templates provide functionality such as CPU Usage alarms and CPU Status (Multi-Agent) reports.
To monitor processor performance with more detail than with the monitoring templates, the processor usage per processor, processor usage per process, processor queue count, and processor interrupts from hardware can also be monitored.
The following table lists and describes the principal records and fields related to processor monitoring.
Record |
Field |
Description (example) |
---|---|---|
PI_PCSR |
CPU % |
The CPU usage for a processor. If the value of this field continues to be at or above the threshold (normally 85%), the processor might be a system bottleneck.# |
Interrupts/sec |
The number of hardware interrupts processed by a processor per second. This field is used when the Total Interrupts/sec field in the PI record is monitored for each processor. |
|
Privileged CPU % |
The percentage of time that the workgroup was using the processor in privileged mode. If the value of the CPU % field in the PI_PCSR record continues to be at or above the threshold, there might be a problem with a specific application process (including a service) or system process (including a service).# |
|
User CPU % |
The CPU usage for a processor executed in the user mode. If the value of the CPU % field in the PI_PCSR record continues to be at or above the threshold, there might be a problem with a specific application process (including a service).# |
|
PI_SVRQ |
Queue Length |
The current length of the CPU server operation queue. If the value of this field continues to be at or above the threshold (2), the processor is busy. |
PI |
Processor Queue Length |
The number of threads ready to be executed in the processor queue. If this value continues to be at or above threshold (2), this indicates that the processor is congested. |
CPU % |
The processor usage (%). That is, the percentage of time that the processor was executing non-idle threads. The maximum value is 100, even in a multi-processor environment. |
|
Privileged CPU % |
The CPU usage in the kernel mode. If the value of the CPU % field in the PI record continues to be at or above the threshold, there might be a problem with a specific application process (including a service) or system process (including a service). |
|
User CPU % |
The CPU usage in the user mode. If the value of the CPU % field in the PI record continues to be at or above the threshold, there might be a problem with a specific application process (including a service). |
|
Total Interrupts/sec |
The number of hardware interrupts processed per second. If the value of this field has increased substantially when there are no system activities, there might be a hardware problem (for example, there is a slow device burdening the processor with hardware interrupts). |
- #
-
This field is used when monitoring is to be performed for each processor.
In a multi-processor environment, the system CPU usage is represented by the average usage of all CPUs. Therefore, check the CPU usage for each CPU.
To identify processes that are causing a bottleneck, check the CPU usage for each process.
The following table lists and describes the principal records and fields related to the process monitoring in a multi-processor environment.
Record |
Field |
Description (example) |
---|---|---|
PD_PDI |
CPU % |
The CPU usage for a processor. If the value of this field continues to be at or above the threshold, the processor might be a processor bottleneck.# |
Privileged CPU % |
The percentage of time that the workgroup was using the processor in privileged mode. If the value of the CPU % field continues to be at or above the threshold and the Privileged CPU % value is close to the CPU % value, an API function issued by the process might be a processor bottleneck.# |
|
User CPU % |
The CPU usage for a process executed in the user mode. If the value of the CPU % field continues to be at or above the threshold and the User CPU % value is close to the CPU % value, the process's processing might be a processor bottleneck.# |
- #
-
In a multi-processor environment, the maximum usage value that can be displayed is equal to the number of processors × 100 (%).
(2) Monitoring methods
(a) Monitoring processor usage
System-wide processor usage can be monitored using the CPU Usage alarm provided by the monitoring templates.
The processor usage (the CPU % field of the PI record) allows you to monitor the processor load status. For details, see 3.2.1(1) Monitoring template.
(b) Monitoring processor congestion
In addition to processor usage, you can monitor processor congestion (the number of queued requests) to monitor the processor load status.
Monitoring both processor congestion and processor usage is an effective way to monitor the processor load status.
If a value at or above the threshold is displayed for the processor usage and queue length (Queue Length field in the PI_SVRQ record), the processor is probably congested.
Note that the threshold for the number of threads in the queue (Processor Queue Length field in the PI record) is about 2. If a value of 10 or more is displayed for this value, the system capacity is being exceeded. This value can be used as a guideline for determining whether to upgrade the processor or whether to add processors.
For definition examples, see 3.2.1(2) Definition examples other than for monitoring templates.
(c) Checking processes whose processor usage is high
If you decide that a bottleneck might have occurred after monitoring processor usage and process congestion, use a real-time report (the CPU % field of the PD_PDI record) to find processes that are monopolizing the processor.
If no such processes exist, the system environment is inadequate for the processing. In this case, you might need to upgrade the processor or add processors.
For definition examples, see 3.2.1(2) Definition examples other than for monitoring templates.