Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have the following process list and memory consumption (reported thru process explorer) on a 2008 R2 server with SQL, TFS and some other tools:

enter image description here

As you can see the system is consuming 3.6 Gb but the process list only shows a big process (the first one [SQL Server]) taking less than 500 Mb and the others are pretty small so I don't know who is taking almost all of the server's memory. Any idea on how to find out the culprit?

share|improve this question
    
Oh my. An that is a hugh 34gb memory what - tablet? EVER considered using the system tools? Like Ressource Monitor (reachable from task manager) to see where the memory is used? –  TomTom Feb 5 '13 at 10:26
    
Do you think Ressource Monitor will show different information than Process Explorer? Interesting, I'm going to check it. –  SoMoS Feb 5 '13 at 10:33

1 Answer 1

up vote 3 down vote accepted

The OS doesn't care and you shouldn't either. The OS isn't under memory pressure, it has 500MB free. So it doesn't care how memory is used at all.

The only thing it could do is invest CPU to reclaiming memory. But then one of two things would happen:

  1. That memory wouldn't be used anyway. This would make the effort of making it free a total waste. And this is the most probable outcome, since 500MB is sitting unused already. Having more free memory will have no effect on performance anyway.

  2. That memory would be used. In this case, the effort of making it free would again be a total waste because it would just have to be undone.

Modern operating systems only make memory free when they have absolutely no other choice. It's the worst possible thing they can do with memory as it requires them to do additional work to make use of that memory. They can much more easily transition memory directly from one use to another use without the added wasteful intermediate step of making it free.

It's just doing whatever it happened to be doing last. The OS has no need to reclaim it because the most likely next use for that memory is whatever it was already doing before, and it's already there -- for free.

That said, RAMMap will tell you. But it's utterly pointless to analyze OS memory usage on a machine that's not under memory pressure.

share|improve this answer
    
Thanks. The fact is that the machine it's really under memory pressure. I had to shutdown almost everything to get the machine responsible and to be able to generate the screenshot. I'll check RAMMap. That memory consumption started 2 days ago without relevant changes and I'm trying to find out why and to fix the issue if it can be fixed. –  SoMoS Feb 5 '13 at 10:40
    
Thanks, using RAMMap I found that it was an issue with an upgrade of our virtual infrastructure and about 2,5 Gb where wrongly assigned to "Driver Locked memory". Again, thanks. –  SoMoS Feb 5 '13 at 10:48
    
Glad to have helped, even though the thing that helped wasn't my main point. ;) RAMMap is a great tool not just for diagnosing problems but also for understanding what Windows does with memory. –  David Schwartz Feb 5 '13 at 10:49

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.