[Sticky] Two new eGPU solutions on macOS 10.13.4: pure EFI and hybrid  

Page 1 / 15 Next
 

goalque
(@goalque)
Noble Member Admin
Joined:2 years  ago
Posts: 1128
May 27, 2018 8:51 pm  

Instructions in short:

1) Follow the steps of the installer
2) Check that FileVault is disabled
3) Select "EFI Boot" by holding down the Option key on startup

Latest version 1.0.4

https://cdn.egpu.io/wp-content/uploads/2018/07/automate-eGPU-EFI-v.1.0.4.pkg_.zip

- added support for all TB1 Macs
- dropped support for MacBookPro 11,3 (also other Nvidia dGPU equipped models not recommended, please use 1.0.3)
- AMD dGPU + Nvidia eGPU framebuffer conflict solved

This special version introduces three new Hybrid modes:

1) Hybrid (iGPU)
2) Hybrid (AMD dGPU)
3) Hybrid (closed-clamshell) -> black internal screen, neither iGPU nor AMD dGPU show "Color LCD" under Graphics/Displays

You should always hot plug the eGPU when using any of these Hybrid modes, AFTER logged into macOS. The app logs you out automatically and enables eGPU screen output.

More info:
https://egpu.io/forums/mac-setup/two-new-egpu-solutions-on-macos-10-13-4-pure-efi-and-hybrid/paged/9/#post-39650


