[SCRIPT] fr34k's macOS-eGPU.sh - one script, all solutions, fully automated
Hi, everything is working fine for me so I wanted to share my rig, in case it may be helpful. You can find some screenshots at the end of the post.
- MacBook Pro 15-inch 2015 with Intel Iris Pro, running MacOS 10.13.5 (High Sierra)
- Zotac GTX 1070Ti
- Sonnet Breakaway Box 350W
- Apple TB3-TB2 adaptor + Apple TB2 cable (their cost is just absurd 😡 )
After I assembled the eGPU enclosure, I followed exactly the steps indicated by the readme: I did not connect the eGPU to the Mac until the script asked to do this (actually, I connected the cable to the Mac but did not press the power button on the Breakaway Box), I backed up with TimeMachine, and waited for the script to finish.
If I need to use the eGPU, the only way for MacOS to recognize it is to connected it before startup, otherwise it will just show up as "null". Also, hot unplugging will cause a kernel panic, and the system will reboot; so far, the only way I found to safely disconnect it is to power off the Mac. I'm not into hot (un)plugging, so this all is fine for me.
In order for your gaming experience to benefit from the card, you need to attach an external display directly to the card, and to disable the internal monitor of the Mac, otherwise performances will be awful. To disable the internal monitor I'm currently using SwitchResX, but it's a 10-day shareware and I will soon look for a free (and open source, if possible) alternative. I managed to play Hearthstone (the only Mac game I currently had installed), but also TrackMania United and TES 5: Skyrim through the awesome Porting Kit. They all benefited from a significative graphics boost,
though the TB2 port is a big limitation and you won't for sure have a 100% experience please read update n.2 below. A cool Macbook while running Skyrim has no price.
My next aim is to build Tensorflow with CUDA support in MacOS, since I'm planning to use the eGPU for Machine Learning. I'm facing some difficulties, but I will let you know when and if I will accomplish this.
Thanks for the awesome script.
I managed to build Tensorflow with CUDA acceleration. You can find more informations here. I did not use the CUDA drivers provided with this script, since they caused problem while building the source; instead, I downloaded them from NVIDIA official site. I used:
- NVIDIA Web-Drivers 3188.8.131.52.30.107
- CUDA-Drivers 387.128
- CUDA 9.1 Toolkit
- cuDNN 7.0.5 for CUDA 9.1
- Python 3.6.5
- Xcode / Command Line Tools 8.3.2
- bazel 0.10.0
- Tensorflow v1.7 Source Code
Since I was curious, I tried to install Bootcamp to play some games. Well.. on Bootcamp this is as hard as plug-and-play. I had to do nothing more than plug the cable in, let Windows install all the stuff, and I was ready to go. Played a few games, including Skyrim on Ultra, and I must say that I was quite impressed: everything was astonishingly smooth. This eGPU thing is getting quite interesting! It feels kinda weird to have such graphic power on a Mac.
Hello guys! I have next setup: Macbook Pro 2016 (type-c) + asus XG station pro + 1080ti. I did all from description, but script didn't ask me to connect device. After installation was done, I reboot all system. My card didn't detected:
And after second reboot nvidia drivers didn't see my card never.
When I shut down my eGPU, system failed to black screen and rebooting...
I tried to reinstall plugin, it didn't help me.
I connect eGPU directly, without external monitor. (is it correct?)
When I running script, I didn't see message to connect eGPU, or I didn't understood when I need to do it...
High Sierra 10.13.5
Unfortunately the script did not work for me. Inspired by reports of success I purchased MacBook 2017 Pro + Razer Core X + MSI Nvidia 1080 Ti. I do not need gaming, I need this to run machine learning algorithms on TensorFlow which I need for work. I have macOS 10.13.5. After installation of the script my system crashed multiple times. Nvidia driver can identify the card, but macOS does not list it. Furthermore, I remember previously it showed me both - Intel HD and Radeon Pro 560 in the "About This Mac" box. Now I only see Intel HD. Not sure if this was caused by the script. Does it mean that now my Mac only runs on Intel HD card?
When I switch to the eGPU with Nvidia utility, it asks to reboot, then built-in monitor goes black and the external one looks like an external monitor, i.e. - no icons or menu bar, but response is very slow, selected menu items look weird. The only way to get out of this state is to disconnect eGPU, which causes crash. But most importantly, although CUDA driver identifies the card, when I run deviceQuery from CUDA samples, it hands. The card is unusable. Not sure what I can do now. How can I restore system to the previous state?
It's good that I made full backup before running the script. Now I am restoring the machine. It already took three hours and may take one or two more. One work day to try this feature - way too expansive. God knows how many more days it will take to make it work. If your job depends on it, do not use this solution.
There is no need to log out/log in as well. Never expected that the script could run that perfect after despairingly failed to attempt many other solutions.
@kusnizza @smallet try to connect egpu at the login screen.
I am sorry, I tried everything. I really cannot waste my time like that. IMHO, the script clearly has a problem with latest MacBook Pro (2016 and 2017 models are very similar) and macOS.
Have you tried disable the Auto graphic switch? Mind will not work when it is enable. I have a 2017 15" macbook pro with amd 560 and using a 1080Ti
@smallet, you have a rig similar than mine.
Just go to my signature and follow the steps I did (slow, and step by step, just one step missing or not doing correctly, and doesn't work). It is bullet proof, and I did that guide for myself, if you are not able, could be something wrong with your hardware...
I have macbook pro 2016 + akitio + 1080ti + tensorflow, it is not perfect but works, and I think it is the only solution out there, so I do appreciate the authors releasing it for FREE.