You may have heard of the new support for external Graphics Processing Units (eGPUs) in the 10.13.4 update to the High Sierra version of macOS. What these promise to do is provide much faster image processing by transferring calculations from the internal GPU to an external GPU connected to a Mac via Thunderbolt 3.
NOTE: Only Thunderbolt 3 is fast enough to provide the performance necessary for eGPUs to be worthwhile. “eGPUs are supported on MacBook Pro notebooks released in 2016 and later, iMac computers introduced in 2017 and later, and iMac Pro. Your Mac must also have macOS High Sierra 10.13.4 installed.” (Apple)
Because external GPUs are not bound by the same size, heat and battery restrictions that govern what can be put inside a laptop, or even an iMac, theoretically, an external GPU should speed compute-intensive tasks like rendering.
However, while OS support is critical for this new technology to take off, it is not, in itself, enough. Here’s a quick status report on where stand, from the point of view of video and filmmaking.
WHO NEEDS THIS?
I can’t think of a single office application that would benefit from an eGPU. As well, simple media import, editing, a few dissolves and exporting won’t benefit enough from an eGPU to justify the cost.
Rather, eGPU technology is geared toward the power user. For example:
WHAT CAN YOU DO WITH IT?
Apple’s release notes state that we can use eGPUs to:
WHAT’S THE CURRENT STATUS OF THIS?
The good news is that the macOS now supports eGPUs and companies like Sonnet and OWC are currently shipping eGPU chassis.
The bad news is that the software we use also needs to support eGPUs. And, as of today, that’s a mixed bag.
For example, Final Cut Pro X currently supports eGPU in two areas. The first is VR, allowing you to connect an HTC VIVE headset to the video output of eGPU. This means you can edit 360° video and watch in real time through a VR headset on Thunderbolt 3 Mac computers — like the MacBook Pro — which wasn’t possible before. The other area is when using a secondary display. You can connect a second monitor to the video output of eGPU, freeing up the internal GPU for graphics tasks like rendering.
Regarding DaVinci Resolve, I understand that Resolve allows for processing graphics tasks on the eGPU, however, I’m not yet clear to what degree it supports eGPUs. I’ve reached out to the BMD team to learn more.
I contacted the folks at Adobe, who told me that, currently, they only see a small performance gain in Premiere when an eGPU is attached, and in other cases, no gain at all, which means they have work to do to get Premiere to take full advantage of this new technology.
Others report that while some performance improvements are very promising they also seem to have glitches from time to time (system freezes) and limits to what you can connect to your system via Thunderbolt 3 . Many configurations cause flashes on 4K displays or drop outs, as well as external drives coming offline.
My advice here is to not connect too many devices to one Thunderbolt channel (port) and to keep all eGPU cables as short as possible – for example, to 12″ – for best results.
WHAT SHOULD WE DO NOW?
Currently, patience is called for. Every developer of high-end graphics or video software is testing their software with an eGPU to see what they need to do to maximize performance. But this is tricky, deeply-technical stuff, so it will take a while for end-users to see results.
Also, Apple will be updating both developers and the macOS at the upcoming WWDC in June. I expect lots of news about further refinements then.
It’s my belief that eGPUs are the future of high-end graphics, but it is still evolving. As one developer friend wrote: “I think we can all agree that it’s the early days with eGPU and no question this will be huge for all of us once we see a few updates from Apple on 10.13.x and newer OSes, as well as continued updates from Adobe/FCPX/ BMD.”
In the meantime, I’ll keep you informed as I learn more.
Apple Explains eGPUs, along with recommended cards and chassis:
Ars Technica reviews the current state of eGPUs:
5 Responses to eGPU: Performance in Progress [u]
Thanks for this great blog post – it’s very timely, as I’m looking at getting a TB3 chassis for this exact same purpose (doing a lot with 360 video/VR).
Not to be nitpicking as this nitpick is not for the fainthearted, eGPUs have been available for Thunderbolt 2 for a while now. They provide significant improvements over stock video cards but only in very specific areas, mostly 3D rendering. Unfortunately it’s not plug and play, it involves hacking the cards and the OS. You can see rendering results at BareFeats.com going back for a few years. Most of the rendering real time improvements wouldn’t affect most FCPX or Premier users, for AE and Motion I can’t read the results properly enough to know. Whether in the long run an eGPU would extend the working life of a TB2 equipped computer for video editing remains to be seen. Certainly specific users will get worthwhile improvements. I researched the costs and came to the conclusion that it wasn’t worth the expense and hassle unless I could pinpoint a specific job that would benefit from it. Better to get a new computer that FCPX has already been optimized for.
You are quite correct. The BIG difference, and it is huge, is that the new support for eGPUs in High Sierra avoids all the hacking into the OS that earlier versions required.
Also, because eGPUs are now “mainstream,” there’s a market for developers to make the process of connecting and optimizing for eGPUs a lot easier because there are far more people to sell to.
I am a FCPX user, and I am currently running an AMD Vega 56 in a Sonnet eGFX 550 on a 15″ 2016 MacBook Pro, which has an internal dedicated Radeon Pro 455.
Just scrubbing and background rendering with simple effects applied is HUGELY improved with the eGPU over just the internal GPU, and is backed up by the GPU monitor showing both working together quite well.
So I would say many FCPX users could see some real benefit, not just 3D/VR and external 4K display output, etc.
Sadly, FCPX 10.4.2, still does not take advantage of the eGPU on export, even though 10.3.x did. Let’s hope an update soon fixes that, because that is still pretty lengthy and painful on my MacBook Pro.
Thanks for the update.