Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a 64-bit, non VT host with 4 cores and 6 GB of RAM.

How many cores should I allocate to the VM?

share|improve this question

migrated from Sep 18 '10 at 12:20

This question came from our site for professional and enthusiast programmers.

That would depend on what you plan to do 1) with the VM and 2) natively on the host at the same time, now wouldn't it? – dmckee Sep 17 '10 at 16:48
UPDATE: I plan to run 1 VM at a time; and the host is expected to do Outllook, web browsing, IM, TweetDeck, heads-up display for my phone, stream music over the internet to my brain. The VM is for development: VS2010 + IIS + Browser for the most part, git, etc. – jmsmcfrlnd Sep 20 '10 at 17:16
This question belongs on SO, not on SF. This is about 1 person (me) seeking advice from other programmers how to setup 1 machine (mine) - the end goal to have happy development experience. To those who moved this question: OMG Ponies, Paul Nathan, Kaleb Pederson, dmckee, and Ngu Soon Hui. Seems you should try just a little to understand the question before fn'tossin it off the site. Bad form dudes. -1 for you all. – jmsmcfrlnd Sep 27 '10 at 19:38
I mean couldn't you at least have scanned the tags? visual-studio-2010? development-environment? SF? Really? – jmsmcfrlnd Sep 27 '10 at 19:40
up vote 3 down vote accepted

Rob's summary doesn't really agree with the thread he linked to as support.

  • The poster in the thread he linked is running a system with a total of 2 available cores.
  • A VM with 2 vCPUs assigned needs to wait for both of those cores to be free before it's granted CPU time.
  • Naturally, the hypervisor/host system gets first dibs when it comes to CPU resources.
  • Long story short, the VM will rarely end up being allowed access to the CPU in this situation.

So if this is the only VM you're planning to run on this system, assigning 2 to 3 cores would probably work out fine for you. Assigning 4 would most likely cripple the VM.

If you plan to run other VMs concurrently I'd recommend 2 vCPUs. It seems to be a sweet spot for most workloads and systems with 3+ available cores (up to any number of cores).

share|improve this answer
great clarification - thanks. – jmsmcfrlnd Sep 20 '10 at 17:14

The exact amount needed to do the job you're trying to do in a timely manner. Or as near to that as possible.

Or if you want to look at it another way, how many cores would be in a dedicated piece of hardware you'd buy to do this task non-virtualised?

In terms of how networking, memory, cpu, disk requirements work for an application, nothing magical happens (or doesn't happen) just because the platform you run it on is virtualised.

share|improve this answer
valuable addition to the solution thanks. – jmsmcfrlnd Sep 20 '10 at 17:17

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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