What's new in 1.0.3
- fixed "Invalid Nvidia kext found" error message if web drivers are not installed (1.0.2 didn't check the kext existence)
https://cdn.egpu.io/wp-content/uploads/2018/07/automate-eGPU-EFI-v1.0.3.pkg_.zip


What's new in 1.0.2
- added support for GeForce GTX 780 Ti
- SkipSetupDataForOSX=false setting now works (primarily meant to be used with "Pure EFI" if you want eGPU screen output)
- deletes unnecessary automate-eGPU.kext from the install location

https://cdn.egpu.io/wp-content/uploads/2018/07/automate-eGPU-EFI-v1.0.2.pkg_.zip


UPDATE: 01.07.2018 automate-eGPU EFI v1.0.1 released:  https://cdn.egpu.io/wp-content/uploads/2018/07/automate-eGPU-EFI-v1.0.1.pkg_.zip

What's new in 1.0.1

- added support for GeForce GTX 780 3GB, GeForce GTX Titan, GeForce GTX 780 6GB, GeForce GTX 750 Ti, GeForce GTX 1060 3GB, Quadro P2000 5GB
- ValidateNvidiaKexts() and ValidateOtherKexts() in the preinstall stage (modified kexts not allowed)
- config.plist ForceIntegrated changed to MuxSetting [0, (do nothing), 1 (integrated), 2 (dedicated)]
- AMD dGPU equipped MBPs have MuxSetting 1 automatically
- DefaultVolume EFI logic refactored
The installer asks to disconnect the eGPU enclosure to avoid kernel panics during cache rebuilding
- config.plist CsrActiveConfig value is now 0x67 (disabled)

Known issues with this pkg: Pure EFI doesn't produce eGPU screen output due to simplified boot.efi chain loading


UPDATE: 23.06.2018 automate-eGPU EFI v1.0.0 released:  https://cdn.egpu.io/wp-content/uploads/2018/06/automate-eGPU.pkg_.zip
More info:  https://egpu.io/forums/mac-setup/two-new-egpu-solutions-on-macos-10-13-4-pure-efi-and-hybrid/paged/2/#post-38566

 

---
The most observant readers may have noticed my recent investigation on the EFI side, making possible to use both Nvidia and AMD cards out of the box, without needing to backup kexts because Apple's system files stay untouched.

EFI approach provides more reliable Nvidia eGPU screen output but lacks hot plugging support because it bypasses Thunderbolt layers. The eGPU is detected as if it was installed internally. See the screenshots below.

The "Disconnect" menu bar item is not visible. What happens when we combine EFI with our earlier discoveries? The EFI and yifanlu's kext codeless automate-eGPU.kext operating in "hybrid" mode?'' Boot into macOS, hot plug the eGPU on the login screen, and boom:

Multiple eGPU support might be a bonus side effect. The "Type" column says "External GPU". This is all done without modifying system files. The EFI is executed from the USB stick in my test scenario, but it can be run from any media.

Does it work with AMD cards through TB2? Yes.

Confirmed to work with the nMP, Late 2014 Mac mini, Mid 2015 15" MBP (M370X), and Late 2013 13" MBP.

The EFI does it on the fly. No magic, it will be all open source. My next goal is to set the iGPU as the primary device, resolving the sluggish AMD dGPU and Nvidia eGPU cooperation. It seems to work manually, but we want automation. Stay tuned.

automate-eGPU EFIapple_set_os.efi
--
late-2016 13" Macbook Pro nTB + Vega64@32Gbps-TB3 (Netstor HL23T) + macOS & Win10
late-2016 13" Macbook Pro nTB + GTX980/RX580@32Gbps-TB3 (Netstor HL23T) + macOS10.13 & Win10


fr34k, Riss, Gnim and 24 people liked
ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined:1 year  ago
Posts: 1159
May 28, 2018 1:36 am  

Pure EFI approach may resolve problems for macs with NVIDIA dGPUs using AMD eGPUs - just how it was on Sierra. Basically the same approach, except IOPCITunnelCompatible mods not needed (already there). Excellent.

Hybrid solution would be the way to go overall, it would seem. As always, fantastic work @goalque. Do keep us posted when you try this on 10.14.

purge-wrangler.shpurge-nvda.shset-eGPU.sh
----
Troubleshooting eGPUs on macOS
Command Line Swiss Knife
----
3 Build Guides


ReplyQuote
Eightarmedpet
(@eightarmedpet)
Prominent Member
Joined:2 years  ago
Posts: 810
May 28, 2018 9:01 am  

Exciting times. I remember when folks were not sure if Nvidia could ever work and now you guys have multiple methods! Let’s hope WWDC doesn’t throw and curve balls...

2017 13" MacBook Pro Touchbar + GTX1060@32Gbps-TB3 (AKiTiO Thunder3) + Win10
2017 13" MacBook Pro Touch Bar + GTX1070@32Gbps-TB3 (Sonnet Breakaway Box) + Win10
---
LG 5K Ultrafine flickering issue fix


ReplyQuote
goalque
(@goalque)
Noble Member Admin
Joined:2 years  ago
Posts: 1128
May 28, 2018 9:01 am  

Both ways have their own advantages/disadvantages. Since the "hybrid" mode requires yifanlu's kext, you may need to logout/login or hot plug the display cable in order to have eGPU display output with an Nvidia card. Pure EFI possibly works with SIP enabled.

It is good to keep in mind that these are still hacks, even if done on the fly. And only TB2 is supported at present, TB3 firmware has some fundamental issues in executing the EFI. I had similar issue earlier on Linux environment, but the same code compiled in Windows Visual Studio worked.

automate-eGPU EFIapple_set_os.efi
--
late-2016 13" Macbook Pro nTB + Vega64@32Gbps-TB3 (Netstor HL23T) + macOS & Win10
late-2016 13" Macbook Pro nTB + GTX980/RX580@32Gbps-TB3 (Netstor HL23T) + macOS10.13 & Win10


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined:1 year  ago
Posts: 1159
May 28, 2018 9:35 am  

Will there ever be a time when we'll have eGPU utopia - AMD+NVIDIA support, optimizations, bootcamp support, etc.? I'm counting the days till we won't need hacks lol.

eGPU should be as simple as pen drives. High Sierra is close for a very narrow configuration of hardware, and Windows (non-mac hardware) already has it really, but then you have limited lanes, yada-yada...

purge-wrangler.shpurge-nvda.shset-eGPU.sh
----
Troubleshooting eGPUs on macOS
Command Line Swiss Knife
----
3 Build Guides


avj and Flint Ironstag liked
ReplyQuote
kingbri
(@kingbri)
Eminent Member
Joined:3 months  ago
Posts: 39
May 28, 2018 2:15 pm  

What are the steps for doing this method?


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined:1 year  ago
Posts: 1159

ReplyQuote
theitsage
(@itsage)
Famed Member Admin
Joined:2 years  ago
Posts: 2689
May 28, 2018 2:57 pm  

@goalque will share more information after WWDC18.

Best ultrabooks for eGPU use

eGPU enclosure buying guide

66 external GPU build guides


kingbri and goalque liked
ReplyQuote
LeoLeal
(@leoleal)
Eminent Member
Joined:1 year  ago
Posts: 31
May 28, 2018 3:48 pm  

@goalque, Incredible! Well done, sir!

I have a question about Bootcamp, because I use Bootcamp for gaming and I still dont have info on this:
Will EFI solution work for Bootcamp just as of now?

If that's a yes, I will try and check if EFI solution makes newer drivers for 750M + 970GTX work, since the problem was paired with EGPUSupport kext. 😉

Macbook Pro Late 2013 (dGPU GT 750m) + Akitio Thunder 2 + GTX 970


ReplyQuote
goalque
(@goalque)
Noble Member Admin
Joined:2 years  ago
Posts: 1128
May 30, 2018 8:46 am  

Thanks! I haven't had time to test Bootcamp.

Yesterday evening, I figured out how to get it working with a TB3 MBP as well.

automate-eGPU EFIapple_set_os.efi
--
late-2016 13" Macbook Pro nTB + Vega64@32Gbps-TB3 (Netstor HL23T) + macOS & Win10
late-2016 13" Macbook Pro nTB + GTX980/RX580@32Gbps-TB3 (Netstor HL23T) + macOS10.13 & Win10


ReplyQuote
Eightarmedpet
(@eightarmedpet)
Prominent Member
Joined:2 years  ago
Posts: 810
May 30, 2018 10:19 am  

I'd love this to effect Error 12 issues with AMD cards, I tried mine again last night, disabling things (PCIe lanes?) including iSIght camera as some users have done and still ran into Error 12 as per usual..

2017 13" MacBook Pro Touchbar + GTX1060@32Gbps-TB3 (AKiTiO Thunder3) + Win10
2017 13" MacBook Pro Touch Bar + GTX1070@32Gbps-TB3 (Sonnet Breakaway Box) + Win10
---
LG 5K Ultrafine flickering issue fix


ReplyQuote
ozzy
 ozzy
(@ozzy)
Trusted Member
Joined:1 year  ago
Posts: 67
May 30, 2018 10:43 pm  

This sounds like great progress! Any idea whether this works better for OpenGL and metal games in high Sierra?

Also, would something like this work on a 2012 retina MBP with TB1? Happy to test if needed.

2012 15" Macbook Pro Retina GT650M + GTX1070@10Gbps-TB1 (AKiTiO Node via TB3->TB2 adapter) + macOS10.13 & Win10


ReplyQuote
LeoLeal
(@leoleal)
Eminent Member
Joined:1 year  ago
Posts: 31
May 31, 2018 4:24 pm  

@ozzy while this is not ready for use, have you gone through my step by step located at  https://egpu.io/forums/mac-setup/gt650m-gt750m-mbp-nvidia-egpu-378-10-10-10-25-106-not-387-xx-egpu-accelerated-macos-apps-opengl-metal/ ?

That will probably help you to get OpenGL and Metal in Games under High Sierra with your TB1 Setup.

Macbook Pro Late 2013 (dGPU GT 750m) + Akitio Thunder 2 + GTX 970


ReplyQuote
ozzy
 ozzy
(@ozzy)
Trusted Member
Joined:1 year  ago
Posts: 67
June 1, 2018 3:19 am  

Yes, I did. Using the older NVIDIA drivers makes OpenGL work again. Metal games still don’t work for me (although benchmarks interestingly do)

2012 15" Macbook Pro Retina GT650M + GTX1070@10Gbps-TB1 (AKiTiO Node via TB3->TB2 adapter) + macOS10.13 & Win10


ReplyQuote
goalque
(@goalque)
Noble Member Admin
Joined:2 years  ago
Posts: 1128
June 1, 2018 8:40 pm  

My next goal is to set the iGPU as the primary device, resolving the sluggish AMD dGPU and Nvidia eGPU cooperation. It seems to work manually, but we want automation.

Done.

Each day seems to come up with new ideas. yifanlu's kext is not necessary anymore, the "hybrid" mode can use a codeless kext.

Both EFI & hybrid modes confirmed on macOS 10.13.5.

automate-eGPU EFIapple_set_os.efi
--
late-2016 13" Macbook Pro nTB + Vega64@32Gbps-TB3 (Netstor HL23T) + macOS & Win10
late-2016 13" Macbook Pro nTB + GTX980/RX580@32Gbps-TB3 (Netstor HL23T) + macOS10.13 & Win10


imcalledandy, n9yty, nando4 and 5 people liked
ReplyQuote
Chippy McChipset
(@chippy-mcchipset)
Reputable Member
Joined:11 months  ago
Posts: 262
June 1, 2018 9:43 pm  

So when you guys say there will be something to test after WWDC do you mean after the entire event is done or just the first day announcements? Guessing the former, that there's some session or class you want to attend to see if there are framework changes or if Apple engineer can help with something.


ReplyQuote
nmzik
(@nmzik)
Eminent Member
Joined:2 years  ago
Posts: 22
June 3, 2018 4:54 pm  

Sorry guys, but do you use UEFI shell with the following commands in your UEFI method to disable dGPU? Or you use a totally different method? I am asking it because i use exactly this method to disable dGPU on Windows side to improve battery life/less heat

mm 7C2 1 ;IO :1
mm 7D4 1 ;IO :50
mm 7C2 1 ;IO :0
mm 7D4 1 ;IO :50

MacBook Pro Late 2013 15" MacBook Pro GT750M + Sapphire Pulse RX580@16Gbps-TB2>TB3 (AKiTiO Node)


ReplyQuote
goalque
(@goalque)
Noble Member Admin
Joined:2 years  ago
Posts: 1128
June 3, 2018 7:40 pm  

@chippy-mcchipset The estimated release date is 6/6.

@nmzik Thanks for reminding about this useful method. It is applicable on Windows, not utilized at the moment.

automate-eGPU EFIapple_set_os.efi
--
late-2016 13" Macbook Pro nTB + Vega64@32Gbps-TB3 (Netstor HL23T) + macOS & Win10
late-2016 13" Macbook Pro nTB + GTX980/RX580@32Gbps-TB3 (Netstor HL23T) + macOS10.13 & Win10


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined:1 year  ago
Posts: 1159
June 4, 2018 12:49 pm  

It has been a field day with @goalque's solution and my testing results for NVIDIA eGPUs are "generally positive". Lots to think about in terms of easy deployment. The nicest solutions are the hardest to deploy lol.

purge-wrangler.shpurge-nvda.shset-eGPU.sh
----
Troubleshooting eGPUs on macOS
Command Line Swiss Knife
----
3 Build Guides


n9yty, Jeroenvankeulen, Chippy McChipset and 1 people liked
ReplyQuote
unknownsolo
(@unknownsolo)
Eminent Member
Joined:10 months  ago
Posts: 43
June 4, 2018 9:37 pm  

I've been waiting for something like this. Can't wait for it to release. Thank you guys so much for all the hard work

2017 15" Macbook Pro RP560 + GTX1080@32Gbps-TB3 (Asus XG Station 2) + macOS10.13.1


ReplyQuote
unknownsolo
(@unknownsolo)
Eminent Member
Joined:10 months  ago
Posts: 43
June 5, 2018 1:59 pm  

Any new teasers/findings about this? I honestly cannot wait to be able to hotplug my 1080Ti

2017 15" Macbook Pro RP560 + GTX1080@32Gbps-TB3 (Asus XG Station 2) + macOS10.13.1


ReplyQuote
Chippy McChipset
(@chippy-mcchipset)
Reputable Member
Joined:11 months  ago
Posts: 262
June 5, 2018 4:14 pm  

One day soon, maybe we can say "All your NVIDIA GPU are belong to us!" and mean it. I'm optimistic. These guys are relentless in searching for solutions. That's always a good sign. Maybe too someone at a WWDC Metal session will get word on whether Apple is actively working with NVIDIA to make this work. If they care as much about pro users as they claim to, it's a no-brainer. Not to mention about 8000 people in various pro communities have been begging them to do this for years, so they are 100% aware of the situation. (read: if they don't support NVIDIA it's because they chose not to, and perhaps don't care quite as much as their PR efforts lead us to believe).


