ballooning will eventually start reclaiming active memory or not?
Hi ,
Active Guest Memory is the amount of guest memory that is currently being used by the guest operating system and its applications.If the tools are installed properly and balooning is enabled,it will go ahead and reclaim active memory,which will cause a slow down for the applications.Reclaiming active memorys is not good so to prevent the same either you to have to make sure we are allocating proper amount of memory to the VM or disable baloon driver(Not a good practise)
Regard's
Sree
EMCIE|EMCISA-V2|EMCISA|VCP4|VCP5|MCP|MCTS AD2008
Hold on, Ballooning will NOT try to reclaim active memory. Ballooning will request the Guest OS to provide a list of idle memory. For more information about ballooning I would recommend you to read this article: http://frankdenneman.nl/memory/disable-ballooning/
Ranjna Aggarwal wrote:
ballooning will eventually start reclaiming active memory or not?
Eventually I would say the balloon could consume "active" memory too, if the memory pressure on the host is high enough. By default the balloon driver could inflate up to 65% of the VM memory and depending on the actual memory load of the VM this could mean that the VM has to internally swap out critical pages. As noted above the goal is to make the VM select either free or non-critical memory for placement of the balloon driver.
We must also note that the "active" memory from the vSphere point of view is only an rough estimate of the amount of memory recently accessed by the VM, and not the amount of pages that the VM has loaded into its memory.
Rickard Nobel wrote:
Ranjna Aggarwal wrote:
ballooning will eventually start reclaiming active memory or not?
Eventually I would say the balloon could consume "active" memory too, if the memory pressure on the host is high enough. By default the balloon driver could inflate up to 65% of the VM memory and depending on the actual memory load of the VM this could mean that the VM has to internally swap out critical pages. As noted above the goal is to make the VM select either free or non-critical memory for placement of the balloon driver.
This matches my recollection of how this works. ESXi will have a target amount of memory to reclaim per VM depending on current host memory pressure, shares, reservations, and limits. The VM is notifed via the the balloon driver to give up its unused pages, and if more memory is required beyond that for the balooning process, the GOS will page memory to its own OS swap and free the memory.
is there any kb article on this or any vmware document that defines it clearly.
Hi Frank,
Yes, whatever you are saying is right because it will try to reclaim Free pages first then idle pages. but then active pages too if there is a very high contention. Am i right or not? Please correct me if i am wrong.
Hi ,
If you need indepth information,please do read the article :http://www.vmware.com/files/pdf/perf-vsphere-memory_management.pdf
Regard's
Sree
Ranjna Aggarwal wrote:
is there any kb article on this or any vmware document that defines it clearly.
What do you specific want to know about this?
The key point is that the vmkernel has no way of knowing what kind of memory the balloon driver will consume. It will just send an "order" through VMtools to get the balloon driver inflated to a certain size. The Guest Operating System then has 100% control over where to place this memory demand from this driver.
By that we can not say if the memory is "active" or not, only hope that the internal guest will select the most suitable places for this driver. This would typically mean either empty RAM or less used RAM pages, but if the vmkernel needs a large amount of memory the internal guest could very well be forces to page out important and often used pages.
I love the documentation center for this type of stuff: