Last week, while researching online, I had to open a number of tabs on my Chrome browser. Following links, I had to open up even more tabs and finally the count reached around fifty or so, and the system started to slow down. I found it extremely difficult to browse further. I wanted to investigate which processes in the system were slowing the system down, and the steps I followed might be useful to you too, if you are also finding your computer rather slow. Here they are.
You can use a number of tools for monitoring the programs and resources on your computer. Latest versions of Microsoft Windows come with one or two of them, such as Resource Monitor (resmon.exe) and the widely used Task Manager. But the tool that I would recommend is known as Process Explorer.
It was developed by Microsoft subsidiary, Sysinternals. It is available as a free download from Microsoft Technet website. Get the ZIP file on your system.
Process Explorer is a standalone utility: something that you don’t need to install in the system in order to run. Just open up the program, and it will start displaying the most resource-thirsty applications on your computer.
First thing you need to do after opening up Process Explorer is sorting the list of running services and applications based on the resource used. At the top of Process Explorer, you will see ‘CPU’, ‘Private Bytes’, ‘Working Set’, etc. Click on Working Set in order to sort the list of programs based on their active memory usage. It will list the most memory-thirsty application at the very top.
I also took a screenshot of my Task Manager, and check out the comparison here.
See Task Manager doesn’t recognize the service ‘nessusd.exe’ listed on top of Process Explorer. Task Manager doesn’t recognize this because ‘nessusd.exe’ is a service, not a process (running application). For your information, ‘nessusd.exe’ is Tenable Nessus network vulnerability scanner that I was running. There is a difference between services and running applications. Process Explorer lists both of them, while Task Manager does not list running services.
Now, I have identified the service taking up maximum memory in my system. I need to shut that down. You can try to shut it down using PE itself; in some cases PE doesn’t allow it, and you may need to go into Services console to do that.
Within Windows, you have a specific console known as ‘Services’ that can shut down any service. You can always restart the service when needed; also, the service will be started anyway when you restart the computer.
This doesn’t affect your system, although you should not stop any system services. If you stop any important system services, you may need to restart the service or the computer itself to get it working normal again.[It won’t cause any permanent damage to your system.]
Go to Start menu and type ‘Services.msc’ and it will open the Services window. Here is my screenshot identifying nessusd.exe, which I will stop now.
Simply right-click on the entry and click ‘Stop’. You can also look through the started services and stop any that you don’t need. The window will give you a brief description and properties of the service which will help you decide.
Come back to Process Explorer. We are going to find the next most resource-thirsty application now. Check this out, the most resource-thirsty application now is Chrome. This is not a service, but an application (otherwise known as process, as identified within Task Manager as well).
As you can see on my system, there are several instances of the Chrome process. This is due to the basic design of Chrome program. Unlike other browsers, it opens its tabs as separate processes. Sometimes, multiple tabs are grouped into the same Chrome process. Sometimes, various plugins and add-ons you use may open up multiple Chrome processes.
You can look through the resource list and if you want, you can simply terminate one or two Chrome processes. However, note that when you do this, all the data associated with that tab will be lost, so you should do this only if absolutely necessary. Let me demonstrate.
I am going to select a Chrome process and terminate it. I am going to ‘kill’ the process (short-cut button: delete).
Process Explorer has immediately freed up the memory space occupied by that process, in this case around 100 MB. As soon as I did it, about four tabs within my Chrome window went dead. The
Chrome main window is identified by the '-' sign in the screenshot above. If I kill that process, the entire application will be terminated, not a few tabs.
Go to this article about Chrome error messages to know more about this.
But that has freed up quite a bit of memory on my system. And I could immediately see the difference in speed and responsiveness.
[Update]
Here is a way to identify Chrome's tabs and plugins that take up maximum amount of memory. Within the Chrome address bar, type "about:memory-redirect" and it will show you all the tabs and extensions of your Chrome browser that are currently running. It will show individual processor and memory usage and will give you a way to decide which tab to terminate. In order to terminate a particular tab or extension, you have to go to Chrome Task Manager (under menu->Tools).
The memory-redirect window and Chrome task manager give you the process ID (PID) which can identify the specific process under Process Explorer. That is another way to gather information about individual processes.
Another way to speed up the system is by reducing the priority of a process and increasing priority of the one you are using. Here is the procedure.
In the Process Explorer context menu for the particular process, you have the option, ‘Set Priority’. Click it and select low priority for unimportant processes and high priority for important applications.
This should be done with care though. It could create instabilities in applications and you could potentially lose some data. Do this if you have a lot of RAM available. Also, you should not attempt this without saving any important information you have on your applications.
There is a tiny hack available in Chrome with which you can free up a little amount of memory. Although even the developers at Google are not quite sure as to whether it works effectively, let me detail the hack to you. Chrome browser has a command-line switch called '--purge-memory-button'. With this, you can add a button to the Chrome Task Manager that frees up unused amount of memory.
In order to do that, first of all edit the Chrome shortcut you are using to open it up. Go to the shortcut properties, and after the path of the Chrome installation, found as something like "C:\Programs\GoogleChrome\chrome.exe", add the memory purge switch. So, your target path should look like this: "C:\Programs\GoogleChrome\chrome.exe --purge-memory-button" and then press OK.
Now open the browser with that shortcut and then go to Task Manager. You should be able to find a 'Purge memory' button on it. Click on it if you feel the browser is slowing down.
This can help only occasionally though. I have found that closing unnecessary tabs works better.
If you carefully use Process Explorer in terminating unnecessary applications and services, you should be able to free up a lot of resources in much less time.
Also, there is a feature known as ‘Suspend’ in the context menu that can temporarily suspend the execution of an application. If you do this, the application will not respond to any of your actions until you resume the application. This can be used to free up CPU time to use with other applications. It will not free up system memory used by the application, though. You should be careful in following these tips as a wrong action may make the system unstable, and it may reboot to get back into proper status.
The Tool
You can use a number of tools for monitoring the programs and resources on your computer. Latest versions of Microsoft Windows come with one or two of them, such as Resource Monitor (resmon.exe) and the widely used Task Manager. But the tool that I would recommend is known as Process Explorer.
It was developed by Microsoft subsidiary, Sysinternals. It is available as a free download from Microsoft Technet website. Get the ZIP file on your system.
Process Explorer is a standalone utility: something that you don’t need to install in the system in order to run. Just open up the program, and it will start displaying the most resource-thirsty applications on your computer.
1. Sort the List
First thing you need to do after opening up Process Explorer is sorting the list of running services and applications based on the resource used. At the top of Process Explorer, you will see ‘CPU’, ‘Private Bytes’, ‘Working Set’, etc. Click on Working Set in order to sort the list of programs based on their active memory usage. It will list the most memory-thirsty application at the very top.
I also took a screenshot of my Task Manager, and check out the comparison here.
See Task Manager doesn’t recognize the service ‘nessusd.exe’ listed on top of Process Explorer. Task Manager doesn’t recognize this because ‘nessusd.exe’ is a service, not a process (running application). For your information, ‘nessusd.exe’ is Tenable Nessus network vulnerability scanner that I was running. There is a difference between services and running applications. Process Explorer lists both of them, while Task Manager does not list running services.
Now, I have identified the service taking up maximum memory in my system. I need to shut that down. You can try to shut it down using PE itself; in some cases PE doesn’t allow it, and you may need to go into Services console to do that.
2. Shutting Down a Service
Within Windows, you have a specific console known as ‘Services’ that can shut down any service. You can always restart the service when needed; also, the service will be started anyway when you restart the computer.
This doesn’t affect your system, although you should not stop any system services. If you stop any important system services, you may need to restart the service or the computer itself to get it working normal again.[It won’t cause any permanent damage to your system.]
Go to Start menu and type ‘Services.msc’ and it will open the Services window. Here is my screenshot identifying nessusd.exe, which I will stop now.
Simply right-click on the entry and click ‘Stop’. You can also look through the started services and stop any that you don’t need. The window will give you a brief description and properties of the service which will help you decide.
3. Gathering Information About Running Applications
Come back to Process Explorer. We are going to find the next most resource-thirsty application now. Check this out, the most resource-thirsty application now is Chrome. This is not a service, but an application (otherwise known as process, as identified within Task Manager as well).
As you can see on my system, there are several instances of the Chrome process. This is due to the basic design of Chrome program. Unlike other browsers, it opens its tabs as separate processes. Sometimes, multiple tabs are grouped into the same Chrome process. Sometimes, various plugins and add-ons you use may open up multiple Chrome processes.
You can look through the resource list and if you want, you can simply terminate one or two Chrome processes. However, note that when you do this, all the data associated with that tab will be lost, so you should do this only if absolutely necessary. Let me demonstrate.
I am going to select a Chrome process and terminate it. I am going to ‘kill’ the process (short-cut button: delete).
Process Explorer has immediately freed up the memory space occupied by that process, in this case around 100 MB. As soon as I did it, about four tabs within my Chrome window went dead. The
Chrome main window is identified by the '-' sign in the screenshot above. If I kill that process, the entire application will be terminated, not a few tabs.
Go to this article about Chrome error messages to know more about this.
But that has freed up quite a bit of memory on my system. And I could immediately see the difference in speed and responsiveness.
[Update]
Here is a way to identify Chrome's tabs and plugins that take up maximum amount of memory. Within the Chrome address bar, type "about:memory-redirect" and it will show you all the tabs and extensions of your Chrome browser that are currently running. It will show individual processor and memory usage and will give you a way to decide which tab to terminate. In order to terminate a particular tab or extension, you have to go to Chrome Task Manager (under menu->Tools).
The memory-redirect window and Chrome task manager give you the process ID (PID) which can identify the specific process under Process Explorer. That is another way to gather information about individual processes.
Setting Priorities
Another way to speed up the system is by reducing the priority of a process and increasing priority of the one you are using. Here is the procedure.
In the Process Explorer context menu for the particular process, you have the option, ‘Set Priority’. Click it and select low priority for unimportant processes and high priority for important applications.
This should be done with care though. It could create instabilities in applications and you could potentially lose some data. Do this if you have a lot of RAM available. Also, you should not attempt this without saving any important information you have on your applications.
Purging Memory in Chrome
There is a tiny hack available in Chrome with which you can free up a little amount of memory. Although even the developers at Google are not quite sure as to whether it works effectively, let me detail the hack to you. Chrome browser has a command-line switch called '--purge-memory-button'. With this, you can add a button to the Chrome Task Manager that frees up unused amount of memory.
In order to do that, first of all edit the Chrome shortcut you are using to open it up. Go to the shortcut properties, and after the path of the Chrome installation, found as something like "C:\Programs\GoogleChrome\chrome.exe", add the memory purge switch. So, your target path should look like this: "C:\Programs\GoogleChrome\chrome.exe --purge-memory-button" and then press OK.
Now open the browser with that shortcut and then go to Task Manager. You should be able to find a 'Purge memory' button on it. Click on it if you feel the browser is slowing down.
This can help only occasionally though. I have found that closing unnecessary tabs works better.
Conclusion
If you carefully use Process Explorer in terminating unnecessary applications and services, you should be able to free up a lot of resources in much less time.
Also, there is a feature known as ‘Suspend’ in the context menu that can temporarily suspend the execution of an application. If you do this, the application will not respond to any of your actions until you resume the application. This can be used to free up CPU time to use with other applications. It will not free up system memory used by the application, though. You should be careful in following these tips as a wrong action may make the system unstable, and it may reboot to get back into proper status.