2016 15" MacBook Pro (RP450) [6th,4C,H] + RX 580 @ 32Gbps-TB3 (Sonnet Breakaway 350D) + macOS 10.13.2 & Win10 [Tomás García]
The time has come to post my guide for eGPU success with a MacBook Pro. After some testing, fixes and googling stuff I have reached stability in this set-up. Before the usual template I will give you guys some context on why I have decided to go on this kind of set-up.
New year, new goals, new machine. I had decided last year to change my computer, after trying lots of set-ups. Desktop and tablet, laptop only, desktop only. However, I had never liked those at all. I wanted a Mac, as I have been a Mac user for a long time. Nevertheless, we Mac users know Macs are not made for gaming. They usually have mid-low end discrete GPUs if have at all. The idea of building a hackintosh tempted me quite a lot, a powerful custom machine that can run macOS. But I missed portability. I travel frequently and I need to carry my computer to my university. Maybe having a desktop for gaming and a MacBook Air? Well no. I have tried multiple computers and syncing is a pain in the ass.
And that's how I encountered this amazing web page. And the idea of having a powerful Mac, gaming capable adding an eGPU conquered my heart.
I was between the 13" and 15" model. The 13" has an attractive portability. Thinner, lighter, perfect for carrying in a bag, although that dual-core processor kept me from buying it. After some research, I learnt the extra cores from the 15" could dodge the obvious bottleneck this kind of set-ups can encounter.
- Intel Core i7 6700 HQ Quad Core @ 2.60GHz
- Intel HD Graphics 530 iGPU
- AMD Radeon Pro 450 dGPU
- 16 GB of DDR3 2133MHz RAM
- 256 GB of SSD storage
- 15" Retina screen
- Running the latest version of macOS High Sierra
This was a tough one. Thunderbolt 3 enclosures are everything but cheap. I was really tempted to go on the Aorus Gaming Box, which has a nice mini GTX 1070 in a really compact package, plus some USB A 3.0 ports. But then a wild offer appeared! The same Apple Developer Kit from Sonnet had a nice 100 dollars discount! Pros: native macOS compatibility, possibility of swapping the GPU in the future, considerably cheaper. Cons: bigger enclosure (it's not that big though), no USB HUB whatsoever.
- Sonnet Breakaway Box enclosure. It's the 350W version.
- Sapphire Pulse RX 580 with 8GB of DDR5 memory.
- Thunderbolt 3 cable that came in the box, 0.5m long.
Assembling the eGPU is quite easy if you have build hardware in the past. If this is your fist time, you can follow the instructions Sonnet provides in the box. Super simple, super easy.
On the macOS side is quite simple. It's literally plug and play. However, don't expect the eGPU run your internal display. You will have to do some tricks to get that work. Since I use an external display, I have no problem at all. The dGPU runs the internal display and the eGPU the external. Once you plug in your eGPU, a notification pops up. After re-loggin in you are ready to go.
On the Windows side is more difficult. Hopefully, there is a great Windows on Bootcamp guide here, with all the details and step-by-step installation. I deeply recommend you follow this guide. And more importantly, create restore points every time you change something.
Once you are ready to go on Windows, you will get a push notification each time the eGPU is recognized and ready for use.
If you opt to run your internal display with your eGPU on Windows, your dGPU will be disabled. This is because the eGPU needs the iGPU to be running the internal display to override it. You can achieve this by following the guide linked above. This is, as far as I know, due to the compatibility lack of Bootcamp with eGPUs.
Benchmarks and other technical stuff
I am really pleased with my results. I have a powerful machine that I can carry on and play games at my house plugging in the eGPU. Of course this is not a cheap solution and compatibility issues are a thing, but this kind of set-ups have a long road to go and a promising future.
As of 01/27, I have tried several external displays such as TVs and monitors. macOS seems to struggle with my 2 LG TVs, whereas works perfectly fine on my DELL monitor and my brother's as well. Regarding clamshell mode, I have no issues on neither macOS or Windows. However, on Windows it's not "true" clamshell mode. The internal display is not turned off. This is not a huge drawback, since you can deactivate the internal display by switching to "second display only".
Have you noticed any performance gain in macOS, with the eGPU? I'm using a very similar setup, with the 550, and a 480. Works perfectly under Windows, but I don't see much of a gain in macOS.
To be honest, I only use the eGPU on macOS to drive the external display. My main goal was gaming on windows, on which I can confirm the difference is quite big. Not only driving the internal display but also the external.
Actually, I did not encounter error 12 at all. Just follow the Bootcamp guide here in egpu.io. It is very helpful and highly detailed. I believe I didn't encounter error 12 because I disabled the left ports on my Mac. It is kinda annoying having 2 ports less, but it is worth. Go ahead with this setup! It's a one-way ticket 😊
Dumb question: those left ports are only disabled when you're in Windows, right? You can still use them in macOS?
@ankushg The left ports are disabled in Windows only. They work as normal in macOS. If you were to disable the PCIe connection to the Radeon Pro 450 discrete GPU, you can have all Thunderbolt 3 ports working.