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. 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 2016 MacBook Pro with Thunderbolt 3 can both harvest the power of an external graphics card. The table below details all Mac computers with Thunderbolt connectivity.
|Thunderbolt 3 (USB-C)||32 Gbps|
|MacBook Pro (15-inch, Late 2016)
MacBook Pro (13-inch, Late 2016, Four Thunderbolt 3 Ports)
MacBook Pro (13-inch, Late 2016, Two Thunderbolt 3 Ports)
|Thunderbolt 2||16 Gbps|
|Mac Pro (Late 2013)
iMac (Retina 5K, 27-inch, Late 2015)
iMac (Retina 5K, 27-inch, Mid 2015)
iMac (Retina 5K, 27-inch, Late 2014)
iMac (Retina 4K, 21.5-inch, Late 2015)
iMac (21.5-inch, Late 2015)
iMac (Retina 4K, 21.5-inch, Late 2014)
iMac (21.5-inch, Mid 2015)
Mac mini (Late 2014)
MacBook Pro (Retina, 15-inch, Mid 2015)
MacBook Pro (Retina, 15-inch, Mid 2014)
MacBook Pro (Retina, 15-inch, Late 2013)
MacBook Pro (Retina, 13-inch, Early 2015)
MacBook Pro (Retina, 13-inch, Mid 2014)
MacBook Pro (Retina, 13-inch, Late 2013)
MacBook Air (13-inch, Early 2015)
MacBook Air (11-inch, Early 2015)
|iMac (27-inch, Late 2013)
iMac (27-inch, Early 2013)
iMac (27-inch, Late 2012)
iMac (27-inch, Mid 2011)
iMac (21.5-inch, Late 2013)
iMac (21.5-inch, Early 2013)
iMac (21.5-inch, Late 2012)
iMac (21.5-inch, Mid 2011)
Mac mini (Late 2012)
Mac mini (Mid 2011)
MacBook Pro (17-inch, Late 2011)
MacBook Pro (17-inch, Early 2011)
MacBook Pro (Retina, 15-inch, Early 2013)
MacBook Pro (Retina, 15-inch, Mid 2012)
MacBook Pro (15-inch, Mid 2012)
MacBook Pro (15-inch, Late 2011)
MacBook Pro (15-inch, Early 2011)
MacBook Pro (Retina, 13-inch, Early 2013)
MacBook Pro (Retina, 13-inch, Late 2012)
MacBook Pro (13-inch, Mid 2012)
MacBook Pro (13-inch, Early 2011)
MacBook Air (13-inch, Early 2014)
MacBook Air (13-inch, Mid 2013)
MacBook Air (13-inch, Mid 2012)
MacBook Air (13-inch, Mid 2011)
MacBook Air (11-inch, Early 2014)
MacBook Air (11-inch, Mid 2013)
MacBook Air (11-inch, Mid 2012)
MacBook Air (11-inch, Mid 2011)
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. eGPU.io Forum is the appropriate place to ask questions about your eGPU 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 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. 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’ll 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 need for expansion enclosures is at an all-time high. Below is a list of the most popular Thunderbolt eGPU enclosures currently available in early 2017.
|Thunderbolt 3 Enclosures||AKiTiO
|AKiTiO Node||Mantiz Venus|| PowerColor
|Razer Core||Asus ROG
XG Station 2
|Max PCIe bandwidth||32Gbps||32Gbps||32Gbps||32Gbps||32Gbps||32Gbps|
|PSU location-max power
|Graphics max power
|SATA-III disk port||✖||✖||✔||✔||✖||✖|
|USB 3.0 ports
|Other ports||DP||✖||✖||USB-C 3.1
||9.17 x 5.87 x 2.99
23.3 x 14.9 x 7.6
|16.85 x 8.94 x 5.71
42.8 x 22.7 x 14.5
|13.38 x 8.50 x 6.45
33.4.x 21.6 x 16.4
|15.75 x 9.53 x 6.77
40.0 x 24.2 x 17.2
|13.38 x 8.6 x 4.13
33.4 x 21.8 x 10.5
|17.95 × 10.94 x 6.22
45.6 x 27.8 x 15.8
|Max GPU length (in/cm)
||8.46 / 21.4||12.60 / 32.0
||13.00 / 33.0
||12.20 / 31.0
||12.20 / 31.0
||12.20 / 31.0
|eGPU.io user examples
||link & link||link||✖||link||link||link|
1 On macOS: TI82 specced enclosures require TB3-enabler, a kext system file modification tool, to allow eGPU detection.
2 Allows eGPU detection on Windows’ systems reporting “external GPUs supported: no” in the Intel Thunderbolt software.
|Thunderbolt 2 Enclosures||AKiTiO Thunder2||HighPoint 6361A||Sonnet Echo
Express SE 1
|OWC Mercury Helios
|Max PCIe bandwidth||16Gbps||16Gbps||16Gbps||16Gbps||16Gbps||16Gbps|
|PSU location-max power
|Graphics max power||25W||??||25W||75W||150W||~290W|
||9.17 x 5.87 x 2.99
23.3 x 14.9 x 7.6
|10.29 x 6.49 x 2.28
26.1 x 16.5 x 5.8
|8.63 x 5.63 x 3.50
22.0 x 14.3 x 8.85
|9.21 x 4.53 x 2.91
23.4 x 11.5 x 7.4
|15.94 x 10.20 x 3.82
40.5 x 25.9 x 9.7
|14.60 x 7.87 x 4.33
37.1 x 20.0 x 11.0
|eGPU.io user examples||link & link||✖||✖||✖||✖||✖|
I’ve been using the AKiTiO Node which is a ready-to-go eGPU enclosure. I 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.
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.0 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 macOS while Nvidia GeForce graphics cards (900s series and older) use Nvidia web drivers. Running automate-eGPU.sh v1.0.0 script will either load the appropriate Mac OS drivers for your AMD GPU or install web drivers for your Nvidia GPU. Here is the list of graphics cards, sorted highest performance to lowest, that I’ve found to work with macOS Sierra 10.12.
|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.
automate-eGPU.sh v1.0.0 Instructions
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:
curl -o ~/Desktop/automate-eGPU.sh https://raw.githubusercontent.com/goalque/automate-eGPU/master/automate-eGPU.sh cd ~/Desktop 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 macOS 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.
Best of luck on your external graphics card build! Please visit the eGPU.io forum to ask questions and share your success stories.