Troubleshooting Performance Monitor

Here are the answers to some frequently asked questions, along with possible causes and suggested solutions.

Counter value is zero.

The counter for the same instance of the object already appears in the graph. When a duplicate counter is chosen, all data collected is displayed for the first copy.

You cannot have more than one copy of the same counter for the same instance of the same object. Delete one of copies.

The remote computer you are monitoring is offline.

No action required. Performance Monitor continues trying to monitor the instance and will find it when the computer is restarted.

The application or thread you are monitoring has stopped.

No action required. Performance Monitor continues trying to monitor the instance and will find it when the process or thread is restarted.

When an internal counter from which Performance Monitor collects data returns a negative or invalid value, Performance Monitor displays a zero.

Enable Performance Monitor event logging. Performance Monitor will then report any negative or invalid values to the Event Viewer application event log. For more information, see "Logging Performance Monitor Errors."


The counter value in my report is different than the value of the same counter in my graph.

You are reporting on an instantaneous counter value that decreases to zero at the end of the graph. Reports of instantaneous counters display the last value collected. Reports of averaged counters display the average of collected values.

In Log view, use the Time Window to change the end time on the graph to a more representative part of the curve. If you need to see more than just the end value in report form, export the graph to a spreadsheet.

Charts and reports of logged data sometimes collect different samples of the same data.

This sampling variance usually is less than 0.1, which is close to the resolution limit of the counters.

Averages of data for the Hit% counters on the Cache object are calculated differently in charts than in reports. Data for value bar in Chart view is calculated by averaging all changes during the test interval. The value displayed in Report view is the average of the difference between first and last counter values during the test interval.


I had an application running while I was logging data, but when I graph data from the log, the application doesn't appear in the Instances box.

Applications that are not active when the log starts don't appear in the Instances box until you adjust the Time Window interval, even if the interval displayed includes the start time.

Use the Time Window to advance the beginning of the measured interval to a point when the application was active. Select at least one counter for the application. Now, use the Time Window to expand the interval so you can see all logged data. The application will continue to be monitored and all data will be accurate.


My log stopped when I tried to chart a different log.

The Data From option applies to all views. When you switch to Chart view and change the data source from current activity to a log file, the log no longer can collect data about current activity.

You can start a second copy of Performance Monitor and chart from a closed log file. However, you cannot chart a log file while it is collecting data.


All values for my disks are zero, but I know they are active.

The counters for the Physical and Logical Disk objects don't work until you install the Disk Performance Statistics Driver in your I/O Manager disk stack.

Use the Diskperf utility to install the Disk Performance Statistics Driver, then restart the computer and try again. For information about Diskperf, see "Enabling the Disk Counters" in Chapter 6, or see Performance Monitor Help.


I have several disks, but values are only shown for the first disk in the set.

When you ran Diskperf, you used the standard option, diskperf -y, which places the statistics collector above the fault tolerant driver, FTDISK. The statistics collector cannot see the different physical instances of the disk.

Run Diskperf using the diskperf -ye option, then restart the computer. This places the statistics collector below the fault tolerant driver so it can see physical disks before they are combined into a volume set.


How do I figure out which line represents which item in the graph?

Graphs can get busy. Use the highlight feature to help you.

Press the backspace key to highlight the graph line or bar corresponding to the counter selected in the legend. As you scroll through the legend, the highlight moves to the corresponding line or bar in the graph.


Where is Performance Monitor? I started it, but cannot find it.

Performance Monitor starts in the same condition it was in when you closed it. If you closed it while it was minimized, it comes up the same way. If your taskbar is hidden, it's hard to find it.

Point to the taskbar area to make it reappear, then click the Performance Monitor icon on the taskbar to start it.


Performance Monitor won't let me set an alert for an instance of a counter even though it appears in the Instances box.

You can set an alert only on the first instance of an object with a given name. If you have multiple instances with the same name, all instances will appear in the Instances box for the counter, but only data collected from the first instance will trigger an alert.

This applies only to alerts. You can chart, report, and log multiple instances with the same name.


I set two alerts, each for different values of the same counter for the same instance. Although both thresholds were exceeded, Performance Monitor reported alerts on only one.

You cannot set more than one alert on a counter for the same instance of an object. Data collected for that instance is compared only to the alert that was set first.


Explain button is grayed out.

Explanatory text is not available when you are working with data from a log file.

To see the Explanatory text for a counter, open a second copy of Performance Monitor with the Data From field set to current activity.


Start Log button is grayed out.

At least one object must be selected for logging to enable the Start Log button.

Select at least one object to be logged, and try again.


%Disk Read Time and %Disk Write Time don't sum to %Disk Time

All disk counters include time in the queue. When the queue gets long, the read and write time both include that time and don't sum to 100.

%Disk Read Time:_Total and %Disk Write Time_Total sum to more than 100% because you have more than one instance of the physical or logical disk.

The percentage counters are limited, by definition to 100% and cannot display higher values. Use the Avg. Disk Read Queue Length, Avg. Disk Write Queue Length, and Avg. Disk Queue Length counters instead. These report on the same data as the %Disk Time counters, but display the values in decimals that can exceed 1.0.


Why is there a _Total instance on the ID counters? What would a total ID Thread counter show?

Items in the Instances box are the same for all counters of an object.

When an instance has no meaning, as in the case of _Total for IDs, a zero value is displayed for the counter.


Process: Pool Nonpaged Bytes:_Total doesn't equal Memory: Pool Nonpaged Bytes

The Memory: Pool Nonpaged Bytes value comes from an internal counter that counts each byte. The Process: Pool Nonpaged Bytes counters are estimates from the Object Manager. The Object Manager counts accesses, not space, so its counts include requests to duplicate object handles as well as space for the object.

Ignore the static value of the counters and, instead, monitor any changes in the values.

Unfortunately, all tools use the same counters, so Performance Monitor, Task Manager, Process Explode, Process Viewer, and Process Monitor are limited to the same resolution.


Where is the Processor Queue Length Counter?

It's a System object counter. There is just one processor queue for all processors.


Counter values for instances of an object are greater than those for the total.

The %Disk Time and %Processor Time counters are limited, by definition, to 100%. If you have multiple disks or processors, each could equal 100%, but the total counter cannot display the sum.

Monitor the physical instances separately. For disks, use the Avg. Disk Queue Length counters instead of the %Disk Time counters. These display the totals as decimal, not percentages, so they can exceed 1.0.

For processors, use the System: %Total Processor Time counter. This averages the active time of each processor over all processors.

Values during spikes in the data are not included in the totals. Data spikes sometimes appear when threads and processes stop and start. They are artifacts of monitoring, not valid data.

Add the Process ID and Thread ID counters to your chart and use the Time Window to limit the data displayed a single instance of the process or thread. For details, see "Monitoring Processes and Threads" in this chapter.