VM Direct Access to External GPU

Discussion in 'Parallels Desktop for Mac Feature Suggestions' started by Hanterdro, Jul 26, 2017.

Tags:
  1. Hanterdro

    Hanterdro Bit Poster

    Messages:
    6
    It would be cool if the external GPU could be assigned to a guest VM with direct Hardware access.

    If this would be possible we could run the external GPU on a guest Windows with original drivers and native speed (and maybe out of the box DX 12) :)
     
    AdamHill, beeb, VasilijF and 18 others like this.
  2. Shathish@Parallels

    Shathish@Parallels Kilo Poster

    Messages:
    344
    Hello Hanterdro, we would request you refer this article http://kb.parallels.com/122807 to know more about how the Graphics card works on Parallels Desktop. Thanks, Shathish
     
  3. Hanterdro

    Hanterdro Bit Poster

    Messages:
    6
    If I would ask for something which would be working right now I didn't have to open a feature request... right? :)

    But your article talks about Crossfire and SLI.
    I asked for giving a guest system physical access to an external GPU with high Sierra via Thunderbolt 3.
     
  4. JohnS41

    JohnS41 Bit Poster

    Messages:
    2
    But on the new MacBooks, the Thunderbolt 3 Ports is connected with the PCI and not directly with the CPU. Therefore it should be possible to route a certain Thunderbolt Port directly to the VM
     
  5. NathanM3

    NathanM3 Bit Poster

    Messages:
    1
    +1 vote for this idea.
    Provide the option to grant the Guest OS native access to a discrete GPU (laptop) or GPU card (desktop) as an alternative to the virtual GPU. This should include support for Nvidia drivers (including CUDA and SLI), AMD ATI drivers (including Crossfire) as well as OpenCL and OpenGL.

    Please note, I reviewed http://kb.parallels.com/122807 before adding my vote and suggestion details.
     
    RoyceG and poshd like this.
  6. poshd

    poshd

    Messages:
    1
    MacBook,thunderbolt 3 port both can connect with the PCI so that u can directly route port to the VM.
     
    Last edited by a moderator: Jan 22, 2018
  7. LarryJ3

    LarryJ3 Bit Poster

    Messages:
    2
    I understand that you want to use display adapter resources to run a virtual machine. As a display adapter (or GPU as you call it) doesn't relate to the workings of a processor, not to speak of any support instructions for virtualisation, there is no effective way to use a GPU for CPU virtualisaion purposes.

    It's too specialized for computing graphics related things and thus doesn't even remotely have the feature set a CPU does.
     
  8. DavidW13

    DavidW13 Bit Poster

    Messages:
    5
    I think our CPU should support GVT-g, the kernel should support it, and Parallels Desktop should implement it.
     
  9. Mac Fan

    Mac Fan Bit Poster

    Messages:
    1
    Please add eGPU support
     
  10. EmilK2

    EmilK2 Bit Poster

    Messages:
    1
    Hi,
    Do you have plans for supporting a eGPU directly in a VM? Previosly, you have said that it depends of the VT-d on Mac, but do you know, if you or Apple has planned to support this eventually? Could really use it for the future development on my companys
     
    Last edited by a moderator: Jan 14, 2020
  11. DavidH66

    DavidH66

    Messages:
    1
    Qemu is a KVM that runs on osx, and I believe qemu in general has pci passthrough. Whether the end result is a workable way of running winxp with discreet graphics, I don't know. It sounds like a nightmare though.

    Not only are you working with a niche version of the KVM client on a (relatively) niche host os, if it works you now have to deal with getting it to work properly with XP, since windows support of recent discreet cards only goes back to 7.

    I can guarantee that the total time that it takes to get this working would exceed the sum of all reboots into bootcamp, especially on one of Apple's stupid quick ssds
     
  12. RobertS63

    RobertS63 Bit Poster

    Messages:
    1
    The feature you're looking for requires hardware support for IOMMU and Intel VT-d, both of which are factory deleted by Apple. Even if you install Linux on a Macbook Pro and set up IOMMU on a virtual machine, it wont work because the hardware feature was deliberately removed by Apple in favor of Apple's own low-level hardware interfaces such as Metal Graphics API and the hypervisor framework. This is beyond the scope of what Parallels can do
     
  13. Dmitry@Parallels

    Dmitry@Parallels Staff Member

    Messages:
    592
    Hi @EmilK2, currently there is not technical possibility to implement eGPU passthrough to a VM.
     
  14. EricV4

    EricV4 Bit Poster

    Messages:
    12
    Is it possible to passthrough an *internal* GPU in a Mac Pro with dedicated PCIe slots?
     
  15. Dmitry@Parallels

    Dmitry@Parallels Staff Member

    Messages:
    592
    Hi @EricV4, no, unfortunately, this is not possible on a Mac.
     
  16. ChristopherH22

    ChristopherH22

    Messages:
    1
    Hello!
    Not to be argumentative, but I think that your statements are inaccurate.
    These requests:
    These requests should be viable on a Mac Pro.
    Modern Intel CPUs all support VT-d, and I believe they are enabled on the current Mac Pro. Parallels could therefore utilize VT-d to pass a PCIe slot through to the VM. I am currently doing this on my home Windows desktop using Hyper-V.

    I am not sure if the M1's virtualization extensions are only the equivalent of VT-x or include the functionality of VT-d. Whether or not the future Apple Silicon Mac Pro can do PCIe passthrough to a VM and Parallels supports this will probably be the purchasing decision for me. I would absolutely love to run a Windows ARM VM with exclusive access to a gaming GPU. (Doesn't need to have support in Windows.)

    If I can't do that, I'll probably continue to do Windows desktops and Apple laptops because I don't want a separate desktop for gaming.
     
    EricV4 likes this.
  17. BryanK4

    BryanK4 Bit Poster

    Messages:
    1
    I need to run a medical diagnostic AI windows application that uses nVidia CUDA 2 drivers for acceleration. No graphics, just data and processing. Can't use AMD. Platform is a 10 core i9 Intel iMac 5K. Before I drop $1500 on a Thunderbolt 3 eGPU suitable nVidia card, I need to know if the CUDA calls will be routed to the nVidia over Thunderbolt 3. I have to run a Mac only image display system (OsiriX). Otherwise I will have to run and communicate with a separate Windows box, which entirely defeats the purpose of running Parallels.
     

Share This Page