ED#152 : NVIDIA Control Panel Memory Leak Problem
If you are using an NVIDIA graphics card, you could be affected by a memory leak from a component of the NVIDIA Control Panel that is installed with every NVIDIA graphics driver. The component is NVIDIA Settings (nvtray.exe), which loads and controls the tray icon for the NVIDIA Control Panel utility.
Please note that it doesn't affect every user, but if you are affected, there doesn't seem to be an upper limit of how much memory is leaked. People have reported it taking up as much as 2 GB of memory! We have personally seen it take up anywhere from 300 MB to over 500 MB of memory, but that is still an astounding amount of memory for a utility that uses as little as 2.3 MB of memory.
In this article, we will show you how to check if nvtray.exe is leaking memory, and how to disable it if it leaks memory. Even if it just leaks a few hundred MB of memory, that is still wasted memory that could be put to better use by other software or the operating system's disk cache.
What Is NVIDIA Settings (nvtray.exe)?
NVIDIA Settings (nvtray.exe) is a component of the NVIDIA Control Panel that stays in the Windows tray, which is also known as the Notification Area. It does a couple of things :
The NVIDIA Settings tray icon is a shortcut that allows you to quickly access the NVIDIA Control Panel, without going through Start -> Control Panel -> NVIDIA Control Panel.
The NVIDIA Settings tray icon controls the NVIDIA Update automatic update functionality. Right clicking on the tray icon allows you to change and access the NVIDIA Update settings.
The tray icon also serves to notify you whenever there is a driver update, if NVIDIA Update is enabled.
So it is certainly useful, but is it useful enough to waste a few hundred megabytes or even a gigabyte or two of memory? We will leave that to you to judge.
How Do I Check How Much Memory It Uses?
You will need to launch the Windows Task Manager to check how much memory nvtray.exe is using. There are four ways to launch it :
Right click on the taskbar (that's the bar right at the bottom) and select Start Task Manager.
Click on Start and in the Search box, type taskmgr.exe and then click on it when it appears.
- Press Ctrl-Alt-Delete and when the blue screen appears, select Start Task Manager (the last option) on the menu.
Once the Windows Task Manager pops up, click on the Processes tab. This lists the active processes and the amount of memory they are using. Click on the Memory - Private Working Set column title. This rearranges the processes according to how much dedicated memory a process uses. The private working set memory used by that process cannot be shared by other processes, so it's a more accurate way to determine how much memory is really being used by a process.
After you rearrange the processes according to the Private Working Set, scroll down until you see nvtray.exe. The amount of memory used varies from system to system. In our desktop testbed, nvtray.exe only used about 2.4-2.8 MB of memory, but on our laptop, it starts up using just over 7 MB of memory.
If nvtray.exe leaks memory, the amount of private working set memory it uses will gradually increase. This is what we recorded on our laptop within 2 minutes of booting up. As you can see, it has doubled from 7,384 KB to 15,324 KB in less than 2 minutes.
In our case, nvtray.exe eventually took up 414,900 K of private working set memory. Note that it is using as much memory as Photoshop CS6! (see the screenshot above and below)
It is certainly absurd for such a small utility to be using so much memory. After all, the actual NVIDIA Control Panel only uses about 53 MB of memory, and then only when it's launched! Once you are done with it, it frees up the memory it uses, so even if it uses a lot more memory, it would only do so temporarily.
If you are lucky, NVIDIA Settings (nvtray.exe) will not leak memory and you won't have to do anything more. You can continue using it without worries. But it would be a good idea to monitor its memory usage after every driver update.
If you are one of the unfortunate users who are affected by this memory leak, the solution is simple. In the next page, we will show you how to disable NVIDIA Settings. Let's take a look!
Support Tech ARP!