Resource Pools, Memory Reservations & vSwaps for virtual desktops

Anybody got any recommendations on this? Lets say you're not going to over commit any memory from your host to your virtual desktops. You have 64 Windows XP vm's each assigned 1GB RAM with 64GB RAM total on your host assigned to a single resource pool (forget clustering and DRS for now). In other words each vm technically has 1GB of physical memory it can access. The way I see it you have 2 options:

Option 1. Create a resource pool across host but don't reserve any memory for your vm's. This means that ESX will create a 1GB vSwap file for each vm. That's 64GB additional storage plus overhead associated with the vSwap. From what I understand, the swap will only be used once the host runs out of memory which shouldn't happen in this instance anyway since there is enough to go around. Besides ESX should technically use transparent page shareing to optimise memory utilisation and reduce overall memory usage way before it needs the vSwap file. Still the storage is wasted. Also since no memory is reserved I'm assuming that the host treats the entire 64GB memory as one big pool and therefore has to keep track of what VM is using which memory block etc.

Option 2. Create a resource pool across the host and reserve the full amount of memory i.e. 1GB for each vm. ESX will no longer create a vSwap file for each vm so I've saved on storage. I'm also assuming now that ESX slices up the total memory for each VM so that each VM is now using a constant portion of memory or direct virtual to physical mapping. No transparent page shareing can occur since there is no longer a single pool of memory. This is better though since each vm has it's own physical memory space anyway plus there is no longer any overhead associated with transparent page shareing or vSwap management.

Am I understanding his correctly? It seems to me if you have enough RAM on your host then option 2 is the way to go??

0 Kudos
0 Replies