After installing and removing a lot of apps and updates, you may notice that your Registry has become quite bloated. Your Registry files may have become quite large. Large Registry files can cause slowdowns and performance issues in Windows 10. Here is how you can compress them.
Registry consists of several files, which form the registry database. You can see which files represent your registry database if you open the following Registry key:
Here you can see the list of files on your disk drive where the Registry files are stored. The data inside them, has a hierarchical structure. Registry Editor shows it as a tree view: there are "root" (parent) keys, and several sub-keys (child objects). The root keys shown in Regedit for the most part, represent the specific file, or in other words, the registry files correspond to keys' hierarchy. However, there are also some virtual root keys shown in Regedit which exist for backward compatibility. For example, HKEY_CURRENT_CONFIG is a virtual view, and HKEY_CLASSES_ROOT is also a virtual view of the current user's key + system keys.
Note that some parts of the Registry database are never shown in Registry editor. For example, you will never see SAM (Security Accounts Manager) inside Regedit.
You can compress the Registry in Windows 10 without using third party software. However, you need to have a bootable media with Windows 10. It can be a USB stick or a UEFI bootable flash drive.
- Insert your bootable media and boot your PC from USB. (You may need to press some keys or change BIOS options to boot from USB.)
- When the "Windows Setup" screen appears, press Shift + F10 keys together.
This will open the command prompt.
- Type regedit and press Enter. Do not close the command prompt window.
- In Regedit, load the large Registry file (hive) from the target file system (e.g. your C: drive where the Windows folder is).
Select HKEY_LOCAL_MACHINE on the left and select File - Load hive... in the menu.
When prompted for a name, use any name to serve as the mount point under the HKLM branch. e.g. if you enter Bloated, the selected Registry file will be mounted under HKLM\Bloated.
Please refer to the following article to learn more about hive loading: How to access the Registry of another user or another OS
- Once the huge file has been loaded, export it as a "Registry Hive" file with a unique name, e.g. C:\windows\system32\config\compressedhive, where the folder C:\windows is your Windows directory on your computer's hard drive. Select the loaded hive on the left and select File - Export as.
- Tip: You can use the dir command at the command prompt to verify the old and new sizes of the registry files.
- Now, unload the file from Regedit by selecting the 'Bloated' key and selecting Unload hive from File menu of Registry Editor. If you get an "Access denied" error here, close the Registry editor. Then reopen the Registry editor and try again.
- Rename the original Registry file, for example, you can use the following command:
ren d:\windows\system32\config\software software.my
- Place the new file you exported instead of the old one.
ren d:\windows\system32\config\compressedhive software
- Close the command prompt and the setup program. This will restart your computer.
That's it. This way, you can compress all your Registry files. This trick should work in Windows 8 and Windows 7 too.