ReplyQuote
goalque
(@goalque)
Noble Member Admin
Joined:2 years  ago
Posts: 1128
June 5, 2018 6:30 pm  

EFI worked immediately, no web drivers needed (notice: GTX 780)

Unfortunately the release will be delayed.


automate-eGPU EFIapple_set_os.efi
--
late-2016 13" Macbook Pro nTB + Vega64@32Gbps-TB3 (Netstor HL23T) + macOS & Win10
late-2016 13" Macbook Pro nTB + GTX980/RX580@32Gbps-TB3 (Netstor HL23T) + macOS10.13 & Win10


nando4, imcalledandy, Chippy McChipset and 2 people liked
ReplyQuote
unknownsolo
(@unknownsolo)
Eminent Member
Joined:10 months  ago
Posts: 43
June 5, 2018 7:04 pm  
Posted by: goalque

Unfortunately the release will be delayed.

WHAT? Why? 🙁 You can't tease something this HUGE and not share more info  😥  (Just kidding - I just really want this)

Any estimate on when it might be released? Or maybe let me do private beta testing for you 😉 ? I have a 2017 15" MBP with built-in AMD 560 and external reference GTX1080ti in Asus XG Station 2

2017 15" Macbook Pro RP560 + GTX1080@32Gbps-TB3 (Asus XG Station 2) + macOS10.13.1


