4

awhile ago I upgraded my laptop to Windows 7 x64 from Windows XP 32-bit edition. However not before virtualizing the physical installation and I continue to run it under VMware Workstation today.

The performance on the resulting VM is just absolutely atrocious! I've done a lot of uninstalling stuff that's not longer needed since the machine is virtual in an effort to reduce RAM, but in general the responsiveness seems sluggish. I also run the Virtual Machine on it's own separate HD that is seldom used by the host OS.

I'm just hoping for some general tips in increasing VMware performance anywhere, thoughts?

EDIT: Both of the below answers were excellent starting points for me. However I did like the selected answer's strategies on disk management. I am running the Virtual Machine in a separate external hard disk, likely I'm going to have to reconfigure somehow.

4
  • i have yet to see anything good coming out of a converted physical installation, they never do as well as a clean VMware installation. but i do wish you the best of luck with your tweaking efforts.
    – Molly7244
    Commented Dec 28, 2009 at 17:37
  • What are the specs on your laptop? Have you done a clean installation to see how it performs? It might tell you if your P2V just sucks or if you have too high of expectations. You could also try running it in Vbox Commented Dec 28, 2009 at 17:50
  • 2
    @Molly, I did several physical convertions of older computers of mine, which all seem to work well simply because the host is far more powerful than the old systems themselves. For example, I often use a converted installation that originated from an Windows XP installation running on a Pentium III system with 512 MB RAM at 866 MHz. Then again, the VM now runs on an Intel Xeon Quadcore with 12 GB of RAM thus the performance gain comes from the much better hardware. (The VM now uses two CPU's and 2 GB of RAM.) Commented Dec 28, 2009 at 18:00
  • 1
    Alex, i'm not really comparing the hardware side, but the fact remains that a clean VMware installation always beats a conversion, even at the best of times if there are no conflicts with drivers for the old hardware or other hickups. sure, conversion is a viable means if you have some old software that you cannot recover otherwise and similar scenarios but if i want performance, then i certainly go for a clean installation.
    – Molly7244
    Commented Dec 28, 2009 at 18:22

2 Answers 2

4

Let me rephrase: your laptop was using Win-XP 32-bits and you've copied that installation to a virtual machine. Your laptop now uses Windows 7 but that doesn't matter for the whole question, right? Then again, your laptop seems to be powerful enough to run a 64-bits Windows 7 system so the VMWare host needs to be powerful enough to host it all.

First of all, you should always expect performance to go down if the host is as powerful as the original system. There's this virtualization layer in-between which adds some delays. I did the same with a laptop of mine, but the virtual machine I created is hosted on a much more powerful system, thus performance went up.

Possible bottlenecks could be an installation of SQL Server or other database inside the virtual machine. These tend to eat up a lot of resources. It might be better to install SQL Server on the host instead and make the VM connect to this "external" database. Other problems could be the amount of RAM that the virtual machine has. Even though XP works well with 512 MB, I tend to give my VM's up to 2 GB of RAM. That way, the VM will use less of it's own swapfile, simply because it has more memory available.

Another bottleneck could be the harddisk that contains the VM. If this is connected to your system through an USB cable then it will definitely be slow. I tend to give VM's two disks. One with the operating system which will be located on the fastest disk in my host and the other for data which could be any disk. Often I use a network share for this, and share a disk/folder on the host. This way, data is available from inside and outside the VM.

The system disk would be up to 8 GB in size and I tend to claim this disk space immediately, instead of having VMWare increase the disk size little by little. It does increases performance but eats up a lot of disk space.

Don't put this virtual machine on a compressed disk to save disk space! Disk compression tends to make disk access a bit faster since it actually has to read less data from disk but it also puts a bigger strain on your processor since it needs to decompress this data again. It puts a bigger demand on your CPU, which might even increase the heat inside your system. With laptops, the system tends to decrease the CPU speed when the fan can't cool down the system enough.

4

Personally, I have done what you have a number of times and never had that sort of problems. Performance always is higher when moving to a newer pc - when looking at time to turn on and off, however, disk I/O on intensive tasks fails.

Things to look at:

  • Have you reduced RAM? For a Windows XP 32 bit guest, I typically do not have more than 1 GB of memory unless there is special reason. (And this can make big difference in pause/resume)

  • Have you checked all the Virtual Machine settings? Make sure it is in compatibility mode for the latest version of VMWare Workstation that your machine supports.

  • Have you made sure that CPU mode is set to auto?

  • When you say you put it on it's own hard drive, are you talking about physical drive or partition? If partition, this is bad - but try defraging your drive. If it is a separate drive, ignore this point!

  • Most important, have you installed the latest version of VMWare tools?

  • Did your physical (older) machine have any funky programs that came with the motherboard, such as hibernate/suspend/power management/over or under clocking tools? I generally find that these cause a lot of trouble.

After this, how is the general performance on start/resume in other virtual machines?

You must log in to answer this question.

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