Apple - VMware fast for first user, sluggish for second

How do I go about debugging the problem?

Passing VM images around is tricky business. The image is often created with hypervisor extensions that take advantage of specific hardware features on the machine where the VM was created. If you're not using precisely the same hardware (especially the same CPU) the VM can run slowly or even crash your host OS or lock up your CPU.

I'd start with getting the VM back to an initial state:

  1. Delete all the snapshots in the VM
  2. Power down the guest OS so it's "off", not just suspended
  3. Bring up the Virtual Machine Library window (Shift+Cmd+L) and select the VM
  4. Click the Wrench icon in the toolbar to bring up the settings window for this VM
  5. Select 'Advanced' and make sure the preferred virtualization engine is set to 'Automatic' and that hard disk buffering is also set to 'Automatic'
  6. Click 'Show All' to return to the main settings
  7. Click 'Compatibility' and make sure the VM's compatibility is set to be with the version of VMWare you're running or higher (in my case that's Fusion 4 or higher) so you don't need legacy VM capabilities maintained
  8. Click 'Show All' and return to the main settings
  9. Click 'Display' and make sure 3D graphic acceleration is on. If it cannot be turned on this is a pretty good hint that the VM was created with another chipset and really isn't compatible with your machine.
  10. Click 'Show All' and return to the main settings
  11. Click 'General' and then press the 'Clean Up Virtual Machine' button. This will get rid of all the extra cruft from snapshots and get you back to a nice clean VM image state.
  12. Click 'Show All' and return to the main settings
  13. Click 'Processors & RAM' and set these to suit your needs. You need at least 1 processor, but if you have a multi-core machine you could set this higher. Ideally you wouldn't ever set the number of processors in the VM to any more than Physical Cores in the Machine - 1. That way your physical machine always has one core to itself. RAM should be set to at least the recommended value. If you have a lot of RAM in the machine you can increase this but don't go too crazy with it.
  14. Now power up the VM and do a re-install of the VMWare Tool (Virtual Machine -> Reinstall VMWare Tools...).

Other things to consider:

  • The VM should be on fast disk. This usually means your primary drive in your machine. If it's on a USB-attached disk or a network attached drive performance will suffer.
  • You can't both use the VM image at the same time. I say this in case you have it on a shared drive and you're both trying to run it at the same time. You have to make your own, unique copies of the image.
  • Check the Task Manager in the VM to see what's running. Maybe you have a process or two that's going off the rails and eating up all the VM CPU. If that's the case you're in to a straight why-is-this-process-misbehaving-in-Windows type question and you'd need to take it to http://superuser.com I suspect.

If this doesn't get the VM in to a useable state it's likely that your hardware and the hardware the VM was created on are too far apart in compatibility for you to pass the VM around.