Need help?

Our experts have had an average response time of 11.7 minutes in August 2021 to fix urgent issues.

We will keep your servers stable, secure, and fast at all times for one fixed price.

Perfmon Counters for CPU usage

by | Jan 28, 2021

Perfmon Counters for CPU Usage include Processor: % Processor Time, % User Time, % Privilege Time, % Interrupt Time, and so on.

Performance Monitor (PerfMon) is a tool that comes built-in with Windows. It mainly allows looking into the performance of the system and the applications that are running on it.

Here at Bobcares, we have seen several such monitoring related queries as part of our Server Management Services for web hosts and online service providers.

Today we’ll take a look at how to set up the performance counter and the different Perfmon counters for CPU usage.


How to set up a performance counter for CPU Usage

Now let’s take a look at how our Support Engineers set up the performance counter.

  1. First, we to the Control Panel and click on Administrative Tools.
  2. Next, we click on the Performance option and right-click on Counter Logs.
  3. After that, we select the New Log Settings and enter a name for the log and click OK.
  4. Now, we click on Add Objects and select what type of performance object we want.
  5. Then we click Add and Close.
  6. Finally, we change the Log File type to “Text File (Tab Delimited)” and click on Apply and OK.


Perfmon Counters for CPU Usage

We first look at CPU usage in Windows Task Manager. If the CPU utilization is continuously going beyond 85% then it means the system is facing a CPU bottleneck. Here is the list of performance counters that we look at to identify SQL Server CPU bottlenecks.


1. Processor: % Processor Time

This counter displays the percentage of time the CPU spends executing a thread that is not idle. The value of this counter must be less than 50%. But if tt frequently reaching beyond 85% then it means the system is facing a CPU bottleneck.


2. Processor: % User Time

This counter shows the percentage of time a process spends executing user processes like SQL Server.

If this counter is high then it means CPU pressure is because of SQL Server or because of user applications. So we retrieve CPU intensive queries to get the culprit transactions that are causing high CPU pressure. Also, there is no idle value for this counter.


3. Processor: % Privilege Time

This counter shows the percentage of time the processor spends on the execution of Microsoft Windows kernel commands, such as processing of SQL Server I/O requests. Also, it captures the information about kernel mode and indicates the poor performance of disk subsystems.

So we monitor DISK IO related performance counters to identify DISK IO bottleneck. Also, if possible, we install a faster or more efficient disk subsystem.


4. Processor: % Interrupt Time

This counter shows the time a processor spends receiving and servicing hardware interruptions during specific sample intervals. Also, it indicates a possible hardware issue if the value is greater than 15 percent.


5. System: Processor Queue Length

This counter gives information about the number of threads waiting for processor time. If the value of this counter is greater than zero then it means the system is facing CPU bottleneck.

We can further check Compilations/sec and Re-Compilations/sec. A high number of compilations and recompilations usually indicates poor reuse of the query plans. We can fix this by optimizing the queries and stored procedures.


6. System: Calls/sec

This counter shows the number of software calls to the operating system service routines per second.

Similarly, another CPU perform counter Processor: Interrupts/Sec shows the number of hardware calls to the processor. We can use both perfmon counters to determine the source of the performance issues. The acceptable values for Calls/sec are under 20,000. Higher values indicate excessive OS activity caused by software applications.


7. Context Switches/sec

Context Switches occur when kernel switches processor from one thread to another. Its value must be less than 2,000 per processor.

But if the values of Context Switches/sec and Processor: % Processor Time on the system is constantly high then it is a clear sign of processor bottlenecks. The permanent solution to reduce the CPU bottleneck is to change the processor to a more powerful one or add an addition to existing ones.

[Need any further assistance in fixing Windows errors? – We are here to help you]



Today, we discussed the Perfmon Counters for CPU Usage. Also, we saw the suggestions our Support Engineers provide to overcome it.


Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.


var google_conversion_label = "owonCMyG5nEQ0aD71QM";


Submit a Comment

Your email address will not be published. Required fields are marked *

Privacy Preference Center


Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

PHPSESSID - Preserves user session state across page requests.

gdpr[consent_types] - Used to store user consents.

gdpr[allowed_cookies] - Used to store user allowed cookies.

PHPSESSID, gdpr[consent_types], gdpr[allowed_cookies]


Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.

_ga - Preserves user session state across page requests.

_gat - Used by Google Analytics to throttle request rate

_gid - Registers a unique ID that is used to generate statistical data on how you use the website.

smartlookCookie - Used to collect user device and location information of the site visitors to improve the websites User Experience.

_ga, _gat, _gid
_ga, _gat, _gid


Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.

IDE - Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user.

test_cookie - Used to check if the user's browser supports cookies.

1P_JAR - Google cookie. These cookies are used to collect website statistics and track conversion rates.

NID - Registers a unique ID that identifies a returning user's device. The ID is used for serving ads that are most relevant to the user.

DV - Google ad personalisation

IDE, test_cookie, 1P_JAR, NID, DV, NID
IDE, test_cookie


These are essential site cookies, used by the google reCAPTCHA. These cookies use an unique identifier to verify if a visitor is human or a bot.