Solved

Comparison between VMware memory usage and physical usage

Posted on 2010-08-26
16
548 Views
Last Modified: 2013-11-10
Hi

We have some physical servers running a memory intensive app, and are looking to move them to virtual ESX.

At the moment, the physical servers are Windows 2003 x32 Server Std. They have 4GB RAM.

The virtual servers would be the same.

Would I be correct in thinking that as long as we assign the ESX guests 4GB RAM, the performance *should* be the same, in terms of memory availability? Or does it depend on the memory consumption of other guests on the host etc.
0
Comment
Question by:kam_uk
  • 4
  • 3
  • 3
  • +3
16 Comments
 
LVL 40

Accepted Solution

by:
coolsport00 earned 125 total points
ID: 33534059
You are correct; what RAM you allocate to your VM, is what is given to it by the host. VMs (OS's, more specifically) tend to not need all its RAM allocated to it, all of the time. ESX will 'borrow' memory from idle VMs and give it to the VM that needs it at that given time. But, again, if a VM has x amount of RAM given to it, when it needs to use it, it will be given to it, as long as there's enough physical memory in the host the VM is on.

Regards,
~coolsport00
0
 
LVL 42

Assisted Solution

by:paulsolov
paulsolov earned 125 total points
ID: 33534117
Since you are running 2003 standard x32 you cannot go over 4GB RAM (around 3GB actual) and therefore the perforamnce would be similar
0
 
LVL 42

Expert Comment

by:paulsolov
ID: 33534130
Interesting part is that if you're running HP, Dell, IBM it may even run faster because for instance HP agents and utilities use around 300-500MB of memory that are no longer part of the VM
0
 
LVL 28

Assisted Solution

by:bgoering
bgoering earned 125 total points
ID: 33534142
It would be the same as the physical machines in terms of memory use only if you assign a memory reservation of 4GB for each vm. However that is rarely a good idea, it generally is best to let VMware manage the memory allocation for the virtual machines. Such a reservation would likely waste memory.

Now if you see performance degradation on the guests due to contention with other VMs it MAY be appropriate to determine the typical working set size of the guests and make a smaller reservation. Unless you are using the /3G switch in boot.ini on your servers, Windows will allocate 2GB of address space for an application. If each guest has a single memory intensive application that is using all of its 2 (or 3) GB I would possibly make reservations up to 2 GB if performance is suffering.

Good Luck
0
 
LVL 40

Expert Comment

by:coolsport00
ID: 33534156
"bgoering is correct...you shouldn't hardly ever configure resources for VMs, in terms of memory or CPU, unless there is some SLA or other 'desperate' need to do so. I discussed this with VMware off/on for like a month on when and/or why you would even need or want to do so. :)

~coolsport00
0
 
LVL 21

Assisted Solution

by:robocat
robocat earned 125 total points
ID: 33534183

You can assign 4GB RAM to a guest, but because all VMs share the RAM, your guest may not actually get 4GB physical RAM from the host.

However, you can make a reservation of 4GB for this VM, this way the host will always give 4GB to the guest and this RAM is not shared by other VMs.

0
 
LVL 3

Author Comment

by:kam_uk
ID: 33534539
Thanks guys..

So from what I can understand, I can assign 4GB RAM to a guest, or I can make a reservation of 4GB RAM. The latter means 4GB is always available to the guest, but not to other guests (meaning its not efficient)?

Out of interest, does the PAE switch work on ESX guests so I can give the guest more than 4GB?
0
Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

 
LVL 28

Expert Comment

by:bgoering
ID: 33534583
Yes, the /PAE switch works exactly the same in a virtual machine as it does in a physical machine
0
 
LVL 42

Expert Comment

by:paulsolov
ID: 33534602
If you reserve 4GB RAM to the VM it will always have 4GB and no other VM can use it.  It will also reduce the vmware swap file to zero and give you more storage.  If your reserve 0 it creates a 4GB swap file
0
 
LVL 63

Expert Comment

by:SysExpert
ID: 33535292
Also, don't forget that CPU usage may also affect speed, as well as how your store your data.

So better hardware may also make improvements in performance.

I hope this helps !
0
 
LVL 3

Author Comment

by:kam_uk
ID: 33537319
Thanks guys -

One last question - what would you define as the 'VMware swap file'?
0
 
LVL 28

Expert Comment

by:bgoering
ID: 33537347
It is a file that VMware maintains to swap pages of the VMs memory to if memory contention on the ESX server requires swapping. It is the same size as the amount of memory allocated to the server. However, if memory reservations are in effect for the virtual machine, the size is reduced by the amount of the reservation.
0
 
LVL 28

Expert Comment

by:bgoering
ID: 33537359
I should say it is the same size as the amount of memory allocated to the virtual machine (not server). A swap file is created for each virtual machine when it is powered on and deleted when it is powered off.
0
 
LVL 21

Expert Comment

by:robocat
ID: 33541881

To add to this, if your VM host ever needs to use this swap file, the performance of the related VM will go down the drain. You need to avoid overallocating the physical RAM of the host too much or this will happen.

To come back to your original question, if performance of your VM is critical, make a large enough memory reservation for this VM and this will never happen.
0
 
LVL 3

Author Comment

by:kam_uk
ID: 33696475
Hi
Not sure what has happened here - I went to assign the points/accept solutions and something strange has happened!

Can the answers be accepted as I've stated and points awarded?
0

Featured Post

Free Gift Card with Acronis Backup Purchase!

Backup any data in any location: local and remote systems, physical and virtual servers, private and public clouds, Macs and PCs, tablets and mobile devices, & more! For limited time only, buy any Acronis backup products and get a FREE Amazon/Best Buy gift card worth up to $200!

Join & Write a Comment

In this step by step tutorial with screenshots, we will show you HOW TO: Enable SSH Remote Access on a VMware vSphere Hypervisor 6.5 (ESXi 6.5). This is important if you need to enable SSH remote access for additional troubleshooting of the ESXi hos…
In this article, I will show you HOW TO: Perform a Physical to Virtual (P2V) Conversion the easy way from a computer backup (image).
Teach the user how to install vSphere Update Manager  Console to Windows system:  Install vSphere Update Manager: Configure vSphere Update Manager plug-in in vSphere Client: Verify vSphere Update Manager settings in vSphere Client:
Teach the user how to join ESXi hosts to Active Directory domains Open vSphere Client: Join ESXi host to AD domain: Verify ESXi computer account in AD: Configure permissions for domain user in ESXi: Test domain user login to ESXi host:

760 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now