XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Sluggish performance on VMs migrated from Hyper-V

    Scheduled Pinned Locked Moved Migrate to XCP-ng
    performancemigration
    18 Posts 5 Posters 527 Views 4 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S Offline
      Statitica @AtaxyaNetwork
      last edited by

      Thanks @AtaxyaNetwork

      Doing some more reading and testing at the moment (can't rebuild the VM until my clients log off for the night) and thought I'd drop some notes here for future reference.

      I've seen a few different sites and blog posts mentioning that SMAPIv3 is on the horizon and should offer a significant performance increase on disk IO compared to SMAPIv1.
      I guess the question is: would this potentially be causing slowness compared to Hyper-V?
      How soon will we see SMAPIv3 in production (how long is a piece of string)?

      I also fired up the old VMs from the other client mentioned. These were guests running Windows server 2016 on a Hyper-V host. The older VMs perform far better than the new - again, on similar (slightly slower) hardware. Withe the performance improvements Microsoft claim to have made with each iteration, it seems strange to me that an older version running (mostly) the same software on slightly slower hardware, should be much more responsive than newly built VMs with the correct templates.

      1 Reply Last reply Reply Quote 0
      • olivierlambertO Offline
        olivierlambert Vates 🪐 Co-Founder CEO
        last edited by olivierlambert

        You need to swap the template in priority. This might drastically change the result 🙂

        S 2 Replies Last reply Reply Quote 0
        • S Offline
          Statitica @olivierlambert
          last edited by

          @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.

          🤞

          1 Reply Last reply Reply Quote 1
          • S Offline
            Statitica @olivierlambert
            last edited by

            @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.

            D 1 Reply Last reply Reply Quote 0
            • D Offline
              dinhngtu Vates 🪐 XCP-ng Team @Statitica
              last edited by dinhngtu

              @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.

              S 1 Reply Last reply Reply Quote 1
              • S Offline
                Statitica @dinhngtu
                last edited by

                @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?

                D 1 Reply Last reply Reply Quote 0
                • D Offline
                  dinhngtu Vates 🪐 XCP-ng Team @Statitica
                  last edited by

                  @Statitica You can do that before powering down. There's XenBootFix, which isn't really made for this, but may also work.

                  S 1 Reply Last reply Reply Quote 1
                  • S Offline
                    Statitica @dinhngtu
                    last edited by

                    @dinhngtu stornvme doesn't have a StartOverride section.
                    Assume it is storahci?
                    f97d717d-f471-4750-90d8-36600a3d82c3-image.png

                    D 1 Reply Last reply Reply Quote 0
                    • D Offline
                      dinhngtu Vates 🪐 XCP-ng Team @Statitica
                      last edited by dinhngtu

                      @Statitica If you're using the Windows templates, then stornvme is correct. Do you have some unusual NVMe drivers (Intel drivers being one) installed?

                      S 1 Reply Last reply Reply Quote 0
                      • S Offline
                        Statitica @dinhngtu
                        last edited by

                        @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 51b2dc7f-45ae-4869-8f4e-0aeba8cdc9a5-image.png

                        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.
                        b83a28f9-c61f-4829-b7b9-46e16430b24c-image.png

                        D 1 Reply Last reply Reply Quote 0
                        • D Offline
                          DustinB @Statitica
                          last edited by

                          @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.

                          S 1 Reply Last reply Reply Quote 0
                          • S Offline
                            Statitica @DustinB
                            last edited by

                            @DustinB There isn't anything in the eventlogs since the VSS/ESENT issue was cleared.

                            1 Reply Last reply Reply Quote 0
                            • D Offline
                              dinhngtu Vates 🪐 XCP-ng Team @Statitica
                              last edited by dinhngtu

                              @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 sure stornvme\StartOverride is not present? Once it boots with the correct template and NVMe controller then let's see what the performances are.

                              S 1 Reply Last reply Reply Quote 0
                              • S Offline
                                Statitica @dinhngtu
                                last edited by

                                @dinhngtu it still wouldn't boot with the correct template.

                                That said, I have been testing other VMs which were created on xcp-ng, with the correct templates, and get better performance out of them when they are migrated to a hyper-v host.
                                I believe that this is related to SMAPIv1 limitations - which are known and being actively worked on with SMAPIv3.

                                Unfortunately for us at this point, xcp-ng may not fit our business - hopefully one day soon it will be, but until then, it is what it is.

                                1 Reply Last reply Reply Quote 0
                                • First post
                                  Last post