Fusion

 View Only
Expand all | Collapse all

eGPU, or Second PCI GPU to macOS guest?

  • 1.  eGPU, or Second PCI GPU to macOS guest?

    Posted Nov 13, 2023 09:58 AM

    Hi,

    I came across a post here that said eGPU is supported in macOS guests in Fusion, and as a new-to-VM user, wondered if someone could advise of whether something would work:

    I have a 2019 Mac Pro with dual W5700X PCI/MPX GPUs. I need to be able to keep Apple's Aperture running in a VM. The app seems to work fine in the High Sierra VM I've created - it can ingest and organise images etc. However, it can't display full-size images, because they're done on GPU, and as I understand it, pre Big Sur macOS doesn't have passthrough access to the system's GPU when running as a guest.

    So is there a way I could pass through my system's second GPU, or failing that, connect an eGPU to the system, for the VM to give to Aperture?

    Or is that still not going to work?

    Thanks,



  • 2.  RE: eGPU, or Second PCI GPU to macOS guest?
    Best Answer

    Posted Nov 13, 2023 04:12 PM

    I don't think it's going to work. The 3D acceleration support for macOS https://kb.vmware.com/s/article/81657 is a subset of full Metal capabilities. They only exist to support graphic operations. It's doubtful that they'll work for GPU compute offload tasks.

    That GPU support is only available for Big Sur and later hosts, and Big Sur VMs. It's been anecdotally reported as working in later macOS VMs. It won't work with High Sierra VMs. 

    Aperture had to be hacked to run on Catalina. It's doubtful that it will run on Big Sur or later. 

    Your best bet is to look for a replacement for Aperture. It's been discontinued for 9 years now. 

    Barring that, find a used Mac on the market that can run Mojave and continue to run Aperture on that. But be extremely careful connecting any old macOS release to a network - keep it isolated from the rest of the world and use it only for Aperture. 



  • 3.  RE: eGPU, or Second PCI GPU to macOS guest?
    Best Answer

    Posted Nov 13, 2023 06:07 PM

    The problem is that MacOS guests won't use it - it was a windows-only feature, and only worked with an eGPU.

    It really is time to retire Aperture unfortunately.  I miss having competition to Lightroom, but that ship sailed years ago.



  • 4.  RE: eGPU, or Second PCI GPU to macOS guest?

    Posted Nov 21, 2023 01:54 AM

    Thanks for the replies folks,

    If anyone knows, I'd be curious what the capabilities are for a Windows guest in a VM on a mac host, with regard to GPU access - If I wanted to try anything graphically intensive, be it gaming, or plugging in a VR headset to my second GPU, can a Windows guest achieve a "real" speed connection to a (e)GPU?

    Regarding Aperture, yes in theory retiring it would be good, but there's no solution that does all the things it does - specifically, importing from devices to a referenced library, and then making that library available to sync back to iOS devices.



  • 5.  RE: eGPU, or Second PCI GPU to macOS guest?

    Posted Nov 22, 2023 02:35 AM

    On Apple Silicon/ARM, the answer is none. Apple never built support.  They have doubled down on the unified memory architecture, which makes it highly unlikely they'll ever do so.

     

    On Intel it worked pretty well, not quite native speed but solid - AMD only, and I doubt that current cards will be supported.  You'd have to look at then-current-hardware (circa 2019).



  • 6.  RE: eGPU, or Second PCI GPU to macOS guest?

    Posted Nov 22, 2023 02:43 AM

     wrote:

    On Intel it worked pretty well, not quite native speed but solid - AMD only, and I doubt that current cards will be supported.  You'd have to look at then-current-hardware (circa 2019).


    Well the machine in question is a 2019 Mac Pro, with dual w5700x GPUs... I just wonder if the thunderbolt plumbing for the MPX GPUs interfere with the ability of the guest OS to interact with the GPU, or am I overthinking it?



  • 7.  RE: eGPU, or Second PCI GPU to macOS guest?

    Posted Nov 22, 2023 07:36 AM

    eGPU requires thunderbolt, not PCIe as I recall - as far as I can remember, it wouldn't work with anything built into the machine.



  • 8.  RE: eGPU, or Second PCI GPU to macOS guest?

    Posted Nov 22, 2023 07:43 AM

    ahh ok, so it's specific to a GPU connected over a wire?



  • 9.  RE: eGPU, or Second PCI GPU to macOS guest?

    Posted Nov 22, 2023 04:27 PM

    I believe that's correct.  It's been a few years, so I may have this wrong, but I recall that there was a specific eGPU API that Fusion was tapping into, in order to pass the GPU to the guest.

     can you or someone from your team shed any light?  My memory is in the dark.  Can you use a PCIe GPU to pass directly to the guest?

     



  • 10.  RE: eGPU, or Second PCI GPU to macOS guest?

    Broadcom Employee
    Posted Nov 22, 2023 04:39 PM

    To be clear, there is no passing of thunderbolt or pci devices to a guest.

    eGPU only just runs the rendering engine. The guest will always and only see VMware SVGA II.

    So, when we detect an external, we run the mksandbox process there. It does the rendering and pipes the output to the SVGA device.

    It makes performance MUCH faster, but it doesn't do passthrough, still limited to DX11, etc.



  • 11.  RE: eGPU, or Second PCI GPU to macOS guest?

    Posted Nov 23, 2023 09:56 PM

    Could that work with a built-in (PCIe) GPU in a Mac Pro?  Or only real eGPU's?