ReplyQuote
goalque
(@goalque)
Noble Member Admin
Joined:2 years  ago
Posts: 1128

ReplyQuote
unknownsolo
(@unknownsolo)
Eminent Member
Joined:10 months  ago
Posts: 43

ReplyQuote
Shrapnl
(@shrapnl)
Eminent Member
Joined:1 year  ago
Posts: 28
June 5, 2018 9:02 pm  

Just saw this and am interested in seeing this develop.  In theory this would work then with a 2013 nMP as well?  If this could work with Windows 10/Bootcamp that would be amazing!  Could drop down to just one computer and boot in between!  😀

Looking forward to more information.

-Shrapnl

Update - I am blind, missed that nMP was in the OP.  So, yay!  Even better if Windows will see it.  Even if hot plug isn't supported, would be an option.

2018 MacBook Pro 15" - Sonnet 550 - NVidia Titan X (Pascal)


ReplyQuote
ozzy
 ozzy
(@ozzy)
Trusted Member
Joined:1 year  ago
Posts: 67
June 5, 2018 9:47 pm  

@goalque - have you had a chance to test this on a 2012 Retina MBP with TB1? Any idea if this would work for that machine? Happy to test if you need it.

2012 15" Macbook Pro Retina GT650M + GTX1070@10Gbps-TB1 (AKiTiO Node via TB3->TB2 adapter) + macOS10.13 & Win10


