Blog Post

Ask The Performance Team
3 MIN READ

Using Resource Monitor to Troubleshoot Windows Performance Issues Part 1

CraigMarcho's avatar
CraigMarcho
Icon for Microsoft rankMicrosoft
Mar 16, 2019
First published on TECHNET on Feb 01, 2012

Hello AskPerf! Leonard with the Performance Team here to discuss the Resource Monitor tool and we can use it to troubleshoot Windows Performance issues. In this blog, (the first of 2 on the subject of underutilized tools) I will discuss Resource Monitor which is available on both client and server versions of Windows starting with Windows Vista. Resource Monitor can be launched from the advanced tools tab in “Performance Information and Tools”, which is located in Control Panel. It can also be launched directly by running Resmon.exe .

Resource Monitor is a method of viewing Perfmon data. In fact, Resource Monitor is composed of Perfmon data combined with Windows Event Tracing data. You can view this tracing session by launching Perfmon, expanding Data Collector Sets, then select Event Tracing Sessions. There you will see a session called WDC.GUID (the GUID will vary). You can confirm this provides the data for Resource Monitor by observing that this trace is only running when Resource Monitor is running. Also, when it is running, you can view the channels that provide the data. Launching Resource Monitor will also launch a background process of Perfmon to act as a data source.

Resmon will show the window below on first launch. Each new launch will show the view as configured when Resmon was closed.

There are 5 tabs to choose from. The overview tab gives a summary of the other ones. The main tabs are CPU, Memory, Disk and Networking. In each of the tabs the windows on the left can be collapsed, expanded and resized. It is also possible to filter each view by the process, for example you are only interested in seeing the activity for Explorer, check the box for that process and the bottom window will only show the activity for that process. With no processes selected, the bottom windows will show activity for all active processes. The graphs on the right can be resized between small, medium and large, but I would recommend keeping them at the default large setting. The numeric scale for the graphs will change as activity changes.

My Favorite features

The memory tab has one unique graph that provides a quick view of what physical memory is being used for.

It is easy to see the total physical memory and what it is being actively used along with showing what is hardware reserved. Hardware Reserved represents physical memory addresses that have been reserved by hardware (generally busses like PCI or video cards) and is not available for Windows to use. It is usually small on x64 systems (except servers that do memory mirroring) but can be several 100MB up to 1GB on x32 systems. This means a 4GB x86 system can have only 3 GB of accessible memory.

The network tab is useful in that it not only shows the process that is generating activity, but the IP address it is connected to.

I recently had an issue where the system process was showing high CPU activity on a Windows 2008 Server. Two of the things that run in system are the SMB and SMB2 processes. I suspected that the high CPU was due to network activity and was a load based problem and not a problem with a process. To confirm that was the cause, I used Process Explorer to determine the threads that were running in the system process. I confirmed that there were 15+ SMB and SMB2 threads that were always the highest consumer of CPU. I then ran Resmon and looked at all of the IP addresses that were associated with system. We identified a management server that was receiving a lot of data. Based on that information, we were able to narrow down the problem to the request coming from that server. While the problem could have been identified using different tools, Resmon provided the most efficient way to identify the problem.

I hope this overview of Resource Monitor will make it one of the tools you use the next time you need to look at performance data or activity on the system.

Additional Resource

-Leonard Severt

Updated Nov 09, 2023
Version 2.0

3 Comments

  • Interesting article. I like the way it describes what anyone should be able to glean from the column headers. Seeing as this app hasn't changed in any meaningful way over the last decade, I feel a response is fair.

     

    Windows is getting worse again. I made a mistake in buying my son a Windows installed laptop. The OS is nothing but dark patterns trying to sell what no one needs and doing so by getting in my way with pop-ups and pop-outs and unintuitive behavior that performs just as poorly in quantitative terms. 

     

    I landed here after opening perform to figure out why a my CPU is melting down when it should be relatively idle. Probably indexing the world so my next search can show me a Bing result I didn't want in a browser I chose not to use by default. Unfortunately, perfmon itself eats ~35% of my cycles just existing, like Heisenberg's cat leaning on the scale. Even still, my pegged CPU shouldn't be so if I were to trust the sum of the column(s) perfmon shows me. So ok, whatever.

    I look at memory, the favorite tool  bar graphs of anyone so easily impressed a bar graph seems novel. Someone decided the fields should be formatted in KB. Maybe they haven't kept up with the state of hardware over the previous 25 years. Not only is it annoying in and of itself, but your linear plot uses MB, as it should. 

     

    Well that's stupid, but I thought certainly I can change the format easily enough. So.... well, no, I don't see any settings to fiddle with. A tool supposedly designed for technical analysis by technical people (LOL) has no settings? "They must exist somewhere" I thought. Why it wouldn't be near column selection I (can say,  honestly), but whatever, read the manual. 

    Except there's no manual. Of course, there is a 'Help' menu item, but all it contains is an about window. The geniuses stuck on the perfmon team are there for a reason. So that's how I landed here and why I'm wasting my time with a rant for deaf and dumb ears. 

     

    Windows is hot trash. Again. I knew going Lenovo was the right thing.  How many dollars have been wasted on this toy implementation of `top`? Garbage. 

  • ahmad2964's avatar
    ahmad2964
    Copper Contributor
    There were problems downloading some updates, but we'll try again later. If you keep seeing this, try searching the web or contacting support for help. This error code might help: (0x80070005)