Just purchased new 48GB server. The rest of the components are not important. Win 2008 R2 is the host, Hyper-V role only installed and host takes 3GB RAM when windows is booted. I am scared how that will look when I start adding virtual machines. Anybody knows why bare host without any virtual machines takes so much memory?

  • Are you saying that when you open up System, it's only showing 3GB? Or are you talking about memory usage on the performance tab in task manager? – DanBig Feb 24 '11 at 21:44
  • I see all 48G, just HyperV takes for himself 3GB. Is that normal? – Frane Borozan Feb 24 '11 at 21:57
  • The Hyper-V role is consuming 3GB in addition to what the host OS is consuming or the host OS is consuming 3GB in total, including what the Hyper-V role is consuming? – joeqwerty Feb 24 '11 at 22:00
  • I know that HyperV takes for it self around 500MB's, clean win 2008 R2 installation around 1GB, but what is the rest, that is my main concern. – Frane Borozan Feb 24 '11 at 22:04

This sort of question has been floating around since the inception of Windows NT. I remember somebody saying "I have a brand new machine with 24MB of RAM in it and NT, idle is using 22MB. What could it possibly be doing?"

The answer is the same now as it was then, though the numbers are different. Windows will use available RAM to speed things up, leaving code images in memory and for file cache. If you actually put the machine to some sort of use, much of that RAM will be scavenged and used for other things.

Would you really want a system that didn't try to speed itself up by using otherwise unused RAM?

| improve this answer | |

Go to "performance", open Resource Monitor, look at the different memory categories :

You will see :

  1. Working Set and Private : these two are the ones that counts
  2. Commit : this one is virtual (and often not really used)

Most of what you are seeing is cache or preallocation that will be moved out of the way for real work processes. Don't worry yet.

Have a look at this a for better understanding of the various counters ( a little bit old (2008) but still valid): http://blogs.technet.com/b/markrussinovich/archive/2008/11/17/3155406.aspx

| improve this answer | |
  • thanks for the answer. if I take all the working sets there is 1630,732MB used. And in task manager i see 3GB, hope you understand my concern now :) – Frane Borozan Feb 24 '11 at 22:07
  • task manager has become mostly useless since W7 / W2008R2, use Resource Monitor and if you want to dig deep in details use Sysinternals ( technet.microsoft.com/fr-fr/sysinternals/default , specially procexp, rammap and vmmap ). They are however a little harder on the CPU, so I often use only Resource Monitor. – Michel Feb 24 '11 at 22:13
  • understand but in RM i see in USE ~3GB but when I take all the processes and sum them the usage is around 1.6GB for the working set. I assume HyperV is using, but I am not able to see because it is somewhere under the hood. I believe that one performance counter would show the correct usage of the "shadow" memory but I am not sure which one – Frane Borozan Feb 24 '11 at 22:16

If you are seeing 48GB in the System menu, but only 3GB in use in Task Manager, then you are in fine shape. The OS will take what it needs, and the rest is free for your VMs to use.

| improve this answer | |
  • Don't you think that is a little to much for clean install? – Frane Borozan Feb 24 '11 at 22:04
  • 1
    Nope, windows always looks like it's using too much on a base install, it's just how it is. Is this your first 2008 install? – DanBig Feb 24 '11 at 22:22
  • well is not, but it is install that is using the largest amount of memory, 3Gigs is new to me :) – Frane Borozan Feb 25 '11 at 0:29

Two things to note:

  1. Always reserve approximately 2GB of memory on a Hyper-V server for whatever the host OS might need to do. So only configure ~46GB of memory to VMs.
  2. Memory used by the host partition (the "physical" operating system installation) as VMs are added, except to accommodate the memory requirements of that VM. There is only a very small overhead per VM in terms of memory, so you will have no problem configuring VMs to use up to 46GB of memory, that memory pressure will drive the host partition to use less memory itself for cache.

As an example, I'm running Windows 7 on a machine with 16GB of memory, and my machine is currently using 5,635MB for cache. 5.5GB of cache on only a 16GB machine. But that's nothing to worry about, that's only because I have nearly 8GB of free memory, and Windows is using my free memory to speed up my system. If I started a bunch more programs and VMs, that memory used for cache would go to any program that needed it.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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