In early 2012 I wrote this short article describing the impact of registry cleaning on Windows XP performance. I never published it because I was primarily settling the question for my own satisfaction. Secondly, I shelved it when I started working on a longer article that provides more detail on the scenarios. I never finished that other article so now I'm publishing this shorter article because it will still be useful to the many Windows XP users.
Have you ever wondered whether registry cleaners do anything useful? Many people say that they do not. Two articles that give you a taste of the debate are Mike Bott's "Why I don't use registry cleaners" and Mark Russinovich's "Registry Junk: A Window's Fact of Life". It might seem that blog posts from 2005 are way out of date but Windows XP market share was only passed by Windows 7 in 2011 and even today Windows XP is number two on the desktop ahead of Windows Vista and 8, Apple OS X, and Linux.
There are two aspects of registry cleaning to be considered:
- removing unneeded registry entries
- the impact of registry cleaning on system performance
There is widespread support for the first aspect. But it's not so clear on the second aspect. Mark Russinovich — the current co-author of "Windows System Internals" and an acknowledged expert on Windows troubleshooting — is widely quoted in his response to the question "do you really think that Registry junk left by uninstalled programs could severely slow down the computer?":
No, even if the registry was massively bloated there would be little impact on the performance of anything other than exhaustive searches.
On Win2K Terminal Server systems, however, there is a limit on the total amount of Registry data that can be loaded and so large profile hives can limit the number of users that can be logged on simultaneously.
I haven't and never will implement a Registry cleaner since it's of little practical use on anything other than Win2K terminal servers and developing one that's both safe and effective requires a huge amount of application-specific knowledge.
10/7/2005 9:41:00 AM by Mark Russinovich
This issue intrigued me so six years later when I had spare week of time, I made the only New Year's Resolution I have ever kept. I decided to benchmark the performance of the Windows registry to see if he is right. In the end I ran over 580 tests on 98 different configurations of hardware and installed software. I tested both a well-used, you might say trashed, computer and two computers I configured from scratch. I used Windows XP because it related to those comments, it was the dominant operating system and the benefits of registry cleaners would be more obvious than on Windows 7 which is somewhat more sophisticated.
To cut a long story short, two months after I started, I had what I needed. So here is some of what I found.
YES, registry cleaners do make a difference but NO they do not normally make much difference. In fact the impact of registry cleaning was often less than the margin of error in my tests. It was consistent and measurable on my test systems but at an average around 1% it is close enough to zero. I found that Windows XP users have other options that will have a much greater impact on their Windows performance. These are obvious things like the amount of physical memory or the number and type of applications, services and drivers installed on your computer.
If you are in a hurry then go straight to the results
While I was testing I read Fred Langa's "Putting Registry-/system-cleanup apps to the test" where he found that system cleaners can provide a performance benefit for startup and shutdown times. He created a baseline system then installed the 20 most popular applications on CNET. He timed startup and shutdown and found that these activities now took from two to twenty times the base times. He then uninstalled all the applications and used three system cleanup utilities to attempt to return the system to something close to it's original state and performance. Depending upon the system cleaner used, he succeeded in getting Windows startup and shutdown performance close to or better than his original baseline.
It is a logical no-brainer that startup & shutdown, logon & logoff, and backup & restore will perform better with smaller registry files. The registry hives will load more quickly if there is less registry data and the in-memory hives will be smaller too. I decided to cover some of the same ground and also looked at startup and shutdown times, 430 times. Those results largely supported Langa's and I will publish some details in a later article.
In my own tests I was only focused on the interactive performance of the registry because that is what affects programs when you run them. I wanted to create the same sort of situation that users constantly find themselves in where their system slows down dramatically. So the main differences between my tests and Langa's are as follows:
- A broader cross-section of applications was installed using the top picks in the security, office, image and multimedia categories at this site.
- The registry performance was benchmarked using Bitsum Regbench, an alpha version. This utility does create additional load on the system because it loads keys into memory. Normally, I wouldn't want that but but this time I wanted to simulate an overloaded system where registry cleaning would have the opportunity to produce more obvious benefits.
- Registry cleaning was tested by itself without any other system cleaning or registry optimization.
- I also separately tested optimization of the registry hive files rather than combining it with registry cleaning.
- I didn't use virtualization because it introduces another layer of complexity and variables that could confound small differences in performance. Instead I used dedicated computers where I physically added or removed memory.
In my preparatory testing, I found that the same issues that affect your applications also affect interaction with the WIndows registry. As I expected this suggests that the opportunities for improvement on your system will depend upon your specific configuration:
- The available physical memory.
The background load from installed applications, services and device drivers that consume three limited resources:
- CPU processing time
- Available memory
- Kernel-mode processing of the registry
Got enough physical memory?
As I said above, my conclusion is that Windows registry cleaners can produce a small and measurable performance improvement. I got a 3.9% improvement on one hive on one test but the average was only 1.3% even when I used several registry cleaners. Startup times improved by a similar proportion.
To put this into perspective, I got thirty times that improvement simply by uninstalling one application, PC Tools Threatfire. It reduced registry access performance by 37% because it monitors the registry. Uninstalling another application, SpeedBit sbupdate, and its companion gained me another 20% because of their registry monitoring or polling as it is called. I refer to Mark Russinovich who explains why registry polling is bad.
|Table 1 - Registry performance improvements with enough physical memory.|
|Windows XP 32-bit 768 MB|
|Optimize the registry hive files using NTREGOPT||none|
|Clean the registry with CCleaner||0.2%|
|Clean the system, including the registry, with CCleaner||1.1%|
|Clean the registry with several registry cleaners||1.3%|
|Temporarily stop unneeded services||3.3%|
|Turn off real-time anti-virus||4.7%|
|Uninstall worst application||37%|
|Uninstall three worst applications||57%|
Not enough physical memory?
I then considered what happens if I don't have enough memory in my computer. To make this more likely I increased the number of installed applications from twenty to seventy and found that I need 768MB to get a usable system because of all the services and start programs they installed.
In a scenario with only 20 programs installed 256 MB was usable. Note that this is four times the Windows XP minimum system requirement yet the performance using the registry dropped by 21%. Likewise, startup times doubled, i.e. increased by 100%, because startup is more dependent upon the installed memory. If PC Tools Threatfire and the other two applications had still been running then the system would have crawled very close to a halt.
This happened because without enough physical memory Windows becomes more dependent upon virtual memory. This enhances the benefit of system cleaning including registry cleaning because every bit of memory released can be used to boost system performance.
|Table 2 - Registry performance improvements with constrained physical memory|
|Windows XP 32-bit 256 MB|
|Install enough physical memory, 512 MB or more||21%|
|Clean the system, including the registry, with CCleaner||23%|
Related Products and Links
You might want to check out these articles before selecting or using a registry cleaner:
- What Everybody Should Know About the Windows Registry
- Learn How to Use the Windows Registry Editor (Regedit) in One Easy Lesson
- How to Backup the Windows Registry
- Best Free PC Cleaner
- Best Free Registry Cleaner
Do we really need Windows registry cleaners?
The answer for users with enough physical memory is NO. But if you are low on physical memory and continually having Windows paging virtual memory to disk then YES you should consider trying them. If you are $ constrained then it could help save you the price of a memory upgrade.
Please rate this article: