Sluggish performance on VMs migrated from Hyper-V
-
You need to swap the template in priority. This might drastically change the result
-
@olivierlambert yep - clients are just done for the day so I'm running a backup job and should be able to let you know how it goes in a few hours.
-
@olivierlambert I tried to boot the OS drive with the correct template, and it blue screened with "boot device inaccessible".
I reverted back to the incorrect template, and it's booting again.
Going to try re-importing and setting up the boot device with the correct template next.
-
@Statitica It's because of a change in Windows storage driver. Deleting
HKLM\SYSTEM\CurrentControlSet\Services\stornvme\StartOverride
before booting on the new template should make it work. -
@dinhngtu do I just do that before powering the VM down, or is there a way to do it on the disk while it is detached and powered down?
-
@Statitica You can do that before powering down. There's XenBootFix, which isn't really made for this, but may also work.
-
@dinhngtu stornvme doesn't have a StartOverride section.
Assume it is storahci?
-
@Statitica If you're using the Windows templates, then stornvme is correct. Do you have some unusual NVMe drivers (Intel drivers being one) installed?
-
@dinhngtu I originally used the "other install media" template when I imported this VM from hyper-v.
Nothing listed in msinfo, but in the reg keys under storahci
I noticed there are also drivers in there from vmware (these VMs have been through a few hypervisors before I took over the company and decided to do this particular migration).
Out of interest I checked a Server25 install which was done using the "Windows Server 2022" template. That also has no StartOverride value in the registry.
-
@Statitica have you checked the Event Logs, specifically the System event logs? I recall having a performance hit when I migrated some VMs from Hyper-V to XCP-ng (years ago at this point).
I don't recall the exact issue off hand, but the remedy was easy enough.
-
@DustinB There isn't anything in the eventlogs since the VSS/ESENT issue was cleared.
-
@Statitica Not having
stornvme\StartOverride
is expected on systems that use NVMe controllers to boot (e.g. XCP-ng Windows templates). Can your imported VM boot on the correct Windows template once you have made surestornvme\StartOverride
is not present? Once it boots with the correct template and NVMe controller then let's see what the performances are.