ReplyQuote
Chippy McChipset
(@chippy-mcchipset)
Reputable Member
Joined:11 months  ago
Posts: 262
June 5, 2018 9:55 pm  
Posted by: goalque

@unknownsolo @fr34k is travelling and cannot test atm, and I found a couple of serious bugs (just fixed).

Be patient 🙂

Can't be said enough: many thanks for your efforts.


Shrapnl liked
ReplyQuote
avj
 avj
(@avj)
Active Member
Joined:8 months  ago
Posts: 17
June 5, 2018 10:55 pm  

@goalque @leoleal @fr34k thank you for the hard work. I also cant wait to use the new method. I use a TB2 mid 2014 mbp with dgpu nvidia 750M, and a TB3 sonnet, waiting for a GPU to plug in. I am actually waiting for the new script to know what GPU to buy, will Nvidia's 1080 provide rendering power to Adobe after effects, and gaming on windows, or should I stick to Rx 580 for rendering on os x (no cuda support = does it mean no benefit at all from using an eGpu?), for gaming on win also.  🙄

MBPr Mid 2014, dGPU: Nvidia750M ■ Sonnet eGFX 350 ■ AMD RX 580 8gb ■ TB3-TB2 adapter ■ Dell U2518d ■ high sierra 10.13.5


goalque liked
ReplyQuote
imcalledandy
(@imcalledandy)
Estimable Member
Joined:2 years  ago
Posts: 130
June 6, 2018 11:46 am  

