Can Hyper-V run on AMD Ryzen processors?
Is it possible to run Hyper-V under Windows 10 on AMD Ryzen processors (specifically a 1600)
Windows allowed me to install the Hyper-V service and create guests, but trying to start a guest produces the following error -
Virtual machine 'Test' could not be started because the hypervisor is not running
Looking around the net I don't seem to be able to find any firm confirmation.
There are two aspects to consider here:
CPU Virtualization. Ryzen chips absolutely support this, and in fact I don't know of any modern AMD chips that don't except for the absolute cheapest APU's. I've been running VM's utilizing this (QEMU+KVM for those who may care) with no issues for quite some time. This can however be disabled in the system firmware, and most systems have it disabled by default (the same is true on Intel) for security reasons.
IOMMU support. I'm not sure if Hyper-V needs this or not, but every other type-1 Hypervisor I know of does, so I assume Hyper-V does as well. This is a property of the chipset. I know that the X370 chipset has an IOMMU, and I think that the X300 chipset does too, but I'm not sure about the A or B series chipsets. Just like CPU Virtualization, this can usually be disabled in the BIOS, and usually is by default.
I'm using a Gigabyte AX370 board, which probably isn't the prime choice for virtualisation, but it does work.
Hyper-V would not install until I enabled virtualisation in the BIOS. At this point I was able to install the feature but not start a virtual machine, receiving the error as in my original question.
Turns out there's an additional option in the BIOS to turn on SVM hidden away under "Advanced Frequency Settings", then "Advanced CPU Core Settings". Not sure why it's under frequency settings rather than in the main CPU features list with the other virtualisation option, but everything works fine once they're both enabled.