Why does Windows 7 x64 take so much RAM after closing all the RAM intensive programs?

0

2

I have 32GB RAM and I run a Windows 7 x64 OS.

When I start the PC, it uses ~1.5GB RAM.

I crank it up(with software, mostly browsers and scripts, over a period of certain days, while the PC is not restarted) up to 20-25GB of RAM.

The I decide to close everything, and maintain only the software that starts with Windows(firewall, AV, etc) and I discover that the PC is using 4-7GB of RAM, in this moment.

For what? There's nothing that RAM hungry in task manager.

I've attached screenshots.

I've added another picture:enter image description here

enter image description here enter image description here

Here's the RamMap screenshot: enter image description here

Nick

Posted 2014-02-07T16:32:05.070

Reputation: 173

1You have to look at all processes to determine what is using the memory. – Ramhound – 2014-02-07T16:40:44.053

how do I do it? – Nick – 2014-02-07T16:55:07.340

Go to the Sysinternals site and download RAMMap http://technet.microsoft.com/en-us/sysinternals/ff700229

– David Marshall – 2014-02-07T17:05:51.577

I've added the RamMap screenshot and there's that huge Metafile allocation. What's it for? – Nick – 2014-02-07T17:12:21.457

1@Nick Even the Task Manager can help: just click the Show processes from all users button. Also, you can start the Resource Monitor from the Performance tab. Anyway, even if you closed everything, there are many of background applications which are still up and running. That is probably part of the problem. – and31415 – 2014-02-07T17:29:29.893

Metafile - Memory used to represent file system metadata, including directories, paging files and NTFS metadata files such as the MFT. (Source: Windows Sysinternals Administrator's Reference) – David Marshall – 2014-02-07T18:47:22.800

Answers

7

When a system is not under memory pressure, there is no advantage to additional free memory. In fact, there are at least two significant disadvantages to having more free RAM. First, if RAM is free, it must be made unfree in order to use it, which is additional effort. Second, if RAM is free, then if the system needs the information it previously held, it must be recomputed or read from disk again. So free RAM is bad.

If you're thinking, "I want my RAM to be free now so I can use it later", that's silly. The RAM can be used now and used later. Having RAM used now actually makes it easier to use it later, not harder.

Most of your RAM contains file data and NTFS filesystem metadata (that's what "Metafile" means). This will make future file accesses faster. If needed for some other purpose, Windows will transition it directly to that other purpose without the wasteful extra steps of making RAM free just to later have to undo that effort and make it used again.

David Schwartz

Posted 2014-02-07T16:32:05.070

Reputation: 58 310

1The OP is tilting at windmills... – joeqwerty – 2014-02-07T17:54:00.100

Actually, I just wanted to understand the situation... – Nick – 2014-02-07T21:28:41.583

1

Based on the RAMMap screenshot I can see that the Metadata are extremely high. This is the file system cache. MS explained this here in a blog post.

They provide a Service where you can limit the cache size dynamically. You can download the service from the Downloadcenter.

You can set a fixed limit with this tool:

http://www.uwe-sieber.de/ntcacheset_e.html

Also the paged and non paged pool is too high. I explained here how to track down which drivers use the memory.

magicandre1981

Posted 2014-02-07T16:32:05.070

Reputation: 86 560