5 Replies Latest reply on Feb 9, 2019 7:43 AM by adrian.chung

    Fusion 11 (11.0.2) with eGPU - Slow, laggy graphics performance in VM?

    adrian.chung Lurker

      Is anyone else using Fusion on a Mac with an eGPU setup?

       

      VMs running Windows 10 for example, are normal when used on the Mac without eGPU connected, using discrete or built-in graphics.  This is on a recent ThunderBolt 3 enabled MacBook Pro.

       

      As soon as I connect a TB3 external GPU to the Mac, and restart the VM, the VM is almost unusable.  Opening Explorer for example happens very slowly, and the window draws so slowly you actually see blocking and pixelation.

       

      Moving the mouse is laggy.  The dot animation when Windows is booting is slow.

       

      I've tried enabling "Prefer external GPU" in Finder for Fusion, and also setting the mks.allowblacklisteddrivers(?) setting in the VMX, no difference.

       

      I've also tried creating a brand new Windows 10 VM with the eGPU connected and enabled, same thing.

       

      Parallels Desktop for what it's worth works fine under the same conditions.  In fact, the same native Fusion VM, opened and converted by Parallels works fine.

       

      Guessing it's a shortcoming on the fusion side, but just wondering if there's a workaround or known issue.

        • 1. Re: Fusion 11 (11.0.2) with eGPU - Slow, laggy graphics performance in VM?
          dlhotka Virtuoso

          I haven't tried it, but it sounds like Fusion not picking up that it's been activated.  Have you tried rebooting the host with it active, and only then launching fusion?

          • 2. Re: Fusion 11 (11.0.2) with eGPU - Slow, laggy graphics performance in VM?
            RickShu Expert
            VMware Employees

            Hi

             

            eGPUs are not officially supported on Fusion. We are evaluating the demand for this.

             

            Regards,

            -Rick

            • 3. Re: Fusion 11 (11.0.2) with eGPU - Slow, laggy graphics performance in VM?
              adrian.chung Lurker

              I’ve tried rebooting with the eGPU active, and then launching Fusion, no avail.

               

              I‘ve also tried on both the internal display and the external display attached to the eGPU, no difference.

               

              One thing that just came to mind now that I have not tried is setting the primary monitor to the internal (by moving the menu bar in Display Prefs -> Arrangement) to the internal display.

               

              There are some cases where the primary monitor selection governs which GPU renders.  Long shot, but worth a try.  I don’t care about using the eGPU for the VM, I’d just like to have at least equivalent performance regardless of whether or not an eGPU is connected.

              • 4. Re: Fusion 11 (11.0.2) with eGPU - Slow, laggy graphics performance in VM?
                adrian.chung Lurker

                Thanks RickShu, when you say “supported”, that makes me feel like you mean processing and rendering for all VM functions via the eGPU.

                 

                I’m not even primarily concerned with that, I just want consistent and equivalent performance to what I’d get if I had no eGPU connected.

                 

                The fact that I connect an eGPU and the VM becomes unusable does not seem to be a “supportability” issue, it would seem like a bug.

                 

                At least pin the rendering to internal/discrete graphics so that when folks do connect an eGPU, they don’t have to switch to Parallels to use their VMs.

                 

                In addition, I didn’t mention, but connecting an eGPU causes all running VMs to crash and power off.

                • 5. Re: Fusion 11 (11.0.2) with eGPU - Slow, laggy graphics performance in VM?
                  adrian.chung Lurker

                  Update on this one:

                   

                  Fusion appears to render with whatever GPU is driving the current display the VM window is residing in.

                   

                  Regardless of which display is set as primary in display preferences, or what is connected when Fusion is started or the VM is powered on, graphics performance within the VM is bad when on a screen driven by the eGPU, and normal when on the internal display.

                   

                  As per RickShu, eGPUs are not supported, and looks like because they're flagged as removable devices.  Not sure if there's a workaround in the VMX for that, or if there's a way to pin to a specific GPU.

                   

                  In the meantime, at least moving the VM windows to the internal display allows the VM to be used.

                   

                  2019-02-08T11:52:24.637-05:00| svga| W115: MTLRenderer: Ignoring removable device AMD Radeon RX Vega 56

                  2019-02-08T11:52:24.637-05:00| svga| W115: MTLRenderer: Ignoring removable device AMD Radeon RX Vega 56

                  2019-02-08T11:52:24.639-05:00| svga| I125: Metal Device name: AMD Radeon Pro 560X

                  2019-02-08T11:52:24.639-05:00| svga| I125: Metal Device headless: FALSE

                  2019-02-08T11:52:24.639-05:00| svga| I125: Metal Device lowPower: FALSE

                  2019-02-08T11:52:24.639-05:00| svga| I125: Metal Device maxThreadsPerThreadgroup: 1024x1024x1024

                  2019-02-08T11:52:24.639-05:00| svga| I125: Metal Device recommendedMaxWorkingSetSize: 4294967296

                  2019-02-08T11:52:24.639-05:00| svga| I125: Metal Device depth24Stencil8PixelFormatSupported: TRUE

                  2019-02-08T11:52:24.639-05:00| svga| I125: Metal 2: YES

                  2019-02-08T11:52:24.639-05:00| svga| I125: Metal Arg Buffer Support: Tier 2

                  2019-02-08T11:52:24.640-05:00| svga| I125: Metal Device PCI ID: 1002:67EF

                  2019-02-08T11:52:24.640-05:00| svga| I125: Metal Device chip: Baffin (GCN4)

                  2019-02-08T11:52:24.651-05:00| svga| I125: Metal Device plugin: AMDMTLBronzeDriver 2.4.9 20532

                  2019-02-08T11:52:24.652-05:00| svga| I125: MTLRenderer: Enabling workaround for depth zeroing

                  2019-02-08T11:52:24.656-05:00| svga| I125: Started Shim3D

                  2019-02-08T11:52:24.656-05:00| svga| I125: MKS-RenderMain: Started MTLRenderer