In the previous article in this series, I explained why I believe that performance monitoring is becoming more important now than it ever has been before. I also showed you a quick trick for getting an idea of how your system’s resources are currently being used. In this article, I want to continue the discussion by showing you some more techniques for monitoring your system’s performance. One of my major goals in writing this article though, is to keep things simple. There are countless articles on the Internet (including some that I have written) that address all of the various complexities associated with using the Performance Monitor. I think that although these types of articles certainly have their place, they tend to scare a lot of administrators away from performance monitoring. Although performance monitoring can be very complicated, it doesn’t have to be. Therefore, my goal is to help you to understand what is going on with your system, but to do so when a way that you can understand regardless of your level of experience.
In the previous article, I showed you how you could use a screen similar to the one shown in Figure A to see how hard a CPU is working, and what processes are consuming the most CPU time. Although that technique works well in a pinch, it can be a little bit misleading.
Figure A The overview screen works well in a pinch, but it can be misleading.
One reason why I say that the screen can be misleading is because the CPU chart shows the average amount of CPU resources that are being consumed. While knowing an average is helpful, it is important to remember that the server that I captured this screen shot from actually contains four processors. Some of these processors are probably working harder than others. Looking at a quick summary chart does not convey a sense of how the system’s processors are being used.
If you want to get a little bit more detail, then click on the console’s Performance Monitor container. When you do, you’ll be taken to a screen that allows you to add and remove counters. Counters are mechanisms that correspond to a single aspect of the system’s overall performance. One of the things that makes performance monitoring so tricky is that there are thousands of different counters, and you have to understand which ones are the most important to monitor in a given situation, and how to interpret the numbers that are provided by the counter.
If you want to see how hard the processor is really working, click the plus sign icon to add some performance monitor counters to the graph. If you expand the Processor object, you’ll find a counter named %Processor Time. This is the counter that shows you what percentage of its total capacity the processor is working at. If you look at Figure B, you can see that you have the option of looking at the sum total of all of the processors in the system, or at a specific processor. Since we want to see what the processor is really doing, and each of these options to the graph, and click OK.
Figure B The Performance Monitor offers a separate instance for each counter.
When you go back to the main Performance Monitor screen, you will see that a separate counter has been added to the graph for each individual processor instance, as shown in Figure C. The red line represents the sum total of all processor utilization. One thing that you will probably notice is that although I have added each processor instance to the graph, it’s a little bit hard to see what is really going on, because the current processor utilization is so low. One of the ways that you can correct this problem is to change the scale of the graph.
Figure C Each processor instance has been plotted on the graph.
To do so, just select all of your counters, and right click on them, then choose the Scale Selected Counters command from the shortcut menu. When you do, you will see the data on the graph become much easier to read, as shown in Figure D.
Figure D Scaling the counters makes them easier to read.
Remember when I said that the sum total of the processor utilization was misleading? Well, take a look at the figure above. You can see some big spikes on some of the system’s processors, but those spikes are not reflected in the overall CPU utilization, because the other processors are running at idle.
In this article, I have shown you how to use instances and scales. In the next article in this series, I will show you how to use something that is new to Windows Server 2008 called Data Collector Sets.
Got a question? Post it on our Windows Server 2008 forums!