Hot-add: An Investigation

Prompted by recent twitter by David Davis and a blog post by Jason Boche on Windows support for the new hot-add features of ESX4 – I decided to do my own research. Firstly, with Windows 2008 R2 which has recently become RTM. I downloaded the .iso from the technet subscription website, and installed the x64 edition using the enterprize option. The result, hot-adding a 2nd vCPU caused a BSOD inside Windows, it then did a reboot – and then I certainly did have a 2nd vCPU!

So I went back to the 1st release of Windows 2008 x64 Enterprize Edition. The test? To see if I could safely add a 2nd CPU, and check to see if the HAL was updated, and if actual threads were executed on the second vCPU.  The screen grab below is the HAL currently in use before the adding of the 2nd vCPU

I then add the second vCPU. Basically, all you do is edit the VM, and then find the vCPU and use a spinner to increase the value. Not unsuprising after making the change – the 2nd CPU did not show up, despite the fact the option to add a second CPU was available. From reading the Windows 2008 features guide:

http://www.microsoft.com/windowsserver2008/en/us/compare-specs.aspx

You can see that only Windows 2008 DataCenter and Itanium support hot add of CPU, despite the fact the option is available in the vSphere4 client.

So why is it there, if it don’t work and isn’t supported by MS you might ask? Good Question. Answer: I don’t know, apart from the fact that perhaps VMware wanted to allow the functionality to be there because of future updates by MS may enable hot-add of CPU for other versions of Windows 2008. There does to be some confusion around what Windows OSes support hot-add of vCPU. For example vmlover.blogspot.com lists Windows 2008 Enterprise. What vmlover also flags up – is its one thing to get the new CPU recognised by the OS, but quite another to then get an application to recognise it.

http://vmlover.blogspot.com/2009/05/hot-add-cpu-vsphere.html

6 Responses to “Hot-add: An Investigation”

  1. Rob Upham Says:

    The reason the CPU (and mem) hot-add features are in vSphere for W2008 is because many customers do indeed run Win 2008 Datacenter Edition as VMs (the licensing works out pretty cost-effective if you have lots of VMs on a host). vSphere doesn’t differentiate between editions (other than 32/64-bit and R2) when creating 2008 VMs, so doesn’t know if you’re running Std, Ent or DC.
    Fire up a 2008 DC Ed VM and you’ll see that hot-add works well.

  2. Matt Says:

    In the testing that I did with this back during the Release Candidate version, I was able to get the second CPU recognized by the OS. There was usually a slight delay (drops a ping) but then the second CPU showed up. I wasn’t able to get the OS to actually use it (as tested from both inside the guest and looking at stats in the vSphere Client) until a reboot. The same was true for RAM – I could add it and running applications wouldn’t use it. At least with RAM if you restart the application it will see and start using the new RAM, so the feature isn’t completely useless…

    Nice post.

  3. Koen Warson Says:

    Would it be of any difference if you hot-add a third CPU instead of a second, because going from second to third would not require a change in HAL ?

    Just thinking, but no time to really test (sorry)

    Kind regards,

    Koen

  4. Mike Laverick Says:

    Not sure if it would make difference. After doing a manual upgrade the HAL did not change. It looks like Windows 2008 has one HAL to rule them all….

  5. Daniel Eason Says:

    Mike,

    Its probably my poor grammar on my blog that confused you, i’ve amended with the fact Enterprise only supports hot add RAM….

    Thanks

    Dan

  6. Mike Laverick Says:

    Yeah, I did wonder… to be honest I assumed that W2K8 Enterprise would be supported – hence I was quite surprised when I dug up that MS KB… I won’t hold spelling/grammar against anyone – mine is ****king appalling! :-D

Leave a Reply

 


Podcast

LinkedIn

If you want to add Mike Laverick on LinkedIn, click on this button:

Mike Laverick

Categories

My Pages

Archives

Other VMware Bloggers