Mark Posted October 20, 2014 Share Posted October 20, 2014 If you are looking to get this to work with Windows 8.1, then please follow this link: http://forum.techinferno.com/implementation-guides/6689-%5Bguide%5D-2013-15-macbook-pro-gt750m-gtx780ti%4016gbps-tb2-sonnet-ee-iii-d-win8-1-a.html As all of you Mac users know, Yosemite has come out! I have spent ages trying to get my eGPU to work, and after trawling around the Internet as well as several clean installs, here is my guide for getting it to run possibly the most problematic NVIDIA GPU (bar the dual-chip GPUs) with Apple’s newest OS. My eGPU Setup: Late 2013 15” MacBook Pro with Retina Display and GT 750M dGPU Sonnet III-D Thunderbolt Expansion Chassis EVGA NVIDIA GTX 780 Ti SC with ACX Cooler Seasonic M12II EVO Edition Fully Modular PSU (620W) ATX PSU Jumper What software is needed: The latest NVIDIA drivers for Yosemite (NVIDIA DRIVERS Quadro & GeForce Mac OS X Driver Release 343.01.01), modded to skip the system check. There is a guide on how to do this here: How to Install OSX Drivers on Unsupported Systems – Daniel Kramnik's Project Log TextWrangler (NOT the Mac App Store version!) (Bare Bones Software | TextWrangler) Terminal Kext Wizard (Kext Wizard - Easy to use Kext Installer and more - New Releases and Updates - InsanelyMac Forum) The latest CUDA Drivers for Mac (optional, but why wouldn’t you want it?) (http://www.nvidia.com/object/macosx-cuda-6.5.18-driver.html) How to get it to work (Or how after so many tries and methods, I managed to get it to work): Do not plug in your eGPU yet at this point. After a clean install (I usually do every time an OS comes out), open up Terminal and type/copy this: sudo nvram boot-args="kext-dev-mode=1” (This is because Yosemite disables unofficial (or in this case, modded) drivers by default, so we’re just enabling it.) Press Enter, then type your password. Press Enter again. We will now be editing three .kext files! To do this, you need an editing program that supports it, such as TextWrangler. These three files are: /System/Library/Extensions/NVDAStartup.kext/Contents/Info.plist /System/Library/Extensions/IONDRVSupport.kext/Info.plist /System/Library/Extensions/AppleHDA.kext/Contents/PlugIns/AppleHDAController.kext/Contents/Info.plist On the Finder menu bar select “Go”. Then click on “Go to Folder”. It will ask you which folder to go to. Copy and paste one of them. It should get you straight to the file, and it should be highlighted! Open the Info.plist file with TextWrangler. <span class="s2">Now, look for sections beginning with: <key>CFBundleIdentifier</key> This section ends with </dict> At the same indent, and just before "dict", add the following: <key>IOPCITunnelCompatible</key> <true/> After that, save the file. Afterwards, do the same with the other two kexts.</true> There is one of these in the Info.plist in NVDAStartup.kext, three in IONDRVSupport.kext and a long one in AppleHDAController.kext. Open Kext Wizard. Click on the tick box named “System/Library/Extensions”. It should tick the two boxes below as well. Make sure the Target disk is the disk the OS is installed on. After that click “Execute”. After some time, it should be complete. Shut down the computer. Plug in the eGPU via Thunderbolt. Then switch it on. I switch on the PSU first, then plug in the Sonnet enclosure after a couple of seconds. It may be different for your set-up. Switch on the MacBook. After booting, install your modded NVIDIA Driver. Follow the steps then restart your computer. Now, what happened is that your NVIDIA Driver has reset one of the .kext files! So go back to: /System/Library/Extensions/NVDAStartup.kext/Contents/Info.plist Then, repeat the .kext editing process that you have done earlier. After doing that, run Kext Wizard in the same way as you have done earlier. Shut down your computer and switch off your eGPU. Switch on your eGPU first then switch on your MacBook. It should finally boot up with the eGPU! If it hasn’t (it might not sometimes), just restart the MacBook. Optional: Install the CUDA Driver. Some weird observations: When the MacBook’s screen is the primary display, “About this Mac” will show both screens (the internal and external one) powered by the laptop’s GPU. Making the external screen primary will show both screens powered by the eGPU. However, this is just a bug, as with Unigine Valley I was getting the same performance on the internal screen as without the eGPU. Without the CUDA driver, most scenes render at around 60FPS, except one or two. This makes me think that there is some sort of hard VSync going on with my GPU. Installing the CUDA Driver got rid of this problem. Talking about CUDA, every time I start up the computer, it’s pestering me to update to the newest version, even though it is the newest version. It is possibly because the newest version was released before Yosemite came out. As with Mavericks, Safari is glitchy as hell when the eGPU is plugged in. There are graphical glitches when scrolling or putting the mouse over links, etc. I’m stuck with Chrome, which is also a perfectly good browser anyway. It is only Safari that does this. When I first tried to get my eGPU to work on Yosemite, I changed the three .kexts after installing the driver (as you would normally do). However, I couldn’t get it to work at all, and the computer won’t recognise it either (Shows up as “NVIDIA Chip Model”). For some weird reason, I got this to work by changing the three .kexts before installing the driver, and changing the one that got reset after installing the driver. Performance: Better than Mavericks. 2,510 vs 1,935 on Mavericks on Unigine Valley Extreme HD, an improvement by just under 30%! Links (for reference): A Thunderbolt GPU on a Mac : How-to | Le journal du lapin Un GPU externe sous Yosemite | Le journal du lapin 2 Quote Link to comment Share on other sites More sharing options...
entzoe Posted October 20, 2014 Share Posted October 20, 2014 Some weird observations:When the MacBook’s screen is the primary display, “About this Mac” will show both screens (the internal and external one) powered by the laptop’s GPU. Making the external screen primary will show both screens powered by the eGPU. However, this is just a bug, as with Unigine Valley I was getting the same performance on the internal screen as without the eGPU.[ATTACH=CONFIG]12853[/ATTACH]I think the screenshot is correct. If you will be using your macbook's screen as the main display, the built-in GPU will be utilized while if you use external display as primary the eGPU kicks in. I believe the result is different if you drag the the Unigine application in MBP display. I am away from my setup right now (traveling), but I believe I tried this before. Can you please test this?Without the CUDA driver, most scenes render at around 60FPS, except one or two. This makes me think that there is some sort of hard VSync going on with my GPU. Installing the CUDA Driver got rid of this problem.Talking about CUDA, every time I start up the computer, it’s pestering me to update to the newest version, even though it is the newest version. It is possibly because the newest version was released before Yosemite came out.As with Mavericks, Safari is glitchy as hell when the eGPU is plugged in. There are graphical glitches when scrolling or putting the mouse over links, etc. I’m stuck with Chrome, which is also a perfectly good browser anyway. It is only Safari that does this.I did not encounter this issue on my Mac Mini and MBP 2011 13inch on Sonnet III-D. Are you running the Safari on MBP or External display?When I first tried to get my eGPU to work on Yosemite, I changed the three .kexts after installing the driver (as you would normally do). However, I couldn’t get it to work at all, and the computer won’t recognise it either (Shows up as “NVIDIA Chip Model”). For some weird reason, I got this to work by changing the three .kexts before installing the driver, and changing the one that got reset after installing the driver.Did you use the beta 10.10 NVIDIA webdriver? I did encounter that issue too, what I did was to change some key values in the NVDAStartup.kext and fixed the issue. see my post here. http://forum.techinferno.com/enclosures-adapters/7205-us%24200-akitio-thunder2-pcie-box-16gbps-tb2-56.html#post109238 Quote Link to comment Share on other sites More sharing options...
Dschijn Posted October 21, 2014 Share Posted October 21, 2014 Did all the steps (was a bit confused about the <key></key>CFBundleIdentifier part), but my GTX 970 is not recognized. The Nvidia Web Driver instalation worked, but the card itself isn't listed in OSX… Any thoughts? Edit: The card is recognized somehow… but not as a GTX 970: Also seems like the NVDAStartup isn't loading: Quote Link to comment Share on other sites More sharing options...
entzoe Posted October 21, 2014 Share Posted October 21, 2014 Did all the steps (was a bit confused about the <key></key>CFBundleIdentifier part), but my GTX 970 is not recognized. The Nvidia Web Driver instalation worked, but the card itself isn't listed in OSX…Any thoughts?Edit: The card is recognized somehow… but not as a GTX 970:[ATTACH=CONFIG]12864[/ATTACH][ATTACH=CONFIG]12865[/ATTACH]Also seems like the NVDAStartup isn't loading:[ATTACH=CONFIG]12866[/ATTACH]Can you post the screenshot section of your modified NVDIAstartup kext file?There's already a final release of NVidia 10.10 webdriver (not BETA), maybe you can try this step.http://us.download.nvidia.com/Mac/Quadro_Certified/343.01.01f01/WebDriver-343.01.01f01.pkgYou do however need to bypass the hardware and software validation of the package. Here's my guide how to modify the package.http://forum.techinferno.com/diy-e-gpu-projects/7792-[warning]-osx-egpu-os-x-releases-10-9-5-update.html Quote Link to comment Share on other sites More sharing options...
Dschijn Posted October 21, 2014 Share Posted October 21, 2014 I installed the driver WebDriver-343.01.01f01. Quote Link to comment Share on other sites More sharing options...
Mark Posted October 21, 2014 Author Share Posted October 21, 2014 I think the screenshot is correct. If you will be using your macbook's screen as the main display, the built-in GPU will be utilized while if you use external display as primary the eGPU kicks in. I believe the result is different if you drag the the Unigine application in MBP display. I am away from my setup right now (traveling), but I believe I tried this before. Can you please test this?I did not encounter this issue on my Mac Mini and MBP 2011 13inch on Sonnet III-D. Are you running the Safari on MBP or External display?Did you use the beta 10.10 NVIDIA webdriver? I did encounter that issue too, what I did was to change some key values in the NVDAStartup.kext and fixed the issue. see my post here. http://forum.techinferno.com/enclosures-adapters/7205-us%24200-akitio-thunder2-pcie-box-16gbps-tb2-56.html#post109238- That's how I found out that the eGPU doesn't power the internal screen! I dragged the Unigine Valley window from my external screen!- I get this issue when I am plugged in to my eGPU. I've had it happen to me on Mavericks with both the SEL and the III-D, as well as an EVGA and an MSI 780 Ti. I think that this issue may be specific to my laptop model.- Also, I waited until the final web driver for Yosemite was released! The one that I've been using all along was the web driver!I installed the driver WebDriver-343.01.01f01.[ATTACH=CONFIG]12868[/ATTACH]Well, that's strange, but I have heard of people having issues with getting a 970 to run with Yosemite on their Hackintoshes. You've done it correctly on the .kext though. Quote Link to comment Share on other sites More sharing options...
Dschijn Posted October 21, 2014 Share Posted October 21, 2014 Really? I only read that the GTX 970 is working. Damn… that is a pity. Quote Link to comment Share on other sites More sharing options...
entzoe Posted October 21, 2014 Share Posted October 21, 2014 I installed the driver WebDriver-343.01.01f01.[ATTACH=CONFIG]12868[/ATTACH]Can you check your systems build version and see if it matches the string value of your kext file for < key >NVDARequiredOS< / key > < string > 14A389< / string > Quote Link to comment Share on other sites More sharing options...
Dschijn Posted October 21, 2014 Share Posted October 21, 2014 Yes system build is 14A389. Quote Link to comment Share on other sites More sharing options...
entzoe Posted October 21, 2014 Share Posted October 21, 2014 Yes system build is 14A389.That's odd. Before Yosemite, your eGPU setup was working with your MBP and external monitor right? Quote Link to comment Share on other sites More sharing options...
Dschijn Posted October 21, 2014 Share Posted October 21, 2014 No, was just testing it under Windows 8.1 as it is a new GTX 970. Didn't tried that with Mavericks. Was hoping to get it working with Yosemite. No idea why the NVDAStartup isn't loading? Can I somehow recreate the validation of the kext? Quote Link to comment Share on other sites More sharing options...
entzoe Posted October 21, 2014 Share Posted October 21, 2014 No, was just testing it under Windows 8.1 as it is a new GTX 970. Didn't tried that with Mavericks.Was hoping to get it working with Yosemite.No idea why the NVDAStartup isn't loading? Can I somehow recreate the validation of the kext?[ATTACH=CONFIG]12870[/ATTACH]Did you issue this command after you made your modify the kext files? sudo kextcache -system-cachesHere's the quick step on how to implement eGPU with OSX / Yosemite1. Download latest 10.10 NVidia webdriver (don't setup your eGPU yet)2. modify kext files (issue sudo kextcache -system-caches)3. restart4. select NVDIA WebDriver as default driver under NVIDIA Control Manager/Panel (maybe this is the step you are missing?)5. shutdown - setup your eGPU - power back your OS. Quote Link to comment Share on other sites More sharing options...
Dschijn Posted October 21, 2014 Share Posted October 21, 2014 I installed 10.10 on an external HDD for testing and followed all the steps from @Mark. After modifying the kext files and the repair with Kext Wizard (repair permissions and reload cache), the shut down and first with the eGPU conncted I get a KP (happend to me in my first try as well). Can only boot without the eGPU. Booted without the eGPU, pluged it in in OSX, installed the WebDriver, modified the kext, repaired everything, shut down, boot up… et voilà GTX 970 is recognized. Still strange that it didn't work on my main instalation… Quote Link to comment Share on other sites More sharing options...
Dschijn Posted October 21, 2014 Share Posted October 21, 2014 So, clean instal and @Mark guide: BUT: After changing to the OSX Default Graphics Driver, the eGPU setup is spoiled again… Can't fix it with reinstalling the WebDriver, kext editing, fixing and shutdown+boot. eGPU isn't recognized anymore Quote Link to comment Share on other sites More sharing options...
entzoe Posted October 21, 2014 Share Posted October 21, 2014 So, clean instal and @Mark guide:[ATTACH=CONFIG]12878[/ATTACH] [ATTACH=CONFIG]12879[/ATTACH] [ATTACH=CONFIG]12880[/ATTACH] BUT: After changing to the OSX Default Graphics Driver, the eGPU setup is spoiled again… Can't fix it with reinstalling the WebDriver, kext editing, fixing and shutdown+boot. eGPU isn't recognized anymore This is because you are using the OSX Default Graphics Driver and not the NVIDIA Web Driver. That's the purpose of installing the NVIDIA Web Driver right? Quote Link to comment Share on other sites More sharing options...
Dschijn Posted October 21, 2014 Share Posted October 21, 2014 Haha, yeah. But I read that the OSX driver is giving better performance. Just wanted to try Lesson learned. Quote Link to comment Share on other sites More sharing options...
olliehm Posted November 3, 2014 Share Posted November 3, 2014 Haha, yeah. But I read that the OSX driver is giving better performance. Just wanted to try Lesson learned. so did you ever get this figured out? I'm having the exact same issue... Quote Link to comment Share on other sites More sharing options...
olliehm Posted November 4, 2014 Share Posted November 4, 2014 so did you ever get this figured out? I'm having the exact same issue... seemingly got it to work by typing in the sudo nvram thing everytime i did an install of the modified nvidia drivers. I also modified the newest 03f drivers, that may have also fixed it? no idea, all i know know is that it works and works well Quote Link to comment Share on other sites More sharing options...
gothic860 Posted November 4, 2014 Share Posted November 4, 2014 Quoteseemingly got it to work by typing in the sudo nvram thing everytime i did an install of the modified nvidia drivers. I also modified the newest 03f drivers, that may have also fixed it? no idea, all i know know is that it works and works well :)Just some tips that worked for me:- it looks like the repair permissions function of KextWizard isnt working perfectly. I still get "repaired .kext ..." with DiskManager - you can check the current boot-args with [FONT=Monaco]sudo nvram [/FONT][FONT=Monaco]boot-args[/FONT] - to enable edited .kexts AND the NVidia Webdriver you have to type: [FONT=Menlo]sudo nvram boot-args="kext-dev-mode=1 nvda_drv=1"[/FONT] - when i replug my eGPU + pull my USB-Mouse before i boot i always get my eGPU working in OS X 10.10 otherwise only sometimes Quote Link to comment Share on other sites More sharing options...
entzoe Posted November 4, 2014 Share Posted November 4, 2014 QuoteJust some tips that worked for me:- it looks like the repair permissions function of KextWizard isnt working perfectly. I still get "repaired .kext ..." with DiskManager - you can check the current boot-args with [FONT=Monaco]sudo nvram [/FONT][FONT=Monaco]boot-args[/FONT] - to enable edited .kexts AND the NVidia Webdriver you have to type: [FONT=Menlo]sudo nvram boot-args="kext-dev-mode=1 nvda_drv=1"[/FONT] - when i replug my eGPU + pull my USB-Mouse before i boot i always get my eGPU working in OS X 10.10 otherwise only sometimesJust a question, why do you pull your USB Mouse before boot? Is it affecting the OSX boot up session with eGPU? Quote Link to comment Share on other sites More sharing options...
gothic860 Posted November 4, 2014 Share Posted November 4, 2014 Just a question, why do you pull your USB Mouse before boot? Is it affecting the OSX boot up session with eGPU?Its a little bit strange with detecting and not detecting the eGPU/Display and OSX but like i said most of the time its working this way. Quote Link to comment Share on other sites More sharing options...
mzinz Posted November 7, 2014 Share Posted November 7, 2014 Just some tips that worked for me:- to enable edited .kexts AND the NVidia Webdriver you have to type: [FONT=Menlo]sudo nvram boot-args="kext-dev-mode=1 nvda_drv=1"[/FONT]Thank you. That did it for me. 1 Quote Link to comment Share on other sites More sharing options...
Mark Posted November 9, 2014 Author Share Posted November 9, 2014 Thank you for that too, it makes the process a lot simpler! Quote Link to comment Share on other sites More sharing options...
Diz Posted November 13, 2014 Share Posted November 13, 2014 I'm trying to get a 780 Ti working in a Sonnet Express III-R on a new mac pro 6,1 I have tried over and over and am close, with no cigar. Seems that NVDAStartup loads but the Kext signature will not validate I'm using WebDriver-343.01.01f03 and cudadriver-6.5.18, I get NVIDIA Chip Model in the Graphics/Displays System Information but not so much as a mention of the 780 Ti I've followed the instructions to the letter and ran sudo nvram boot-args="kext-dev-mode=1" and kext wizard until I'm blue in the face. Could any of the successful shed any light for me? The screenshot says its loaded but then not loadable. Way over my head... Cheers Diz Quote Link to comment Share on other sites More sharing options...
gothic860 Posted November 13, 2014 Share Posted November 13, 2014 ran sudo nvram boot-args="kext-dev-mode=1"Use:sudo nvram boot-args="kext-dev-mode=1 nvda_drv=1"or NVidia Webdriver wont load. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.