Affiliate Disclosure: By buying the products we recommend, you help keep the lights on at MakeUseOf. Read more.
Do you feel like your PC is sluggish and unresponsive? It could be due to any number of factors — too many apps running at once, old or weak hardware, hidden malware on your system, etc. — and the hard part is pinpointing which ones apply to you.
The good news is that Windows has a ton of useful diagnostic tools and one of them is something called the Performance Monitor (not to be confused with the Reliability Monitor). Using this can really cut down your troubleshooting times.
Here’s a quick but complete introduction that includes why you should use it and how to get started.
How to Launch the Performance Monitor
In Windows 10, you’ll find no fewer than five ways to access the Performance Monitor. I personally only use the first method, but feel free to use whichever one is most familiar and comfortable to you.
- Via Windows Search: Open the Start Menu, search for performance monitor, and launch the Performance Monitor (which should be labeled as a Desktop App).
- Via Administrative Tools: Open the Control Panel and navigate to System and Security > Administrative Tools, then double-click the Performance Monitor shortcut.
- Via the Run Prompt: Use the Windows key + R shortcut to open the Run Prompt (one of many Windows Key shortcuts to learn), then type perfmon and click OK.
- Via the Command Prompt: Use the Windows key + X shortcut to open the Power User Menu (one of many Windows superpowers to learn), then click on Command Prompt. In the command line, type in perfmon and hit Enter.
- Via Windows PowerShell: Launch PowerShell using your method of choice, then type perfmon and hit Enter. This method is most useful if you’re already a regular PowerShell user.
Once the Performance Monitor is running, don’t be intimidated by its not-so-friendly interface. Here’s our step-by-step look at what this tool can do that’ll ease you into it all.
1. Monitoring All Kinds of Data
By default, the Performance Monitor starts off with one data measurement: Processor Time. This shows what percentage of your CPU’s maximum power is being used on a moment-to-moment basis, or in other words, how hard it’s working at any given moment.
But you can monitor hundreds of other stats on your system if you want to. The Performance Monitor allows you to add and remove “counters” to the board (a counter is just another word for “thing you want to monitor”). This flexibility is what makes this tool so useful.
So even though you can use the Task Manager for its performance overview, this is a much better tool to use when you’re specifically trying to diagnose a particular problem.
Feeling like you don’t get it yet? That’s okay. Let’s explore some of the different counters that you can add. This should help you get a better idea of what counters are and why they’re helpful:
- Memory | % Committed Bytes in Use: Tracks what percentage of your RAM is currently committed (“in use”). This should fluctuate as apps are opened and closed, but if it steadily increases, it could indicate a memory leak.
- Network Interface | Bytes Total/sec: Tracks how many bytes are sent and received over a particular network interface (such as Wi-Fi or Ethernet). If this ever gets above 70% of an interface’s bandwidth, you should consider upgrading.
- Paging File | % Usage: Tracks how much of your system’s paging file is being used. If this is consistently high, you should consider increasing your physical RAM or at least increase the size of your paging file.
- Physical Disk | % Disk Time: Tracks how much of the hard drive’s time is spent handling read and/or write requests. If this is consistently high, you should consider upgrading to a solid state drive.
- Physical Disk | % Disk Read Time: Same as above except only for read requests.
- Physical Disk | % Disk Write Time: Same as above except only for write requests.
- Processor | % Interrupt Time: Tracks how much time is spent by your CPU handling hardware interrupts. If this is consistently above 10-20%, it could indicate a potential issue in one of your hardware components.
- Thread | % Processor Time: Tracks how much of your processor’s capabilities are being used by an individual process thread (an app could have multiple threads). Only useful if you can identify which thread to monitor.
Note that counters are conveniently categorized by the Performance Monitor, which is why each of the counters above has a prefix. These categories come in handy when you want to set up Data Collector Sets (more on this below).
You can also add an entire category of counters to the monitor instead of picking single counters at a time.
Pro Tip: You can create your own performance counters using languages like Visual Basic, C#, F#, as well as the PowerShell. Instructions for this are beyond the scope of this article.
2. Creating Data Collector Sets
Let’s say you want to monitor your system’s memory usage every week. Isn’t it such a hassle to open the Performance Monitor and add each of the counters you need every time?
What if you want to monitor memory usage, data drive usage, network usage, and Windows Search Indexer performance? Isn’t it an even bigger hassle to swap out counters one by one by hand?
That’s where Data Collector Sets come into play.
A Data Collector Set is basically a group of different performance counters that can be saved so that you have quick access when you want to monitor a specific aspect of your system. They can also be used as templates when creating new Data Collector Sets.
Windows 10 comes with two predefined sets. You can find these in the sidebar under Data Collector Sets > System.
- System Diagnostics: A detailed set of counters that track and log all kinds of deep system information. It runs for 60 seconds before automatically shutting itself off. It can let you know if, for example, some of your hardware might die soon.
- System Performance: A detailed set of counters that track information that’s pertinent to processors, hard disks, memory, network performance, and kernel tracing. It runs for 60 seconds before automatically shutting itself off.
What does it mean when a Data Collector Set “runs for 60 seconds”? That’s the great thing about using sets: they run in the background and only collect information while running. You can schedule them to start or stop according to different conditions (more on this below).
So let’s walk through the process of creating your own custom Data Collector Set.
In the sidebar, right-click on Data Collector Sets > User Defined and select New > Data Collector Set.
Give it a name, such as “Network Performance” or “Memory Leaks”, and make sure you select Create manually (Advanced) to set it up from scratch. Click Next.
When asked about what kind of data you want to include, the simplest would be to select only Create data logs > Performance counter. Click Next.
Now you get to determine which performance counters are going to be used in this set. Click Add… and select the ones you want and however many you want.
Important: Before clicking Next, make sure you set the Sample Interval to 1 second. This determines how frequently the Performance Monitor will take a “sample” of your counters. If the interval is too long, you could miss important details between samples.
The data that’s collected by the set needs to be stored somewhere so you can analyze it at your convenience. The default location is fine, or you can move it wherever you want. Some even put it right on the Desktop.
Lastly, you can choose under which user this set will run when it runs. By default it runs on the system that’s currently active, but you can click Change and set it to a specific user regardless.
Select Save and close and click Finish.
And there you have it! Your first Data Collector Set is done. Right-click on it in the sidebar and select Start to start it or Stop to stop it. At this point, starting it will make it run forever (until the system shuts down).
Setting a Run Duration
Here’s how to set a specific duration on it so that it only runs for, say, 60 seconds or 1 hour. First, right-click on your Data Collector Set and select Properties.
Navigate to the Stop Condition tab. Here you can set an Overall Duration for the set so that it automatically stops when the duration is met. A common duration is 60 seconds.
Scheduling Automatic Runs
If you want to automatically monitor your system in the background at regular intervals, you can let the Performance Monitor handle that for you. Right-click on your set and select Properties.
Navigate to the Schedule tab and you’ll notice that you can set up multiple conditional triggers for when your set actually runs. Click Add to get started with your first one.
Leave the beginning date as it is and ignore the expiration date (unless you want this schedule to only apply during a certain time period). Pick which days should run the set and at what time it should run.
If you want to run at different times depending on the day, that’s when multiple schedules come in handy. So maybe Schedule 1 runs the set at 3:30 AM on Saturdays while Schedule 2 runs the set at 9:00 AM on Wednesdays. It’s a bit of a hassle, but it works.
3. Viewing Your Data for Analysis
Once a Data Collector Set has finished running, you can load up its log file into the Performance Monitor, so you can visualize all of the information it tracked.
Click on Performance Monitor in the sidebar to view the actual monitor, then click View Log Data in the toolbar.
Under the Source tab, select Log files as the data source, then click Add and browse to the location where you saved your set’s data and select the file (it should be in .BLG format).
Next, navigate to the Data tab. With your log file loaded, this is where you can pick and choose which data points you want to view in the monitor. Click Add and you’ll be able to choose from counters that were tracked in your log data.
Click Apply, then click OK.
The 5 Different Data Viewing Formats
By default monitor data is shown as lines as can be seen in earlier screenshots in this article, but you can also view the data in other ways. The screenshots below show the same data in all five ways.
Others Ways to Boost PC Performance
At the end of the day, the Performance Monitor is just that: a monitor. It’s only good for identifying issues, not fixing them — but as far as monitoring goes, nothing is better. It’s a must-use tool for Windows power users.
Note also that the Performance Monitor isn’t a panacea. Your PC’s slowdown could be caused by a number of other issues as well. If you’re on Windows 10, there are several operating system specific tweaks and tips that you can use to boost speeds from start up to shut down.
If your system is still slow, you may want to benchmark your hardware. Hardware bottlenecks are one of the biggest reasons for a slow PC.
Have you used the Performance Monitor before? If not, will you start now? Got any other tips? Let us know in a comment down below!