5

I've just got a new Dell Vostro 470 with a quad core (8 threads) i7 3770 and I'm trying to run virtual machines on it, which works fine, except if I want to assign multiple cores to a VM. I've checked the bios which states Intel Virtualization Technology [Enabled], but both Hyper-V and VirtualBox will only allow me to assign a single core.

If I run the Intel Processor Identification Utility on the host OS it tells me that Intel Virtualization Technology isn't supported by the processor, but according to the Intel website, it is.

enter image description here

So whats going on? Have Dell clipped the i7's wings? Is there some config in Windows I need to change?

Greg B
  • 1,048
  • 6
  • 16
  • 25
  • That you see `No` means that the virtualization is working (assuming it's enabled in the BIOS). The virtualized CPU does not itself support virtualization. Some hypervisor is currently running, and that's the only hypervisor that can use VT. (Since it doesn't supported nested virtualization.) – David Schwartz Nov 07 '12 at 21:50
  • @David The No is reported from the host operating system – Greg B Nov 07 '12 at 22:15
  • Right. That means the host operating system is running with a hypervisor that has virtualized the CPU. The hypervisor sits between the host OS and the CPU. – David Schwartz Nov 07 '12 at 22:18
  • @GregB You should check the edit I made to the post. – Mikhail Nov 08 '12 at 05:19
  • related: [Intel VT-x disappeared after upgrading to Windows 8](http://superuser.com/questions/500166/intel-vt-x-disappeared-after-upgrading-to-windows-8) – Amro Sep 09 '13 at 21:51

4 Answers4

9

After some more Googling last night I got a lead that it might be a limitation of Windows 8 Client Hyper-V.

Here's a guy having issues with two OS's reporting different VT-x values.
This SuperUser question put me on to the idea that Client Hyper-V has some hard limitations.

This morning I've uninstalled Hyper-V from the "Turn Windows features on or off" in control panel. After a reboot VirtualBox allows me to assign multiple cores to a VM. It appears Windows 8 Client Hyper-V is the culprit.

From what I can tell Windows 8 Client Hyper-V dissables VT-x at the OS level, so applications running on top of Windows, including other virtualization products and the Intel Processor Identification Utility, incorrectly report that VT-x isn't available.

Greg B
  • 1,048
  • 6
  • 16
  • 25
3

Hyper-v takes exclusive control of the vt-x feature.

To disable it, you need to either

  1. remove hyper-v or

  2. disable hyper-v using vt-x (which renders hyper-v unusable until you revert the setting)

For 2), bcdedit /set hypervisorlaunchtype off
to undo bcdedit /set hypervisorlaunchtype on or bcdedit /set hypervisorlaunchtype auto

Nifle
  • 34,203
  • 26
  • 108
  • 137
mathew
  • 31
  • 1
2

Have you checked that virtualization is enabled in BIOS?

Typically it is located under "Advanced BIOS features" as "Virtualization Technology". See this page for more instructions: http://www.sysprobs.com/disable-enable-virtualization-technology-bios

For dell-specific instructions on enabling virtualization, see "How to Enable VT on a Dell for VMware"

jsalonen
  • 8,843
  • 14
  • 35
  • 40
1

This is a know Windows 8 problem.

People who reinstall say everything works. See link.

A fun reason might be that VT-x support needs to be detected during OS install, and some models of the Dell Vostro don't include VT-x support. Hence, when the install image was made by the OEM (Dell) there was no VTx support.

Another explanation is that there is a bug in the BIOS, and flashing the bios may help enforce the state of this value.

You should reinstall.


edit

A common problem comes from the android sdk's Intel emulation persistently using a VT-x slot. Did you install the android sdk?

Mikhail
  • 3,852
  • 4
  • 32
  • 51
  • thanks for the info. Reinstalling is on my list for today. I'm not running the Android SDK – Greg B Nov 08 '12 at 07:14
  • is it possible to enable virtualisation without re-installing the operating system? –  Jan 06 '13 at 17:41
  • This logic is a bit backwards. If you have an install without VT-x support, that's great as it will leave the VT-x feature available for use. If you have in install with VT-x support, then you can't use VT-x because the install is already using it. Only one hypervisor can use VT-x. – David Schwartz Oct 30 '15 at 16:03