Thursday, August 6, 2015

Abnormally high memory usage on Windows 10


I finished building my first computer and I've had this problem for about 2 months now. I first noticed the high memory usage when I tried playing GTA V. I have 8GB of RAM. I would launch GTA V through Steam and close all other programs, but a low memory warning would pop up and block my view and GTA V would crash almost immediately after the first storyline scene.


A friend of mine told me that I shouldn't be having this low memory problem and advised me to see what Task Manager had to say. Google Chrome (program using the most memory somehow) seems to be sitting around with a few hundred MB with extremely high memory usage. As of now, the high memory usage problem has worsened to the point where I can have one Google Chrome tab for a random Youtube video, and the browser will crash because of high memory usage.





After searching around for a solution to my problem, I tried using poolmon and found that "drivers\netio.sys" is using the most memory (around 4.7 GB). However, I don't know what to do with this information.


How can I fix this?


Answer



You must use xperf to trace what causes the usage. Install the WPT from the Windows 10 SDK, open a cmd.exe as admin and run this:



xperf -on PROC_THREAD+LOADER+POOL -stackwalk
PoolAlloc+PoolFree+PoolAllocSession+PoolFreeSession -BufferSize 2048
-MaxFile 1024 -FileMode Circular && timeout -1 && xperf -d C:\pool.etl



capture 30 -60s of the grow. Open the ETL with WPA.exe, add the Pool graphs to the analysis pane.


Put the pooltag column at first place and add the stack column. Now load the symbols inside WPA.exe and expand the stack of the tag that you saw in poolmon. Now find other 3rd party drivers which you can see in the stack. Look for driver updates to fix it.


According to the ETL file, the high pool usage comes from the Wfpn tag.


This tag is used by Windows Network Data Usage Monitoring, which was added in Windows 8 and also caused memory leaks there.


To disable the driver, run this command from a cmd.exe, started as admin:


sc config NDU start= disabled

After a reboot the issue should be gone.


No comments:

Post a Comment

linux - How to SSH to ec2 instance in VPC private subnet via NAT server

I have created a VPC in aws with a public subnet and a private subnet. The private subnet does not have direct access to external network. S...