0

I have installed Windows Server 2008 R2 x64 on a VM in VMWare Workstation. I RDP to this VM/sever via Vista (my host OS) but the performance of the server is a little choppy. It is usable but could be better.

My specs: 4GB RAM, Quad Core Pentium 2.4ghz

VM settings: 2880mb ram dedicated (max recommended is 2992mb),

I have noticed that the disk queue length is peaking quite a bit.hard disk is preallocate.

I have set hardware acceleration to full in Windows Server and turned off the firewall (These two things really improved performance but I will need the firewall).

The VM only has SQL Server Installation Center on it (due to a failed install, another story). How can I improve the performance of Windows (I know how to improve the VM's performance which is another story)?

Especially when I run an installer, the whole OS locks up. My host OS does not do this.

Thanks

3
  • 1
    How mnay virtual CPU's have you configured?
    – Helvick
    Nov 5, 2009 at 23:00
  • Good question, Helvick. Sometimes over-provisioning vCPUs can have a negative effect. Slimming down to one vCPU has solved performance issues for a lot of people.
    – Kai
    Nov 6, 2009 at 17:53
  • That was why I asked - the Hypervisor has a lot tougher time scheduling multiple vCPU's since it has to schedule a slot of physical core time concurrently for each vCPU - this can be a very significant problem (especially on a hosted system like this) unless you have lots of spare cores. 1\2 vCPU's on this rig should be absolutely fine but 4 could easily cause this sort of symptom. However if blade only has one vCPU configured then this can't be an answer.
    – Helvick
    Nov 8, 2009 at 23:40

3 Answers 3

1

The first thing I would check would be how much is the Host OS paging - I would imagine quite a bit since you have nearly 3/4 of the RAM for the machine allocated to the VM. If the Host OS is paging alot that will thrash the disk, which will slow everything down especially the VM. The only two options at that point would be to reduce the RAM allocation to the VM or add more RAM to the system. A stopgap as others have said is to move the VM to a seperate disk, but you will still see bad performance as long as the system is RAM starved. As a rule of thumb with non hypervisor virtulization systems I never allocate more that 1/2 the physical memory to VM usage.

1
  • Actually I too thought the amount of RAM I am assigning is wrong. But I am on a 32 bit OS so can't see/use all 4gb. If I get a 64 bit host OS (which I plan to), the amount I've assigned may be more realistic but still not in proportion. I'll try 1/2 :)
    – GurdeepS
    Nov 5, 2009 at 21:56
0

Sounds like you need to potentially move the vmware virtual hard disk to a drive with more throughput. i.e. increase the spindle speed, use an external USB, or potentially add a drive to the system.

0

What's your storage setup? I'm betting that you're seeing bad performance and disk queue lengths because your VM is sharing the same hard drive as your host OS and is working overtime. Your host OS is trying to read/write to the disk with whatever processes you have going on, and your VM is also making its own requests, which cause more reading and writing to the VMDK file that exists on the same physical disk as your host OS.

The best thing you could do is put your VMs on their own storage (another dedicated, single hard drive or, even better, an array of drives/cheap NAS/etc.) so that it has a physical hard drive arm(s) dedicated to it.

Its like trying to serve food in a busy restaurant, with one arm. Two arms are better than one! (no offense to the physically disabled)

2
  • I forgot to state an important piece of info: The VMs sit on their own HD - a 2tb 64MB cache HD (7200RPM).
    – GurdeepS
    Nov 5, 2009 at 21:50
  • Hmm. The high disk queue lengths still point to a bottleneck existing on the storage. Are your memory and processor performance counters showing any signs of stress?
    – Kai
    Nov 6, 2009 at 16:51

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .