April 2018 Update: Apple officially released external graphics card support to the public with 10.13.4 on March 29th, 2018. This update made external GPU functionality plug-and-play for Thunderbolt 3 Macs when paired with supported AMD eGFX. The bad news is the exclusion of older Thunderbolt 1 and Thunderbolt 2 Macs. The good news is we found a workaround, please read our State of External Graphics Card in 10.13.4 for more details.
October 2017 Update: If you plan on using a Thunderbolt 3 MacBook Pro with Windows, please read our External GPU Boot Camp setup guide.
September 2017 Update: This setup guide is applicable for macOS 10.9 to 10.12 only. For macOS 10.13, please read our High Sierra External GPU overview.
Our goal with this post is to provide a comprehensive beginner’s setup guide so that Mac users can build an external graphics card (eGPU) for their computers. As new Macs and Thunderbolt external GPU enclosures become available, we will update this guide with the latest information. To get started, you’ll need the following hardware:
- Thunderbolt-equipped Mac computer
- Thunderbolt 3 or Thunderbolt 2 PCIe enclosure
- Nvidia or AMD PCIe graphics card
- Power supply based on your enclosure & GPU pairing
- External monitor with either HDMI, DVI, or DisplayPort
- HDMI headless display adapter (optional)
External graphics cards work with all Thunderbolt-equipped Macs. A 2011 MacBook Pro with the first generation Thunderbolt and the latest 2017 MacBook Pro with Thunderbolt 3 can both harvest the power of an external GPU. In our experience, a Mac with only integrated graphics is easier to set up with an external GPU. Mac models with an asterisk (*) denote they have discrete graphics as a standard feature. The table below details all Mac computers with Thunderbolt connectivity.
In order to get the most performance out of an external GPU setup, we recommend using a quad-core processor Mac. From the limited resources we’ve gathered to date, the Late 2016 15″ MacBook Pro is currently the best host for external GPU implementation. We found Apple attached the PCIe lanes directly to the quad-core i7 CPU in its newest 15″ MacBook Pro laptops.
This is unlike the majority of Thunderbolt computers which route the PCIe lanes through the Platform Controller Hub (PCH). The disadvantage of having the Thunderbolt connection through the PCH is that the PCH shares bandwidth with other internal components (e.g., PCIe flash storage, network cards, USB ports) and potentially limits the external GPU performance. In this table, Nando explains max bandwidth for external graphics card usage on the Late 2016 MacBook Pro.
Before getting too excited about your Mac’s compatibility with external GPU, you should know that Apple never announced external graphics card capabilities as an official feature on its computers. Building and using an external graphics card with your Mac is totally unsupported by Apple; the Genius Bar will definitely turn you away if you haul your external GPU enclosure into the Apple Store. Our Mac Setup Forum is the appropriate place to ask questions about your external graphics card setup.
External graphics card development in Mac OS has been a process of modifying system files to enable support for external graphics cards. Future versions of Mac OS may break the existing procedure to enable external GPU. For the time being, these three steps must be completed to have a fully functional external graphics card:
- Step 1 – Communication between the Thunderbolt enclosure and the computer.
- Step 2 – Recognition in Mac OS that the enclosure contains a graphics card.
- Step 3 – Installation and loading of the appropriate drivers for the GPU in Mac OS.
Step 1: Thunderbolt Communication
Most Thunderbolt enclosures with a PCIe slot are able to communicate with Mac OS (10.9 to 10.12). A Thunderbolt 2 enclosure such as the AKiTiO Thunder2 works directly with all first- and second-generation Thunderbolt Macs since the physical connector is the same and Thunderbolt 2 (TB2) is backward compatible with Thunderbolt (TB1). The introduction of the Late 2016 MacBook Pro brought Thunderbolt 3 (TB3) and a new type of connector in the physical shape of USB-C. Apple Thunderbolt 3 (USB-C) to Thunderbolt Adapter allows backward and forward compatibility. With this adapter, TB1 and TB2 Macs can use TB3 enclosures, and TB3 Macs can use TB2 enclosures.
Choosing a Thunderbolt 2 enclosure is very easy because there are only a handful of them. The AKiTiO Thunder2 PCIe Expansion Box is the most affordable and commonly used for external GPU builds. Other suitable TB2 enclosures for external graphics card setup are: OWC Mercury Helios, Sonnet Echo Express III-D, Netstor NA211TB-LD.
You have many more options for a Thunderbolt 3 enclosure. Since the arrival of the Late 2016 MacBook Pro in October 2016, it seems a new Thunderbolt 3 enclosure comes out every month. Intel is in high gear to promote the Thunderbolt 3/USB-C connectivity standard. Due to the thinner and lighter design language across the industry, the demand for expansion enclosures is at an all-time high. Below is a list of the most popular Thunderbolt external GPU enclosures currently available in 2017 (most up-to-date enclosure information at External GPU Buyer’s Guide: Top 2017 eGPU enclosures compared).
|Thunderbolt 3||Thunderbolt 2||▲Top||Expresscard 2.0||NGFF/M.2||▲Top|
|Thunderbolt 3||Thunderbolt 2||▲Top||Expresscard 2.0||NGFF/M.2||▲Top|
|Thunderbolt 2 Enclosures||AKiTiO Thunder2||HighPoint RS6361A||Sonnet Echo
Express SE 1
|Max PCIe bandwidth||16Gbps||16Gbps||16Gbps||16Gbps||16Gbps||16Gbps|
|PSU max power-location
|Graphics max power||25W||25W||25W||75W||150W||~290W|
||9.17 x 2.99 x 5.87
233 x 76 x 149
|10.29 x 2.28 x 6.49
261 x 58 x 165
|8.63 x 5.63 x 3.50
220 x 143 x 885
|9.21 x 4.53 x 2.9
234 x 115 x 74
|15.94 x 3.82 x 10.20
405 x 97 x 259
|14.60 x 4.33 x 7.87
371 x 110 x 200
|User builds||link & link||link||✖||✖||✖||✖|
|User builds macOS||link & link||link||✖||✖||✖||✖|
We’ve been using the AKiTiO Node which is a ready-to-go external GPU enclosure. We reviewed this Thunderbolt 3 enclosure and highly recommend it for first-time external graphics card builds. The AKiTiO Node is currently the most affordable solution and has space for almost every graphics card on the market including those with liquid cooling. It also has a built-in 400W power supply. Another important feature it has is the Texas Instrument TI83 USB-C controller. Thunderbolt 3 enclosures with TI83 controller are preferable due to native support in macOS Sierra 10.12.
Another great option is the Mantiz Venus Thunderbolt 3 enclosure. It has more features and gets our recommendation for pairing with the Late 2016 MacBook Pro. With 5x standard USB 3.0 ports, 1x Ethernet port, 1x SATA III connection, and 87W charging power through a single Thunderbolt cable, the Mantiz Venus is the ultimate Thunderbolt 3 eGPU docking station.
All Thunderbolt 2 enclosures as well as Thunderbolt 3 enclosures with the older TI82 controller are not supported and have a harder time communicating with macOS. Kid2010 on Netkas forum discovered this is a software block Apple put in place starting with 10.12.1. Fortunately, he found a workaround to bypass this restriction. If you see the “Unsupported” message in System Information > Thunderbolt device tree for your Thunderbolt enclosure, download and run TB3-Enabler. After running this script, your Thunderbolt enclosure will show “Supported” and be able to communicate with macOS. Mac OS 10.9 to 10.11 does not have this Thunderbolt software block.
Step 2: External Graphics Card Recognition
The next step is to make your Mac recognize there’s an external GPU attached to the enclosure. Goalque discovered the workaround and developed automate-eGPU script to make this process easy. The script modifies existing Mac OS system files to enable the recognition of an external graphics card connected through a Thunderbolt enclosure. automate-eGPU.sh v1.0.1 is the latest version which supports Mac OS 10.9 to 10.12. As mentioned earlier Apple has not officially released this external GPU capability for Mac, so this step will need to be completed every time you update Mac OS.
Step 3: External GPU Driver Installation
Besides enabling the recognition of external graphics card in Mac OS, automate-eGPU script also facilitates the graphics card driver installation process. Some AMD Radeon graphics cards have native and partially working drivers in Mac OS while Nvidia GeForce graphics cards use Nvidia web drivers. Running automate-eGPU.sh v1.0.1 script will either load the appropriate Mac OS drivers for your AMD GPU or install web drivers for your Nvidia GPU.
On April 11th, 2017 Nvidia released the long-awaited web drivers for Pascal graphics cards. The drivers are currently beta but nevertheless allow Macs to use GTX 10 series GPUs. Here is the list of graphics cards, sorted newest to oldest, that we’ve found to work with macOS Sierra 10.12.
|Nvidia GeForce||AMD Radeon|
|GTX Titan X Pascal||Pro WX 7100|
|GTX 1080 Ti||Pro WX 5100|
|GTX 1080||Pro WX 4100|
|GTX 1070||RX 580|
|GTX 1060||RX 570|
|GTX 1050 Ti||RX 560|
|GTX Titan X||R9 Fury X|
|GTX 980 Ti||R9 Fury / R9 Nano|
|GTX 980||RX 480|
|GTX 970||RX 470|
|GTX 960||RX 460|
Juice for your Apple
The most common problems with external graphics card builds arise from an improperly paired power supply. Without adequate power, it will be a headache maintaining a functional external graphics card. It’s best to go with a Thunderbolt enclosure that has a built-in power supply with at least 350W. For Thunderbolt enclosures without a built-in PSU, you can either use a Dell DA-2 220W power brick (for GPUs requiring less than 150W TDP) or a 400W+ desktop power supply. The use of an external power supply requires power cable modifications which can be done through soldering of existing cables or buying pre-made cables. eGPU.io Forum has a section with discussions on external GPU power supplies and cables.
External Graphics Card Setup
Once you have chosen and put together all hardware components for your Mac external graphics card build, the next step is software installation in Mac OS. At this time, you cannot connect or disconnect the external graphics card while your Mac is running. Connecting your Mac to the external graphics card enclosure requires a cold boot. Disconnecting the external GPU enclosure while the computer is running will freeze the system and cause a kernel panic. Make sure to always shut your Mac down before unplugging the Thunderbolt cable.
With your Mac turned off, connect the Thunderbolt cable from your external GPU enclosure to your Mac’s Thunderbolt port. Turn the computer on once you’re hooked up. Open Terminal to download and run automate-eGPU.sh [cut-and-paste this one long commandline]
cd ~/Desktop && curl -o automate-eGPU.sh https://raw.githubusercontent.com/goalque/automate-eGPU/master/automate-eGPU.sh && chmod +x automate-eGPU.sh && sudo ./automate-eGPU.sh
These extra steps are required for AMD cards (macOS 10.12.2 and newer):
- Shut down after the completion of automate-eGPU.sh
- Disconnect eGPU
- Boot into macOS, hot plug, rerun: sudo ./automate-eGPU.sh
- If your Mac is newer than Late 2014, you might have to turn on -a mode: sudo ./automate-eGPU.sh -a. If the first try is not successful -a mode turned on, turn it off (sudo ./automate-eGPU.sh -m), start from the beginning and skip this step.
- Shut down
- If you have a TB3 Mac, a USB-C adapter (such as USB-C to USB, USB-C to DP) plugged in the other TB3 port is necessary for now.
- Connect the external GPU and boot into macOS, and soon you’ll hear the “whoosh” sound!
If all goes well, you should be able to see your graphics card running with Metal support in System Information » Graphics Cards/Displays. Connecting your external graphics card to an external display will work similarly to this AKiTiO Node working with a Late 2016 MacBook Pro 15″.
Once your external graphics card is up and running, you can continue using it with an external monitor or force the external graphics card to accelerate the internal display of your Mac. If you go with the latter option, you will need a ghost video adapter such as fit-headless 4K HDMI adapter. The other one we found to be working are Bee Eater 4K Display Emulator.
eGPU-accelerated Internal Display How-to
With your external graphics card running in Mac OS, follow these steps posted by Goalque to get internal display acceleration:
- Download and run Spectacle
- Download and run DisableMonitor
- Go to Mac OS System Preferences » Dock » Position on screen » Left (if you arrange your ghost display to the right of the internal display)
- Plug the ghost display adapter in and set it as the primary display
- Set the resolution to match internal screen in DisableMonitor*
- Launch an app such as Valley benchmark from the Dock (there you see its child window)
- Switch “Next Display” or “Previous Display” with a keyboard shortcut (CONTROL ⌃ OPTION ⌥ COMMAND ⌘ LEFT ◀︎ or RIGHT ▶︎ ARROW).
*Spectacle switches apps between displays in both Windowed and Fullscreen mode. Matching the ghost display’s resolution with the internal display using DisableMonitor is therefore recommended.