[SCRIPT] Accelerate All Applications On eGPU - macOS 10.13.4+
Note: I will not be responding to questions already addressed in the documentation. Please read through before posting questions.
A quick run-through of what's included in this document:
macOS requirements, pre-system configuration specifics, and more.
Installing and running the script.
Available capabilities and options in the script.
System configuration after script installation and some other things of note.
Additional resources and guides for eGPUs.
Please read the disclaimer before using this script.
By using this script, you consent to the license that the script comes bundled with.
Support the developer if you'd like to.
Thank you for using set-eGPU. Please consider starring the repository, or if you like, donate via PayPal:
The project is currently under active development.
A great finding! Let's make Nvidia removable too 😉 So this would be more or less equal to Windows 10 global graphics preference:
@goalque I'd prefer it if we can avoid NVDAEGPUSupport kext while doing so (your codeless kext is much preferred - or no kext at all). It should be possible to inject modded kexts as required in Clover (just for plist update in most cases) - tho not sure how this affects the cache, etc. - I simply have less info on how that works - tho worth looking into maybe.
The codeless automate-eGPU.kext wouldn't exist if Clover's InfoPlistPatch or InjectKexts were workable/stable. At least, the latter crashed the system immediately. I've not debugged, maybe related to direct memory manipulation. I recall both required FSInject efi. The current EFI solution doesn't require any additional efi drivers. A codeless kext will work always - its function is documented by Apple. The only downside, we cannot acquire Apple's kext signing certificate for this.
I've tried on my setup. Failure... :'-(
It broke the eGPU all together.
I got my eGPU back
MBP11,4, i7-4980HQ, 256gb SSD, 16gbRAM Cathalina (Sonnet Breakaway box 350 + Gigabyte Radeon RX 580 Gaming 8GB)
MacBook7,1 A1342, P8600 120gb SSD 4gbRAM. Mojave (Hiking/Camping)
iMac7,1 A1224, T9500 CPU upgrade 120gb SSD 4gbRAM. HS
Mac mini3,1 P7350, 250gb SSD 8gbRAM. HS (server) iPhone10,3 64gb. iOS12 iPad5,3, 16gb. iOS12 iPod shuffle 2nd gen. 2gb
Mojave is a work-in-progress. Would expect no less. But at least it is having an effect.
@jeroen-van-keulen You can also set preferences by app. Instead of "-" provide app file path using SetPref. I tried this, but it never sets the apps preference correctly (checked using evalPref). Maybe it is fixed in a future build.
Final Cut Pro (10.4.3) using the GTX 1070 for timeline performance on the internal display:
This is super interesting! macOS needs some system wide gpu management like windows, considering egpus are a touted feature it’s crazy it doesn’t exist.
2017 13" MacBook Pro Touch Bar
GTX1060 + AKiTiO Thunder3 + Win10
GTX1070 + Sonnet Breakaway Box + Win10
GTX1070 + Razer Core V1 + Win10
Vega 56 + Razer Core V1 + macOS + Win10
Vega 56 + Mantiz Venus + macOS + W10
Yes, the internal can be the primary display. Needs further testing with different APIs. The OpenGL seems to require an online display (a headless ghost adapter or programmatically made fake display). I bet Metal accelerates everything on the internal screen, and you can pick up any app/game you like.