7

I have a new Dell laptop running Windows 7 64-bit with 8GB RAM. If I leave the system running overnight I start getting low memory errors the next day. Looking at Task Manager it shows 6.27GB used but looking at the processes list the totals don't show nearly that much. I am showing all processes from all users.

I have also looked at the processes with Process Explorer and see the same results.

Using Resource Monitor I see 4165MB in use, 2328MB modified and 1352MB standby with only about 345MB free. These numbers don't seem to add up to what I have running (Visual Studio 2010 along with a number of IE8 sessions).

I have run the same set of apps on Windows XP SP2 32-bit with 4GB of memory and never had this sort of problem.

What is modified memory? What is standby memory?

Any suggestions on what might be the issue and how to fix it?

1
  • 1
    "I have a new Dell laptop running Win7 64 with 8 meg of ram" - don't you mean "8 gig"?
    – ChrisF
    Jun 15, 2010 at 19:47

3 Answers 3

5

If you have process explorer, check under Kernel memory - when my nvidia graphics driver crashes, I leak about 2gb of memory into there.

If you're looking at the paging lists in process explorer, it breaks down as follows: Zeroed - These pages are unused and have been overwritten with zeroes. Free - These pages aren't allocated at all. Modified - An application has changed this page, and it needs to be written to disk before it can be replaced. ModifiedNoWrite - An application has changed this page, but it doesn't need to be written back before being replaced. Standby - These pages were recently in use. If they are needed, then they can be reallocated to another application. The priority levels below show how likely windows thinks the page is going to be needed again. If an application uses a page once every second, then if windows reallocates that page to another application, it'll have to allocate it back every second, so that's not very useful if we have a page that was used 20 min ago by a background application and hasn't been used since that we could reallocate instead of shifting the same page back and forth between two applications every second. Your "available" memory is Zeroed+Free+Modified+ModifiedNoWrite+Standby

As for fixing it, if it's a driver that's crashing or leaking memory, you just have to replace the driver with a newer or older version that doesn't have this problem. Sadly I don't know of any way to see how much memory is allocated to each driver, though on a high-end system with 150 processes and 50000 handles open (steam, WoW, several editors, google chrome w/40 tabs), I'm using about 500mb of paged physical kernel memory, 500mb of paged virtual kernel memory, and 150mb of nonpaged kernel memory. If you're off by whole gigabytes when it's complaining about memory issues, a driver is misbehaving somewhere. The rest of your memory should be accounted for in the process list.

3
  • If I understand Win 7's memory managment correctly memory pages in the Modified section are suppose to flush to disk if a low memory situation arises. On my system free memory gets used but the Modified memory never gets flushed to disk and I just get low memory errors.
    – John S
    Jun 15, 2010 at 20:42
  • Same thing happens with STandby memory. Never gets released for use in low memory situations.
    – John S
    Jun 15, 2010 at 20:48
  • I have found that bcmwltry.exe (wlan software) has > 5000 handles open. When I kill it in task manager my modified memory usages drops like a rock and my free memory jumps to > 5 gig. So I have found the culprit now I just need a fix.
    – John S
    Jun 15, 2010 at 21:13
8

The problem was being caused by BCMWLTRY.exe, a Broadcom WLAN tray app that is installed as standard on Dell laptops.

If I looked under Task Manager and viewed the handles and page faults they were very large numbers. Once I killed the BCMWLTRY process all my memory issues were resolved. The process does restart itself so it either has to be uninstalled or updated.

The bad version is 5.60.18.8, which I have replaced with 5.60.48.35. After a reboot I will let you know if that is a valid fix.

==> v5.60.48.35 has the same problem. You can rename the BCMWLTRY.exe in C:\Program Files\Dell\DW WLAN Card, so it can't be restarted itself

0

It is important to understand that Windows' "low on memory" or "out of memory" warnings are not about physical memory, or RAM. They're about virtual address space, or more precisely, the commit limit. Now, a program that allocates and references a lot of committed virtual address space is going to have a bloated working set (physical RAM allocation) too, but that's not what the pop-up warnings are about.

And by the way, if you have a lot of Standby, you are not low on physical memory. Standby is part of "available".

Edit - added: My much longer answer here explains this more fully.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .