September 2017 Update: This setup guide is applicable for macOS 10.9 to 10.12 only. For macOS 10.13 High Sierra eGPU overview, please read this article.
October 2017 Update: If you plan on using a Thunderbolt 3 MacBook Pro with Windows, please read our eGPU Boot Camp setup guide.
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 eGPU 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 eGPU. 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 eGPU 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 eGPU performance. In this table, Nando explains max bandwidth for eGPU usage on the Late 2016 MacBook Pro.
Before getting too excited about your Mac’s compatibility with eGPU, 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 eGPU setup.
June 2017 Update: This setup guide is applicable for Mac OS versions 10.9 to 10.12 only. Apple recently announced external graphics support in its next macOS version, 10.13 High Sierra. If you are running High Sierra beta, the only graphics card with official eGPU support is Radeon RX 580. This GPU shares PCI ID 67DF with RX 470, RX 480, and RX 570 so some of those cards may work in 10.13 as well.
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 eGPU. For the time being, these three steps must be completed to have a fully functional eGPU:
- 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 eGPU 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 eGPU 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||mini PCIe||Expresscard 2.0||NGFF/M.2||▲Top|
|Thunderbolt 3 |
350 | 550 | DEV
|AKiTiO Node Pronew||Mantiz|
XG Station 2
|Included GPU1||✖|| ✖ | ✖ | RX580||✖||✖||✖||✖||✖||✖||✖||RX560 | RX570||GTX1070 | GTX1080|
|$224 | $349 | $499|
£265 | £309 | – – –
€299 | €375 | – – –
|$449 | $599|
£508 | £688
€564 | €765
|$570 | $700|
£578 | £773
€666 | – – –
|Max PCIe bandwidth||32Gbps||32Gbps||32Gbps||32Gbps||32Gbps||32Gbps||32Gbps||32Gbps||32Gbps||32Gbps||32Gbps|
|PSU max power||400W||350W | 550W | 350W ||500W||500W||500W||550W||300W||500W||680W||160W | 220W||450W|
|GPU max power2||375W||300W | 375W | 225W||300W||375W||400W||375W||300W||375W||500W||–||225W|
|Power delivery (PD)3||15W||15W | 87W | 60W||60W||60W||60W x2||87W||15W||60W??||100W||45W||100W|
|USB-C controller4||TI83||TI83||TI83||TI82 or TI83||TI83||TI83||TI83||TI83||TI83||TI83||TI83|
|TB3 USB-C ports56||1||1||1||1||2||1||2||1||1||1||1|
|Ports max bandwidth6 ||–||–||5Gbps||5Gbps||10Gbps||5Gbps||10Gbps||5Gbps||5Gbps||–||5Gbps|
|USB3.0 ports (+C type)6||✖||✖||4+1||4+1||✖||5||✖||4||4||✖||3|
|Other ports||✖||✖||✖||✖||DP||✖||✖||✖||USB-B 3.0||3xDP,HDMI||QC,HDMI,DP,2xDVI-D|
|Size (in/mm, LxWxH)|
[ visual comparison ]
|16.85 x 5.71 x 8.94|
428 x 145 x 227
|13.38 x 7.25 x 8.00|
340 x 185 x 202
|15.75 x 7.87 x 7.87|
400 x 200 x 200
|15.75 x 6.77 x 9.53|
400 x 172 x 242
|14.06 x 5.31 x 10.47|
357 x 135 x 266
|12.99 x 6.42 x 8.46|
330 x 163 x 215
|14.60 x 4.30 x 7.87|
371 x 110 x 200
|13.38 x 4.13 x 8.60|
334 x 105 x 218
|17.95 × 6.22 x 10.94|
456 x 158 x 278
|6.00 x 2.00 x 5.12 |
152 x 51 x 130
|8..35 x 3.78 x 6.38 |
212 x 96 x 162
|Max GPU len (in/cm)||12.60 / 32.0||12.20/31.0||11.42/29.0||12.20 / 31.0||12.60 / 32.0||13.00 / 33.0||12.60/32.0||11.81/30.0||12.20 / 31.0||–||6.65 / 16.9|
|Updated firmware7||B1-25+4.3.3✔||25.2 | 25.2 | 25.1 ✔||25.25✔||25.101✔||✔||25.1✔||25.1✔||✔||v25 ✔||25.1 ✔||F1.0 | ✔|
|Vendor page||link||link||link||link||link||link||link||link||link||link||link | link|
|Review||link||link||link||user||preview||link||link||preview||user||link||link | link|
1 For macOS High Sierra: AMD RX480/580 & these are supported; Nvidia support can be added with an app workaround.
2 Meet or exceed your intended video card’s peak power requirements. See TechPowerUp card reviews, eg: GTX1080Ti to find this.
3 Meet or exceed your TB3 notebook’s charger wattage for the TB3 enclosure to be a single-cable solution that includes charging. eg Macbook USB-C chargers.
4 On macOS: TI82 enclosures require TB3-enabler, a kext system file modification tool, to allow eGPU detection.
5 2nd TB3 port can be used for daisy chaining, as a 10Gbps USB-C 3.1 or Displayport. Note: Intel disallows a 2nd TB3 port on eGPU enclosures. It’s only for PCIe enclosures.
6 ports’ use reduces eGPU bandwidth by up to 31.2% @10Gbps, 15.6% @5Gbps. Except for (i) Displayport devices (ii) XG Station 2 that hosts ports via a separate USB-B cabled USB switch.
6 If used on a TB2/1 system via a US$49 Apple TB3-TB2 adapter, USB ports are not visible in Windows (inc Aorus’ fan control). They do appear in macOS. Ref: theitsage.
7 Allows eGPU detection in Windows for systems reporting “external GPUs supported: no” in the Intel Thunderbolt software.
|Thunderbolt 3||Thunderbolt 2||mini PCIe||Expresscard 2.0||NGFF/M.2||▲Top|
|Thunderbolt 2 Enclosures||AKiTiO Thunder2||HighPoint RS6361A||Sonnet Echo|
Express SE 1
|OWC Mercury Helios||Sonnet Echo|
|Price US$||$202 & &|
|Max PCIe bandwidth||16Gbps||16Gbps||16Gbps||16Gbps||16Gbps||16Gbps|
|PSU location-max power||external-60W||external -50W||external -60W||external-120W||internal-300W||internal-300W|
|Graphics max power||25W||25W||25W||75W||150W||~290W|
|Size (in/mm)||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
|Implementations||link & link||link||✖||✖||✖||✖|
We’ve been using the AKiTiO Node which is a ready-to-go eGPU enclosure. We reviewed this Thunderbolt 3 enclosure and highly recommend it for first-time eGPU 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 eGPU feature for Mac, so this step will need to be completed every time you update Mac OS.
Step 3: eGPU 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 eGPU 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 eGPU power supplies and cables.
External Graphics Card Setup
Once you have chosen and put together all hardware components for your Mac eGPU 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 eGPU 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 eGPU 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 eGPU 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 eGPU setup 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 eGPU 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.