@goalque - you are making fantastic progress. Looking forward to the release once you're ready.

2013 MacPro 2xD700 2xGTX980Ti@16Gbps-TB2 (AKiTiO Thunder2) + macOS 10.13.3
2017 TB MBP 2xGTX1080Ti-TB3 (Akitio Node) + macOS 10.13.4


goalque liked
ReplyQuote
(@rhenriques11)
Eminent Member
Joined:5 months  ago
Posts: 36
June 6, 2018 12:35 pm  

@goalque  I hope that you can manage to come out with this kind of solution. It seems to be a lot more interesting and predictable that the present ones (which are also outstanding). I'll be on the first line to test it.


goalque liked
ReplyQuote
randymills
(@randymills)
Active Member
Joined:12 months  ago
Posts: 9
June 6, 2018 4:13 pm  

Just want to say thank you to you guys for ALL your HARD WORK!  It's been absolutely HUGE for me to be able to use eGPU's on my nMP and it's all because of the dedication and passion you all have for solving this problem.  So just wanted to say thanks and I look forward to whatever you guys are cooking...


goalque liked
ReplyQuote
lexine
(@lexine)
Eminent Member
Joined:11 months  ago
Posts: 39
June 6, 2018 4:58 pm  

I am really looking forwards as well to test this solution, great job!!! 
PS: What about the disconnect functionality with the NVDIA eGPU in hybrid mode, does it work or it is still a bugger ?

2017 13" MacBook Pro TouchBar + GTX1070@32Gbps-TB3 (Aorus Gaming Box) + macOS10.13 & Win10


ReplyQuote
theitsage
(@itsage)
Famed Member Admin
Joined:2 years  ago
Posts: 2689
June 6, 2018 5:36 pm  

I tested @goalque's EFI solution yesterday with 10.14. The good news is macOS could see and treat my GTX 980 Ti eGPU as a graphics card. The bad news is the patched Nvidia web driver was not working (driver version is 387.10.10.35.106 for 10.13.5). Once Nvidia releases proper web drivers in the fall, EFI solution should work.

Best ultrabooks for eGPU use

eGPU enclosure buying guide

66 external GPU build guides


ReplyQuote
philw
(@philw)
Trusted Member
Joined:1 year  ago
Posts: 60
June 6, 2018 5:48 pm  

Ah... so is it not going to be possible at all for 10.13.x ?


ReplyQuote
Page 1 / 15 Next