Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I was torn between putting this question on this site or SuperUsers. I've tried to do a good bit of searching on this, and while I find plenty of info on why to go with a VM or not, there isn't much practical advise on HOW to best set things up. Here's what I currently HAVE:

  • HP EliteBook 1540, quad-core, 8GB memory, 500GB 7200 RPM HD, eSATA port. Descent machine. Should work just fine.
  • Windows 7 64-bit Host OS. This also acts as my day-to-day basic stuff (email, Word Docs, etc...) OS.
  • VMWare Desktop
  • Windows 7 64-bit Guest OS with all my .NET dev tools, frameworks, etc loaded on it. It's configured to use 2 cores and up to 6GB of memory. I figure that the dev env will need more than email, word, etc...

So, this seemed like a good option to me, but I find with the VM running, things tend to slow down all around on both the host and guest OS. Memory and CPU utilization don't seem to be an issue, but I/O does. I tried running the VM on an external eSATA drive, figuring that the extra channel might pick up the slack. Things only got worse (could be my eSATA enclosure).

So, for all of that I have basically two questions in one.

  1. Has anyone used this sort of setup and are there any gotchas either around the VMWare configuration or anything else I may have missed here that you can point me to?
  2. Is there another option that might work better? For example, I've considered trying a lighter weight Host OS and run both of my environments as VMs? I tried this with Server 2008 Hyper-V, but I lose too much laptop functionality going this route, so I never completed setup. I'm not averse to Linux as a host OS, though I'm no Linux expert.

If I'm missing any critical info, feel free to ask.

Thanks in advance for your help.


share|improve this question

closed as primarily opinion-based by gnat, Bart van Ingen Schenau, ChrisF Nov 12 '13 at 13:12

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise.If this question can be reworded to fit the rules in the help center, please edit the question.

add comment

6 Answers

up vote 1 down vote accepted

Stating obvious, but have you checked effect of the usual non vm culprits?

Anti virus, windows media player extender/service, windows search, power saving vs performance features

Does 'Performance Monitor' in either host or vm give any clues?

share|improve this answer
So, there were a number of culprits here, mostly VMWare config options. However, the single biggest one was AntiVirus. Mind you, with 15 years of Net Admin experience, I'm a big fan of having it installed, but in this case even a pretty light weight one (MS Security Essentials) with all the appropriate items excluded STILL gave me all sorts of performance issues! Thankfully I'm careful enough that I don't feel unsafe without it. I just removed it all together. –  Steve Brouillard Feb 16 '11 at 13:08
add comment

I'm surprised to hear that you aren't getting good performance out of this setup. I have a very modest machine by comparison (3G RAM and dual core), and my VMs are very responsive and usable.

I'd say that you want to look at the external drive enclosure because running your VM off of a different spindle than your Host OS is almost required.

Have you turned on Hardware Virtualization support in the BIOS?

The only other thing that I can think of is that I use VirtualBox rather than VMWare. I know that VMWare is generally considered the ne plus ultra of it field, but it can't hurt to install VirtualBox and give it a go.

share|improve this answer
Adam. Thanks. I'm pretty surprised myself. Hardware Virtualization IS enabled (though I am going to double-check after I post this). The other concern I have is the overall performance of my external eSATA drive. I'm also trying to tweak memory trimming and such to see if I'm running into issues there. –  Steve Brouillard Feb 9 '11 at 15:42
add comment

What kind of disk are you emulating? I know in VirtualBox, the default is an IDE drive, but if you specify a SATA drive the performance is much better. ISTR it had something to do with the chipset emulation in VB, so it may not be an issue for you, but it definitely made a difference for me.

share|improve this answer
I went with the SCSI LSI Logic SAS I/O Adapter type which was the VMWare Recommended option and a SCSI disk type (which was also the recommended type). –  Steve Brouillard Feb 9 '11 at 17:40
Well, that certainly sounds like it should be fast enough. Have you defragged the file that contains your emulated disk? Back when I used VMware, it took a few round trips (defrag on host, then defrag in guest, then again on host) before things got straightened out. It only seemed to make a difference the first time (after the initial drive creation), but it was noticeable on the crummy machine I was running it on. –  TMN Feb 9 '11 at 17:56
add comment

Tried an SSD? It's the best bang-for-the-buck performance tweak around.

Run the VMs on it too. I do this on a Desktop with similar spec with VirtualBox and it flies. If you hate your money enough you could even use an SSD as the eSATA drive. My desktop has a separate SSD for the VMs. Anandtech are a good authority on SSD reviews.


share|improve this answer
add comment

Try using an external hdd, or a second internal hdd. This really speeds things up. Otherwise the host and guest are both doing I/O requests on the same disk, which causes a lot of 'lag'.

Also, on the properties of your external disk you can change a rule. Change it from 'quick remove' to 'better performance' (or something like that). This will also give you a huge performance boost. Just make sure you don't plug the disk out of your laptop, always use the usb option to safely remove the disk, otherwise corruption might occur.

share|improve this answer
add comment

Turn off paging file in both host and guest, you have enough memory.

share|improve this answer
This is generally a bad idea. –  Brant Bobby Feb 9 '11 at 17:17
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.