[vbox-dev] Remove of VT-x dependency for 64bit guests an option?

Klaus Espenlaub klaus.espenlaub at oracle.com
Tue Jan 24 17:59:46 GMT 2017


Hi Clemens,

On 24.01.2017 08:35, Clemens A. Schulz wrote:
> Hi,
>
> I just asked myself for what exactly VT-x is a hard dependency in
> VirtualBox to run 64bit guests. This dependency does not exist for 32bit
> guests - plus with latest Windows 10 Updates there no way to obtain VT-x
> access without deactivating HyperV functionality on OS-Level.

VT-x is also a hard dependency for SMP guests (i.e. having more than one 
CPU for the VM).

32-bit guests with single CPU work with software emulation, which is 
significantly less accurate than hardware emulation. Extending this to 
cover SMP and 64-bit (and improve accuracy) is a huge effort, and isn't 
attractive as pretty much all new CPUs have VT-x.

If Hyper-V is so great that you can't disable it you might try another 
option: run VirtualBox in a Hyper-V VM which has VT-x passthrough 
enabled. This isn't a config we test at all currently, but if Hyper-V 
takes its job seriously it should work.

> For some reason VMWare Workstation supports from 12.5 on the Anniversary
> Update from Windows 10. As they won't be able to access VT-X anyway,
> since HyperV uses exclusive access to it all the time I more think that
> they simply removed all dependencies to the VT-x functionality.

VMware implemented SMP and 64-bit support long before VT-x was 
available, so they had no choice (and a lot of time) to make it happen.

> Is that an option for VirtualBox? Wouldn't the remove of VT-x feature
> for VirtualBox also mean to slow down everything pretty much? Does
> anyone ever tested if the performance of VMWare Workstation 12.5 is way
> slower on Anniversary Update Windows 10 instead of an older Windows 10
> Build?!

Not using VT-x would certainly cost a lot of performance in some 
workloads (with only extremely few workloads having a tiny chance to be 
a little faster than with VT-x). So it'd need a lot of work to give a 
worse result. Not an attractive situation.

Benchmarking other products is something we leave to others, but I 
assume that not using VT-x overall is having a performance impact.

Would be much better and simpler if Hyper-V (especially the variant 
shipped in Desktop OS variants) would learn how to (optionally) share 
VT-x, which is what other hypervisors can do for a long time.

Regards,
Klaus
>
> Thanks a lot!
>
> Regards,
> Clemens



More information about the vbox-dev mailing list