When Apple released macOS High Sierra 10.13.4 on March 29, fully supported external graphics-card functionality was one of the flagship features.
Most Macs ship with discrete or integrated GPUs—power-saving cousins to the graphics cards found in desktop PCs—that emphasize efficient power and heat management as much as they do performance. External graphics cards (eGPUs) allow users to connect those powerful desktop graphics cards to their computers via the Thunderbolt 3 ports on modern Macs.
That could solve many of the frustrations some users have with the Mac platform, like the lack of an upgrade path for professional-use machines that depend on graphics power and lackluster gaming performance in the latest games.
At Apple's Worldwide Developers Conference (WWDC) last year (and when the company unveiled the iMac Pro in December), it claimed that eGPUs would be a good way to add multiple GPUs for demanding work for which just one is not sufficient or to upgrade performance as the iMac Pro's included GPU ages.
When we talked with Survios, a studio that has developed VR software for the Mac platform, we learned that slow progress in the MacBook Pro and standard iMac integrated and discrete GPUs is holding back most Macs from supporting VR. Survios only supports the iMac Pro's built-in GPU.
Mac gamers have long dealt with GPUs that don't keep the pace with demands from the latest PC games, so eGPU enthusiast communities have popped up around the Web in places like the MacRumors forums and eGPU.io. There's pent-up demand for better graphics performance on Macs, and eGPUs offer some hope.
And Apple and Intel's Thunderbolt 3 interface (found in the highest-end Macs from 2016 and 2017, so far) offers theoretical speeds of up to 40Gbps. That's a big improvement over the previous interface, and it's arguably finally fast enough to finally make eGPUs viable without dramatic performance disadvantages compared to traditional PCI-e interfaces.
All that is to say that the time is ripe for eGPUs to come to the Mac. With the new official support in macOS 10.13.4, Apple is finally helping consumers try eGPUs out.
We tested an eGPU enclosure with a Thunderbolt 3-equipped MacBook Pro, and found that, in most applications, performance didn't disappoint. Unfortunately, we also found limitations and software support inconsistencies that prevent the Mac eGPU dream from being fully realized at this time.
Setting up and managing the eGPU
Setup is simple. Once you have an external enclosure and a desktop graphics card, you just slot the card into the PCI-e slot in the enclosure just like you would on a desktop computer's motherboard. Then you plug the enclosure into the wall, connect the Mac to the enclosure with a Thunderbolt 3 cable, connect the enclosure to your external display with the cable of your choice, and turn it all on.
Once you've logged into macOS, you'll see a new icon in the menu bar on the top right. Clicking it will show you which eGPUs are connected, and you can click on them to disconnect them. If you don't do this before unplugging the enclosure, you'll get an error message similar to the one you'd get if you unplugged an external drive without ejecting it, but a hard crash is unlikely.
You also don't have to reboot your Mac to enable or disable the eGPU. If you look at the About This Mac panel, you should see that the GPU in the enclosure is listed under graphics.
That's it. You don't have to install any software or drivers, and you don't have to tweak any settings. There's not even anything in System Preferences acknowledging the eGPU's presence, much less offering you options to change.
If you want, you can connect an HTC Vive VR headset to the eGPU enclosure. The eGPU works in clamshell mode (when your laptop lid is closed), and it should automatically go to sleep when your Mac does. Finally, provided the eGPU's power supply offers enough wattage to power both the GPU and your Mac, you don't have to use one of your Thunderbolt 3 ports for your Mac's power adapter; supported enclosures will provide power to your Mac.
There are still major limitations
There are still lots of things that you can't do with eGPUs, and some of them are major. Apple has supported eGPUs by keeping the focus extremely narrow and by restricting which software and hardware is supported.
Some of these limitations are understandable and expected, but others make this feel like an incomplete rollout—a stopgap until full eGPU support hopefully comes later. Apple will need to address those less understandable ones for this to be the normal upgrade path for Mac users.
Thunderbolt 3 is required
Apple requires both your Mac and your eGPU enclosure to have Thunderbolt 3 ports. This wasn't always the case; early betas of 10.13.4 allowed you to plug in an eGPU with Thunderbolt 2 on a Mac Pro, for example. However, that capability was (probably deliberately) absent from the final release of that OS update.
That limits eGPU support to MacBook Pros from October 2016 forward, the iMac Pro, and iMacs from June 2017 and later. In other words, only the most recent Apple hardware supports eGPUs. This is disappointing, but perhaps unavoidable if we're being realistic about it. Thunderbolt 2 has a max throughput of 20Gbps; that's half what you get with Thunderbolt 3. Apple might have deemed Thunderbolt 2 insufficient for smooth performance.
The eGPU community has produced scripts that re-enable this. You just need to get your feet (very) wet to make it happen, and since it's not supported, an ideal experience is far from guaranteed. Plus, Thunderbolt 1 and 2 are arguably just not fast enough to provide you with satisfactory performance benefits.
Nvidia graphics cards are not supported
Only AMD graphics cards are supported, so if you have an Nvidia GPU, you're out of luck without going through some unsupported hoops. This is disappointing, as many users deem Nvidia GPUs to be preferable for games—although much of that is because of Nvidia's strong Windows drivers, which doesn't apply here.
While we're not happy about this, we're also not surprised: every current Mac that has a GPU solution other than Intel's integrated graphics uses AMD. Some earlier models, like the 2012 Retina MacBook Pro, used Nvidia graphics and are still supported by Apple, but they also don't have Thunderbolt 3, so eGPUs are not an option for them. Neither Apple nor Nvidia offer official video drivers for recent Nvidia cards.
The eGPU enthusiast community has also developed some hack-y solutions for this, but again, that's far from ideal.
Theres no support in Boot Camp
Apple's Boot Camp software makes installing and running Windows relatively painless; it provides the latest video drivers and more for your Mac in Microsoft's operating system. Unfortunately, Boot Camp does not currently include support for eGPUs in Windows.
This limitation really stings, because outside of professional and creative applications, most people who want eGPUs want them to play modern games on Apple hardware, and that experience is often best under Windows. Failure to support this means one of the big selling points of eGPUs is not addressed by Apple's current implementation.
As with the previous two limitations, you can still make it happen with some technical knowledge and online resources. But frankly, the necessary process is an absolute nightmare. The majority of users don't have the knowledge, confidence, or desire to pull this off, and even those who do will have to invest a fair bit of time to achieve an ultimately suboptimal experience.
Built-in displays usually cant be powered by the eGPU
The eGPU solution in macOS 10.13.4 works by outputting the video over Thunderbolt 3 to an external enclosure, which then sends the image to an external display. Connecting the Mac to the enclosure without an external display does nothing in all circumstances we tested—the OS recognizes that the GPU is there, but it still runs everything off of the laptop's own discrete or integrated GPU until an external display is connected to the enclosure.
There are a few clarifications worth noting here, though. First, this is not a hardware limitation. People on the eGPU.io forums have successfully gotten the internal display working on the internal display in Windows (with a lot of work). Second, Apple's support documentation says that third-party software developers could choose to support this for certain applications. In fact, we saw test units of the iMac Pro running Cinema 4D in macOS with eGPUs on the iMac Pro's internal display at an Apple event in December. So we expect this one to be addressed. This can also be accomplished with a hack, but it's pretty wonky.
Next up, let's talk performance.