Macbook Pro (late 2016) egpu passthrough

Discussion in 'Windows Virtual Machine' started by AlecB, Oct 30, 2016.

  1. AlecB

    AlecB Bit poster

    Messages:
    7
    Hi all.

    The new Macbook Pro 15" comes with 4x thunderbolt 3 connectors. That gives each of these ports 4x pcie 3.0 lanes. Will parallels allow for egpu passthrough to a guest? I was thinking steam running on a Windows 10 guest. Wanted to confirm this setup before I got myself an egpu chassis.

    Thanks!
     
  2. AlekseyM

    AlekseyM Product Expert

    Messages:
    210
    I'll let the actual team answer, but I'm 99.9% positive the answer is no. Unlike USB, there is no intel technology to emulate or passthrough thunderbolt. USB-C probably, but not TB.
     
  3. AlecB

    AlecB Bit poster

    Messages:
    7
    Hold up AlekseyM,
    Isn't Thunderbolt 3 implemented over PCI? Shouldn't vt-d/DMA work, or am I completely off on the standard/implementation? I completely understand if there are no drivers yet. That's completely expected. But you're saying that there's no way to map a thunderbolt device to a VM?
    Thanks in advance
     
  4. AlekseyM

    AlekseyM Product Expert

    Messages:
    210
    I vt-d does support PCI, but it supports it at the hardware level. I don't think either the Mac or parallels has anything even remotely close to assigning an entire pci bridge to a virtual machine. I've seen vSphere and Hyper V do it, but understand when you do, you take it away from the host.

    So technically yes, possible. But the complexity behind it will require Apple's support, not just Parallels. Thus 99.9% sure it won't happen.

    Are you hoping for GPU passthrough?
     
  5. AlecB

    AlecB Bit poster

    Messages:
    7
    Definitely. It would be a huge benefit to leverage an external GPU in a guest. It would enable portable VR on a mac, and allow me to play games while waiting for shells/sessions to complete and without having a 30lb copper heat sync on my lap.
    I wouldn't think shared control would be a good model for this. I just want to map a GPU from a thunderbolt port straight through to the guest.
     
  6. AlekseyM

    AlekseyM Product Expert

    Messages:
    210
    Are you thinking on a laptop or desktop?
     
  7. AlecB

    AlecB Bit poster

    Messages:
    7
    The 15" MBP (late 2016) specifically. The idea was to have a portable workstation that I can dock with a GPU when necessary. MBP looks great, the but the new TB3 connectors are of limited benefit if you can't connect additional pci peripherals IMO. Mechanically, they're actually inferior to USB-A.
    In an ideal setup, I could take an egpu chassis with me when I have to travel. Most of the time I work from my couch or desk, and gaming laptops are heavy, large, noisy and hot; cumbersome, in a word. Using a mounted monitor and remote machine have other drawbacks, but I've tried that as well. The TPD for a gpu being contained in a separate chassis from the keyboard/monitor is really a game changer.
     
  8. AlekseyM

    AlekseyM Product Expert

    Messages:
    210
    You can do that. Just not with macOS. Everything you are describing is possible with windows, but absolutely not possible with Mac. Parallels or no parallels.

    Check out the razor blade. Very sweet little machine and comes with exactly what you are thinking.
     
  9. AlecB

    AlecB Bit poster

    Messages:
    7
    Your suggestion cedes a large differentiator/market share for parallels. Thanks for the clear cut technical answers though.
     
  10. AlekseyM

    AlekseyM Product Expert

    Messages:
    210
    You're welcome.

    Not as big as you think. Keep in mind that laptops/desktops are now becoming a niche. Macs are a niche to that niche. And those that use virtualization on a Mac is even a smaller percentage of that niche. In the end, the amount of work required to make it happen isn't worth the benefit. It would be very interesting though. I can imagine how good games would be :)
     
  11. AlecB

    AlecB Bit poster

    Messages:
    7
    Just reconsidered my purchase. So with Razer, I'm stuck with either dual core (stealth), slower cpu, no MacOS, fewer tb3 ports (blade), or a hulk that draws a ton of power and may as well keep the gpu in the TPD (pro).
    Still going to get the MBP, but I guess I'll look into bootcamp. It sounds like people have been able to get the proposed setup working under Windows: https://www.reddit.com/r/apple/comments/5a6z8s/my_experience_with_the_new_13_mbp_and_the_razer/
    Disappointing that Apple doesn't have a strategy for this on Darwin/MacOS.
     
  12. OlegK1

    OlegK1 Junior Member

    Messages:
    11
    So, as far as I understood, this is not going to work? Sad..
     
  13. AlecB

    AlecB Bit poster

    Messages:
    7
    Non-technical synopsis: You can plug a GPU into a port and MacOS may even recognize it. Parallels and MacOS won't let you use it in a VM though. You have to go with bootcamp to get this working currently.
     
  14. lx_

    lx_ Bit poster

    Messages:
    1
    I see that Hyper-V 2016 can make PIC-E passthrough into a virtual machine, so does Mac support this feature now?
    I want to make my external GPU card (connect by thunderbolt) passthrough into virtual machine to speedup neural network training.
     
    SergioO and AlecB like this.
  15. SergioO

    SergioO Bit poster

    Messages:
    1
    lx_

    Same wish here, did you find any solution to do that you propose?

    In my researches there is no option to do that.

    Best Regards!
     
  16. AlekseyM

    AlekseyM Product Expert

    Messages:
    210
    So High Sierra officially supports eGPUs now. But Parallels does not do a passthrough. So far, only hyperv, and vSphere, neither really consumer hypervisors (arguably hyper v is).

    Have you thought of cloud computing for that kind of thing? Paperspace.io is a good one that you can select a GPU, and the other one is actually Nvidia's cloud gaming platform. Imagine GTX online. Only supports Steam games and in beta, but overall, I'm impressed. Like having a GPU without the GPU. All of those cost monthly of course, but just some ideas since no support for GPU.
     
  17. alexg

    alexg Parallels Developers

    Messages:
    536
    Pass-trough eGPU to a virtual machine on a Mac is technically impossible. There should be a special macOS driver (provided by GPU vendor) or Vt-d support implemented in macOS. There is neither one nor the other.
     
  18. BartekP

    BartekP Bit poster

    Messages:
    1
    Is it possible you talk to Apple or Nvidia/ATI so they write such driver or maybe you can do it yourself?
     
  19. alexg

    alexg Parallels Developers

    Messages:
    536
    Unfortunately not.
     
  20. NickK10

    NickK10 Bit poster

    Messages:
    5
    So wait a minute, let me get this straight...even if vt-d is supported by your cpu and hardware, because there's no actual support for vt-d in OS X itself still in 2020, there's no way to assign ANY thunderbolt devices (lets say a 32gb fibre channel host adapter) directly to a Parallels VM? That's pretty terrible.
     

Share This Page