Windows 10 low virtual memory (probably memory leak) when computer is left idle for a few days
I have a computer running Windows 10 Enterprise that has 8 GB RAM and automatically managed paging file size (currently 24 GB paging file size). This computer is running:
- Batches using task scheduler
- A virtual machine with Windows 7 that has assigned 1.5 GB RAM and runs custom processes that programmatically send files from the host operating system (Windows 10) using a VPN connection
This computer is running 24x7 and its only purpose is to process and send those files. Nobody uses it, and only sometimes I access it using Remote Desktop just to check a few things.
This computer started to "freeze" if I left it idle for more than 3 days (average time). After it freezes I can ping it but there is no way to access it using Remote Desktop. I have to access it directly and the only thing I have found when this happens is that it shows a white full screen, but I'm allowed to login. After I login the Virtual Machine is also unresponsive and the Windows Event Viewer shows "windows successfully diagnosed a low virtual memory condition".
I have noticed the computer can run without this problem if I login using Remote Desktop at least once a day, and the problem occurs only if I don't login for several days.
I started to analyze this problem using Performance Monitor to check the Private Bytes counter for all the processes and found that the System process memory usage starts to increase just after I close Remote Desktop session and keeps increasing until I login again.
I left the Performance Monitor collecting data for 1 day and then I logged in the next day using Remote Destkop. The graph shows System process memory keeps increasing and just when I login (near the end of the graph) it decreases:
I was wondering this is a driver memory leak, since the assigned page file size is large enough for virtual memory.
After trying several things without luck (disabling Windows Defender and other services) I found in Windows Event Viewer logs that every time I got the white screen and low virtual memory issue, there was also an event log that says there was a problem with the Display driver which made Windows to switch back to the basic display driver.
From Device Manager I used the roll back feature to roll back the Display Driver (Intel HD Graphics 4000) and now the computer is using the basic display driver. After doing this, the virtual memory has not increased in 1 day and keeps almost constant to 10% (I was getting an increase of about 30% daily). Therefore the problem was the display driver