Today, a tutorial: how to use a Thunderbolt graphic card on Mac. This is the holy grail for some: it is possible to use a Thunderbolt graphic card on a Mac. This is not easy and there are a few issues, but it works pretty well.
This post is very old. It’s impossible to use Thunderbolt eGPU with Apple Silicon Mac and you can use a Thunderbolt 3 enclosure with many Mac Intel from 2016 to 2020.
If you use OS X Yosemite and nVidia Maxwell cards, click here.
The hardware
In my case, I use a ViDock 3 enclosure (an ExpressCard enclosure , already used on my old MacBook Pro), a Sonnet Thunderbolt to ExpressCard adapter (the Pro version, PCI-Express 2.0 compatible) and a Thunderbolt cable.
Concerning the graphic card, any recent nVidia model – I tested a GeForce GTX 260 from Zotac, a GeForce GT120 from Apple and a Quadro K5000 for Mac – works. For everyday use, I installed a fanless GeForce GT610 (low cost) only to manage screens. AMD cards work, but with big graphic bugs, so I’d advise you not to use it for the moment.
Attention : use only a Kepler or a Fermi nVidia card, not a Maxwell card (GTX 750 or GTX 970).
The ViDock enclosure can be replaced by a BPlus PE4L, it’s cheaper and as effective.
Overall, with a mid-range graphic card, you can manage for about 500 $.
The Software
First, with OS X Yosemite, type this command and reboot, it’s important to load modified kext.
sudo nvram boot-args="kext-dev-mode=1"
Mac OS X, by default, simply does not support Thunderbolt GPU drivers. The reason is simple : you normally need drivers adapted to hotplug to work on Thunderbolt, and GPU drivers are not. But it is quite easy to add what is needed in the pilots to make them Thunderbolt-compatible, even if the hotplug is not supported. Then take care, if the computer cable is disconnected while on, the kernel panic is to be foreseen.
For nVidia graphic cards, there are three files to edit. The first two are related to the display, the third one is dedicated to the support of the sound via HDMI or DisplayPort.
/System/Library/Extensions/NVDAStartup.kext
/System/Library/Extensions/IONDRVSupport.kext
/System/Library/Extensions/AppleHDA.kext/Contents/PlugIns/AppleHDAController.kext
You have to get each file, open the package (secondary click -> Show Package Contents) and open the file Info.plist
with a text editor that supports editing system files (for example TextWrangler, in its version not from the Mac App Store).
In this file, look for sections beginning with <key>CFBundleIdentifier</key>
and add just before </dict>
, the two following lines :
<key>IOPCITunnelCompatible</key>
<true/>
Once this is done in the three files (beware, there are several occurrences in IONDRVSupport.kext
), just reboot and the card should be activated and operate. In my case, it worked with all the GPU tested.
Be careful, the operation has to be repeated at each minor system update (e.g the move to 10.8.5).
Performances
The Thunderbolt barely disable graphic cards in practice. Obviously, some tasks and games are limited by the bus (which is here equivalent to two PCI-Express standard lines, 500 MB/s) but it is much more efficient than the integrated graphic card or even – with a good GPU – the dedicated graphic card of the MacBook Pro.
On Mac OS X, games like Batman Arkham City and Starcraft 2 are perfectly fluids on 1600 x 1200 on a 11 inches 2012 MacBook Air with a big GPU (a Quadro K5000, equivalent to a GeForce GTX 660/670), even with details at their maximum.
On Windows, the performances in a test as 3D Mark are better than on a laptop for gamers, as long as it is on an external screen. The nVidia drivers on Windows, make it possible to send the image back to the internal laptop screen, but the function does not exist on Mac OS X and has a big impact on performance.
For people who want to play on Windows, a little program is needed to initialize the graphic card. It is there, and the author is responsive for the configuration.
If you have any questions or need any further information, please feel free to ask in the comments.
Hey,
Was there a special boot sequence you did to get os x to see the GPU? Here is the setup I am using:
2012 Mac Mini
Vidock with sonnet echo TB adapter
nVidia 660 gpu
OS X 10.8.3
Thanks! And great guide :)
With de ViDock, just modify the PCI delay, there is a jumper, as explained : https://www.facebook.com/VillageViDock/posts/10151228608739135
And modify the file as explained and (normally) it works.
I have tested on a MacBook Air, i have no Mac mini with Thunderbolt.
I ended up not needing to change the delay and hotplugging the gpu shows « NVIDIA Chip Model » in System Information. Still 10.8.3. Now I’m wondering how to get my specific card seen by os x as that seems to be the issue. System information also shows the correct device ID and CUDA Z shows my 660 gpu, but the system itself doesn’t label it.
Any ideas?
Got it working perfectly :) Thank you so much man
I’m thinking of building one of these setups. I need to drive 2 2560×1440 display panels, but I only have one Thunderbolt/DisplayPort. This looks like a viable solution for this if the eGPU used has 2 dual link DVI ports. Have you tested hooking up 2 panels using each of the DVI ports on the eGPU? Do they work and are you able to use two monitors simultaneously in OS X?
Thanks for this writeup! Very helpful. I’ve seen how to get eGPUs working in Windows, but never before in OS X. Very useful!
It works with 4 display on the Quadro, but the bandwith is a problem for big screen in certain case. It depends for the content of the screen.
Thanks for the excellent guide! It works great on my 2011 Macbook Pro 17 2.2GHz with GTX 680 in Magma ExpressBox 3T! Performance is roughly 80-85% of the same card in 2008 Mac Pro 3.0GHz 8-core.
The only problem is… rebooting in clamshell mode crashes the OS after the boot screen. Does anyone have any idea?
Thanks for the guide! It works great on my Macbook Pro 17! One problem though, when I reboot in clamshell mode, OS (10.8.3) crashes on desktop screen right after the boot logo. Does anyone have any idea? Thanks in advance!
1. does this still works?
2. does it work with 10.8.5?
3. are the steps above the only steps needed to make it work?? (cause it actually looks so simple, i just can belief it!)
Yes, it works, i use it every day with a GeForce GT 610 (and Mavericks, but ot works with Mountain Lion too)
Just like to reply to my own question.. the problem I had above is actually solved simply by upgrading to Mavericks :O
Thanks again!
What about ATI graphic cards? What files to modify?
I have an ATI HD5800 card, and it cannot be detected by Mac OSX 10.8.5 (mountain lion)
But I can get it work on Win 8 (EFI mode).
My hardware:
Saphire ATI HD 5800 (1GB) Graphic card.
Macbook pro 2011 early-type
Vidock 4 plus
Bplus TH05 thunderbolt Expresscard
I have tested with AMD 5xxx card (5770 and 6400), and i have many bugs, but it works.
I’m trying to get this working on my Mac-Mini, are there any known issues? I’m trying to get a GTX 460 to work with the Vidock 4plus and OSX 10.8.
Are there only certain cards that work on the MAC OS?
Have you try to modify the PCIe delay on the Vidock ? There is a jumper for that
Try upgrading to 10.9. If you are on 10.8.4 or later it probably wont work, but upgrading to 10.9 fixes it. My mac mini and 660 have been working perfectly.
Can you confirm that this will work for my gear:
MacBook Air 13-inch, Mid 2012
2 GHz Intel Core i7
OSX 10.8.5
Sonnet Echo Express III
GeForce TITAN
I’ve been trying to get this working for several days.
Thanks
ben
I did get my mac-mini working, but every now and then the screen flashes black. it started working after I upgraded to 10.9 and changed my delay on the ViDock to 8 seconds. Anyone else experiencing the black flash?
Thanks for all the help so far!
Hi Ben,
Try rebuilding cache after you edited the kexts, I use Kext Wizard. Also, make sure you are supplying enough power to TITAN.
Hey guys! Could somebody tell me, if i could run 650gtx with vidock4 plus + sonnet echo express card adapter on my macbook pro 13(non-retina), using only built-in display ?
With Windows, eventually. With Mac OS X, no.
Thanks)
Jake, I think this is a bug with Mavericks and nVidia cards. Mavericks is a bit sluggish for me as well. Hoping this bug will be ironed out on the next update
Thanks for this posting – Very interesting! I wonder if anyone has gotten an Nvidia graphics working on a Thunderbolt expansion chassis?? I saw a post by « Ben », but he never followed up to say if he was successful. I am thinking I would like to avoid the ExpressCard bridge and go with a Native TB chassis…
Marc,
I’m still struggling with this. I edited the 3 files as described above (assuming I inserted the code correctly and in all the right places) but my computer still doesn’t recognize the GPU. When I check « About this Mac > More Info > System Report… » and look under PCI Cards it says, « There was an error while gathering PCI card information. »
(By the way, when I check « About this Mac > More Info > System Report… » and look under Thunderbolt, it sees my Echo Express III and one of the Ports even shows « Device Connected ».
Manangel suggested I use Kext Wizard to rebuild my cache. I’ve tried this 2 or 3 times now, and each time I tell Kext Wizard to rebuild cache, it seems to go unresponsive. Should this take more than 5 minutes? Each time I’ve ended up doing Force Quit eventually and then my Mac Air won’t reboot unless I reload the OS from HD Recovery.
I’m just a novice, so it’s quite possible I’m missing something. If anyone has guidance to offer, please let me know!!
Perhaps I could post my kext files on Dropbox and someone could confirm I did not botch the code? :)
Thanks.
I’ve only recently switched to the Mac platform, but a Unix systems user/admin for 30 years… I *think* that to rebuild the cache, you need only open terminal, and run « sudo touch /System/Library/Extensions » (you’ll be prompted for the admin password) and then reboot the Mac.
Hey– I have a MBP 15″, ran the tutorial on the three files 2x checked and still no luck.
Magma 3T, EVGA Geforce 680 (Mac Version)
Help?
The enclosure is a problem.
Hi Joshua DIT,
I have the exact same setup (Magma 3T + GeForce 680 Mac) but with MBP 17″. I was on the same boat! I spent a lot of time trying to get it to work and couldn’t figure out the problem. It turned out it was as simple as rebulding cache. And yes, it works perfectly after that in 10.9! (minus the boot screen since the TB aware driver,as per guide, is loaded in the OS).
Try rebuilding kext by either using terminal as suggested by Marc, or kext rebuilding apps. I use Kext Wizard. However, Ben has reported Kext Wizard crashed his OS. So use with caution and always make backup.
Magma 3T is a native TB chassis, so I guess this also answered Marc’s question :)
Hi all.
Must a Mac specific graphics card be used? Or can any graphics card (i.e. non EFI) graphics card be used as an eGPU over thunderbolt?
Thanks.
If Mac OS X support the card, you can use a model without EFI compatibility.
I use a classic GeForce GT610 at work, and i have tested with many Radeon and GeForce.
The only problem is classic : no boot screen without EFI compatibility.
Hello Pierre, everyone!
I’m trying to make this work with my setup (early 2013 15 » Retina MBP + Sonnet Echo Express Pro + Nvidia Quadro K5000) but my first attempt resulted in a system crash so severe I had to completely reinstall the OS (10.9 Mavericks, for that matter). Seeing as lots of you guys got it working on similar conditions, I’m thinking I may have put the
IOPCITunnelCompatible
command in the wrong place somewhere, and that compromised the OS’s stability. Would it be possible for you to show me exactly where I’m supposed to input the code? I’m clueless when it comes to OS coding, and when I search for the CFBundleIdentifier line, there are several instances, and I’m not quite sure before which one I’m supposed to type the command above. For example, in the AppleHDAController.kext, the code is as follows (please notice where I put the HERE? on the left margin):
(…)
IOKitPersonalities
BuiltInHDA
CFBundleIdentifier
com.apple.driver.AppleHDAController
CodecAddressFilterArray
CodecAddressMask
AQAAAA==
LayoutID
16392
PCIVendorDeviceID
282987200
HERE?
CodecAddressMask
AQAAAA==
LayoutID
0
PCIVendorDeviceID
282987200
HERE?
CodecAddressMask
CQAAAA==
LayoutID
65
PCIVendorDeviceID
282987200
HERE?
CodecAddressMask
AQAAAA==
LayoutID
73
PCIVendorDeviceID
282987200
HERE?
DPAlwaysDisplayRouting
(…)
There are also many other below the section I pasted, but I’d expect it to be one of the marked above. If you could give me some bearings, or even post a screenshot of your own edited files, I’d be extremely grateful.
Thanks for your time, and congratulations on the tutorial!
Cheers,
Bruno.
Edit: Sorry for the double post, but HTML formatting removed parts of the text because of the greater-than (>) sign. I have, therefore, replaced every instance of > with a #, to prevent the issue.
Hello Pierre, everyone!
I’m trying to make this work with my setup (early 2013 15 » Retina MBP + Sonnet Echo Express Pro + Nvidia Quadro K5000) but my first attempt resulted in a system crash so severe I had to completely reinstall the OS (10.9 Mavericks, for that matter). Seeing as lots of you guys got it working on similar conditions, I’m thinking I may have put the
<key##IOPCITunnelCompatible</key#
<true/#
command in the wrong place somewhere, and that compromised the OS's stability. Would it be possible for you to show me exactly where I'm supposed to input the code? I'm clueless when it comes to OS coding, and when I search for the <key#CFBundleIdentifier</key# line, there are several </dict# instances, and I'm not quite sure before which one I'm supposed to type the command above. For example, in the AppleHDAController.kext, the code is as follows (please notice where I put the HERE? on the left margin):
(…)
<key#IOKitPersonalities</key#
<dict#
<key#BuiltInHDA</key#
<dict#
<key#CFBundleIdentifier</key#
<string#com.apple.driver.AppleHDAController</string#
<key#CodecAddressFilterArray</key#
<array#
<dict#
<key#CodecAddressMask</key#
<data#
AQAAAA==
</data#
<key#LayoutID</key#
<integer#16392</integer#
<key#PCIVendorDeviceID</key#
<integer#282987200</integer#
HERE? </dict#
<dict#
<key#CodecAddressMask</key#
<data#
AQAAAA==
</data#
<key#LayoutID</key#
<integer#0</integer#
<key#PCIVendorDeviceID</key#
<integer#282987200</integer#
HERE? </dict#
<dict#
<key#CodecAddressMask</key#
<data#
CQAAAA==
</data#
<key#LayoutID</key#
<integer#65</integer#
<key#PCIVendorDeviceID</key#
<integer#282987200</integer#
HERE? </dict#
<dict#
<key#CodecAddressMask</key#
<data#
AQAAAA==
</data#
<key#LayoutID</key#
<integer#73</integer#
<key#PCIVendorDeviceID</key#
<integer#282987200</integer#
HERE? </dict#
</array#
<key#DPAlwaysDisplayRouting</key#
<array#
(…)
There are also many other </dict# below the section I pasted, but I'd expect it to be one of the marked above. If you could give me some bearings, or even post a screenshot of your own edited files, I'd be extremely grateful.
Thanks for your time, and congratulations on the tutorial!
Cheers,
Bruno.
@Bruno:
I think you need to find the and tags that encloses CFBundleIdentifier.
For the Info.plist file contained within AppleHDAController.kext:
Line 44:
Line 45:
………………………
………………………
………………………
………………………
………………………
………………………
………………………
Line 164:
Try adding IOPCITunnelCompatible and right before line 164.
@Bruno:
I thought I fixed the html tag figured out… I’ll try again.
Line 44: dict
Line 45: CfBundleIdentifier
Line 46 ~ Line 163: bunch of dict and /dict and other stuff
Line 164: /dict
Try adding IOPCITunnelCompatible and true/ right before line 164.
Hi, I just got the ViDock 4 and will be running this on my Mac Mini and 660 gpu. I’m also running a Apple 27″ Thunderbolt Display, has anyone tried this?
Thanks!
i tried that with MBA and it works, with an displayport to mini DispmayPort adapter
I would also like to get this working on a MacBook Pro 15″ 2012 with a Titan. But I don’t need to drive a display with the eGPU. instead I want to just use the Titan for GPU compute with CUDA accelerated apps (adobe after effects/photoshop/premiere). Is this possible? ie: the MBP will use the built in 650M for display, and the Titan for CUDA acceleration and 3d rendering(cinema4d). All on OS X of course. I’m currently using Mountain Lion.
Thanks in advance!
I think you can use the secondary GPU only for OpenCL, i have tested with a Radeon for mining, and a Quadro.
Thank you, Pierre.
So you confirm that CUDA will not work, even with other nvidia cards? That’s a shame.
No, it works with CUDA (when i write « only with opencl », i will say, « with no display connected »), i have tested with the Quadro.
Just verifiy that your soft can use two card and select the right card. I have the problem with a benchmark : he use only the first card
Hi everyone!
Very cool stuff here! Well, i have a iMac 2011 with the AMD Radeon HD 6970M. Like Andrew Phang, i want a external card to accelerate apps like After Effects CC.
Is that it can work?
Tanx :)
Sorry, I have not mentioned that I would probably go with a Quadro card
:)
Hi there
This sounds like just what im looking for, however i could only locate one instance of IONDRVSupport.kext and couldn’t find the other 2 files at all.
Im running Mac OS X Lion 10.7.5. Should i be looking for a different file?
thank you
I have tested with Mountain Lion and Mavericks, not Lion.
Good morning, could someone tell me please?
:P
Tanx
Hi Pierre
I upgraded to Mountain Lion, found the files, edited them as instructed and rebooted. However the TB monitor still wont turn on.
I have NVIDIA GeForce GT 120 512 MB in a 2009 Mac Pro.
Do you have any other suggestions?
Thank you
Oh, you can’t use the Thunderbolt monitor on a Mac Pro.
The manipulation is for use a Thunderbolt external graphic card on a Thunderbolt enabled Mac, not the Thunderbolt Display on every Mac.
The only solution for you is use a LED Cinema Display, not the Thunderbolt version.
Hi,
I have a Late 2012 Macbook Pro Retina. Will this work on retina displays? Do we need a external monitor for this set up to work on OSX?
Thank you for the post!
With OS X, it works oly with an external display, connected to the card, yes
Hi,
1- On After Effects CC: What will be the benefit to have a external Quadro card on iMac 2011, i7 2600, 32go ram. with the AMD Radeon HD 6970M?
2- Is that it can work on my iMac?
Tanx a lot :)
It works with imac, yes. For After Effect, i have no idea.
Hi,
Tanx for your help.
Good night :)
Hi,
I have a 27″ mid 2011 iMac hooked up to a Sonnet Echo Express SE II and a Geforce 610. I can’t seem to get the card to detect in OS X. I have edited the Kext’s and flushed the kext cache. Can you make some recommendations? Is the card not compatible
I have not tested with the Sonnet Echo Express. Did you seen the card under system information ?
In the Console, search IOPCI, Mac OS X say if a driver need to be Thunderbolt Enabled.
I use a GT610 every day with my Mac.
And did you use Mountain Lion or Mavericks ?
Hi, Guys.
It’s actually really interesting topic You’re dealing with. From what I’ve read so far (article and all comments) there’s a possibility to hook GPU with Tb using other parts in between.
I’d like to ask anyone who has successfully running a MBP/MBA with any nVidia branded card (fermi/kepler architecture 4xx/5xx/6xx/7xx or Titan) to test a piece of software, whether it sees the CUDA cores available on that card.
If anyone could help to clarify: download free trail, open up the software, take a look thru properties if CUDA devices are visible
(ideally test a scene for light calculation in interior making a printscreen..- though it is optional)
I’d be very thankful for that & a lot of Guys who are looking to this kind of solution
(as neither of us want to invest into something that in the is not going to work)
cheers
I’m using Mavericks. It did mention the AppleHDA Kext, which I corrected. The card should show up in the System Report, correct?
@Tom : it works with CUDA, no problem.
@kashn : yes, you should see the card under PCI card or under graphic card, i think
Hey guys,
I have got a GTX660 working in a Sonnet Express Pro on a 2012 MBP.
The only issue I encounter is that the system goes to sleep every few moments when I have got the lid of the MB closed.
Is there a work-around for that or do I simply have to leave the MB open?
Pierre, the setup you describe will only have a display on the external monitor when it is connected to the external GPU? The Mac’s built in display and discrete GPU will be disabled? Will this this also be the case for Macs with more than one thunderbolt port? Is it possible to connect the eGPU to one TB port, and drive an external monitor with the built-in GPU connected to the other TB port?
Or, if the eGPU is connected at the end of a TB chain, for example after an Apple TB Display, will it still be recognised for CUDA? I only want it for CUDA, and don’t really need it to drive a display.
Thank you again!
The internal GPU and the external GPU are enabled. I have tested with MacBook Air, and you have the Intel HD for the internal Display, and the external GPU for external Display.
You can use a GeForce card only for CUDA with no problem.
The only limit with Mac OS X is that you can’t use the internal display with the external GPU. It’s possible under Windows with GeForce card (a sort of Optimus) but very slow wit h game, because you saturate the bus.
Thanks so much, Pierre. That was a very clear explanation. I have more confidence in trying this out now. I plan to try either GTX680 or 780 with Vidock on a 15″ MBP running 10.8.5
I was told that I could just use a PC video card instead of a Mac version, because the Mac versions are flashed for the Mac Pro EFI, but apparently the MBP has a different EFI than the Mac Pro so it doesn’t matter.
Hello!
1) PE4L-EC060A V2.1b
2)Sonnet Echo Pro ExpressCard/34 Thunderbolt Adapter
3)Power supply 350w
4)GTX 680
5)MacBookAir
It works with mac os without an external monitor?
Or need windows and (DIY eGPU Setup 1.30 + $25)?
It works without monitor only for OpenCL/CUDA.
If you will play game on the internal display, you must use Windows, yes.
What about windows and (DIY eGPU Setup 1.30 + $25)?
Not do without it? or you can find a free version?
It’s complicated.
A free version, i don’t know. And it depends of The Mac you uss, and the bridge. You can try the inferno forum or the eGPU forum (just serach on Google about it)
Hi all.
Just want to let everyone know that using Pierre’s directions, I got eGPU on my Mac Mini working.
I’m using;
1. Sonnet Echo Express Pro Thunderbolt/Expresscard adapter
2. BPlus PE4L (no reset delay)
3. Asus GTX 660 graphics card (non EFI version) with external ATX power supply
After editing the 3 files and rebuilding the kernel cache, everything powered up and is working perfectly. But it was kind of discomforting booting for the 1st time and not seeing anything on the screen until the login screen.
Joe, thanks for the update, very encouraging!
Are you on Mountain Lion or Mavericks?
Hi Andrew.
I’m using Mavericks. Haven’t tried OpenCL computing, but every day stuff (web surfing, watching video, gaming, etc.) all are working fine.
Just fyi, successfully used a Magma 1T + GTX 780 (from EVGA) following this tutorial ;-)
Works like a charm ; it’s wonderful haha :-)
Tristan:
That sounds really exciting! If you don’t mind, may I ask which EVGA 780 model are you using, and are you on Mavericks or Mountain Lion? Also, how did you manage to fit the 780 (double-width, full-length card) into the Magma 1T (single-slot, half-length chassis), plus the power supply of the 1T is only 65W, did you use an external PSU?
I’m referring to the specs of the Magma 1T here:
http://www.magma.com/expressbox-1t
Thanks for your time!
Tell me please! Which video cards support uefi gop?
I don’t know. And the Mac use UGA with EFI, not the GOP, i think.
Here is what I found in wikipedia :
The EFI specification defined a UGA (Universal Graphic Adapter) protocol as a way to support device-independent graphics. UEFI did not include UGA and replaced it with GOP (Graphics Output Protocol), with the explicit goal of removing VGA hardware dependencies. The two are similar.
Source : http://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface
OK, but Apple do not use UEFI : all the Mac use classic EFI, and the (rare) Mac compatible graphic card use UGA and not GOP.
But it’s not a problem : even without EFI support, you can use the card with Mac OS X. The only problem is that without EFI compatible firmware, you can’t see image before Mac OS X boot, but with external card, it’s not important : all Mac with Thunderbolt have internal graphic card.
@Andrew : The Superclocked model. (since it’s a very well refreshed card and no after-market OC on OS X).
Used a PCI riser and totally « unboxed » the PCIe extension kit.
I’m running mavericks and yes I used an external PSU.
Here’s how it looked like when I put it all on. http://puu.sh/6OepG.jpg
Now I worked a bit to make it look better, but I still will need a little case to put all of this in, I think.
Thank you Tristan!
I’m definitely getting the gtx780 now. I’ve been on the fence between the 780 and 680 for fear of incompatibility and also because I’m probably ordering the Vidock, which doesn’t have 8-pin power connectors. But I’ll probably get an adaptor or something. What PSU are you using btw, did you have to short it to get it to work without a motherboard? I’ll be trying this on Mountain Lion, so I hope it works.
Yes, you definitely need to put all that gear somewhere!
Vidock will probably limit the 780 too much. I’d go with a 680 if not going for a 1GB setup.
I’m using a « Be Quiet ! Alimentation Pure Power L8-430W CM 80PLUS Bronze » since GPU uses ~350-380W at full load you need more than 400W. So I took the 430W.
I don’t understand what you mean by « short it ». I had to use a little paperclip to force power-on it at first if that’s what you mean.
I’d go for Mavericks since it manages OpenGL better, and also because next updates will include dual-gpu enhancement because of the Mac Pro, and thus you WILL get better performance on Mavericks.
Good luck anyway ;-)
@Tristan: I’ll be using the eGPU setup purely for CUDA rendering so I’ll need the highest CUDA cores and VRAM I can get for the budget, which is why I thought 780 would be better than 680. I’ll be using it for GPU compute on Cinema4d and Adobe apps. I’ll be running this render software, which is CUDA only:
http://render.otoy.com
I wasn’t aware the power draw was so high though, looking at the specs I thought it only needed 250watts:
http://www.geforce.com/hardware/desktop-gpus/geforce-gtx-780/specifications
Yes, the paperclip is what I meant about ‘shorting’. Thanks for the tip about Mavericks and dual-GPU. I’m avoiding Mavericks due to certain software incompatibilities for now. But I guess I’ll really have to bite the bullet if I want to make this experiment work…
Oh I see I see then go for it, but I don’t know if the bandwidth won’t be too much of a bottleneck in the end. I have no knowledge regarding CUDA apps etc.
Seems you only need 250 watt indeed. I ordered this some weeks ago already so I don’t recall what brought me to this calculation lol so it might be wrong ;-)
Yeah then for the paperclip but it’s not a problem. You do it once and you leave it on forever, lol.
@Tristan: Sorry to be anal, but you are connected via thunderbolt cable, correct?
to be what? XD
and yes I’m connected via thunderbolt lol
If that’s about the pic I sent you, we don’t see the cable because I took that pic while it wasn’t yet connected. Here’s a more recent one http://puu.sh/6Onpq.jpg
Lol I’m being extra careful because if this experiment works for me I’ll be getting this next, and filling it with x4 780s:
http://maxexpansion.com/desktop/CUBE3-thunderbolt-pcie-expansion
From your latest pic I’d guess that you got the bigger PSU to power the 780 and your display and maybe some other peripherals?
Oh this looks nice indeed but be careful as I don’t know how CUDA, SLI and OS X all work together. If no need for SLI then you should be okay though.
Yup I don’t need SLI, just CUDA. Octane Render scales linearly with each nvidia GPU added.
hello, pierre!~
i have macbook pro 15 early 2011 quad-core 2ghz with radeon 6490 256mb
in order to use a thunderbolt gpu, do i have to get rid of the stock graphic card(disable them)?
thinking about getting a gtx 760 any recommendation?
thanks
i have not tested with a MacBook Pro myself, i don’t know if it’s possible to disable the internal card (i think not).
For the choice of a GTX 760, i suppose it’s better to choose a card with a reference design, i have tested only with this sort of card. A reference card is a model not modified by the manufacturer. If the card is visually the same as a card from another brand, it’s generally a reference card.
Can anyone please help.
I have a mac mini 2012, core i7 with 16gb ram. The dock is the Vi Overdrive with a 660 card in it, connected through thunderbolt via sonnet.
I have edited the 3 files and rebuilt the ktexts.
When booting up the mac loads for a bit and then restarts and if I view through the internal connection it show an error message. This would just loop on an on if left.
Do you know what I have done wrong?
Hello,
I know you said AMD has video glitches but I just want to talk OpenCL to the AMD R9 290x in the ViDock… can you give me instructions on what to modify or install to get the MacBook to see the eGPU card?
Thank you
Hi will a gtx 750 in a vidock connected to sonnet expresscard to thunderbolt connected to a mac mini running 10.9.2 work?
also do you need to download the Linux 64bit display drivers before you edit the kext files?
I’m not sure for the GTX 750 : i don’t know is the new Maxwell GPU is supported by Mac OS X.
I’m update on AMD. Pierre I followed what you did with the NVIDIA drivers for all of the AMD drivers, but 10.9.2 doesn’t yet have drivers for the R9 290x. When I tried my old HD 5970 it worked perfectly.
Thanks for a great post…
I got this to work on my mac mini, but I get tearing on my monitors connected to the thunderbolt GPU. Is this expected? It almost seems like there is no VSYNC.
Try that : sudo defaults write /Library/Preferences/com.apple.windowserver Compositor -dict deferredUpdates 1
Thanks, but that didn’t seem to help at all. Tried restarting after that. I will try the same GPU with my Air and see if it makes a difference.
It does the same thing with both my mac mini and my air. Both are running 10.9.2. I also tried setting deferredUpdates to 2, still get the tearing. Could it be a GPU issue (seems strange)? GPU is a GTX 680. I see the same tearing on all screens connected to the thunderbolt GPU. Very easy to see in fast moving games.
http://imgur.com/4FiTSoI
One more update… I used QuartzDebug to turn on « Autoflush drawing » and this fixed the issue in games (no more tearing) but causes problems in many applications when redrawing ui controls (it is very slow).
Ok, with three big display, the bandwith is a problem : there is not enough bandwith for 60 Hz with the big definition.
With Windows driver, there is compression, but with Mac OS X, i think there is no optimisation for that.
Just try for a test : use only one display or use a smaller definition.
Hi Rick,
What files did you modify to make HD 5970 work?
Hi Pierre,
Now my eGPU can work, but no sound output via hdmi. I have modified the 3rd file AppleHDAController.kext as you listed, but no new sound device is listed in the « System Preferences\Sound ». Please help.
I added the IOPCITunndlCapable to all kext’s that had AMD in them each each section that had the CFBundleIdentifier attribute.
Thanks, Rick.
Does you HD 5970 output sound (via hdmi)? My HD 5870 can now output video but not sound. I have modified the 3rd file AppleHDAController.kext as the main article suggests.
Tested this with the following setup:
Macbook Pro 2011 – TB display – TB Hard Drive Seagate) – Echo Express pro – Vidock with Gforce 760
Works perfectly, I’m only using it for CUDA rendering, so no display attached to the ViDock. If I do this, performance drastically decreases.
It was a bitch to change the files though, what isn’t really clear from the description above (for me at least) is that ‘IOPCITunnelCompatible
‘ has to be added multiple times in the .plist files.
Also rebuilding the cache was needed. (sudo touch /System/Library/Extensions , in Terminal)
I’d like to chime in to say that I was able to get a Sonnet Echo Express SE II working with an EVGA GT-610 on a 2012 Mac Mini. I have not done any performance testing, but it most certainly works and it’s running smooth with 2 displays connected to it and 1 on the internal Intel HD.
The 610 I’m using is an x16 card. I carefully opened the end of one of the slots in the Echo Express to allow the x16 card to fit.
I can’t be more happy with this setup. I have been struggling with my 3 displays using a USB display adapter. Too much flickering and not returning from sleep. This new setup is just awesome!
@CrazyC: So you have no issues with your setup returning from sleep? No system freezes/crashes?
@Abndrew: Nope. I have not. Been running this since I posted that the other day. I can verify that you can NOT turn off the Echo and turn it back on. It has to stay powered on for it to work correctly. The Mac can put the displays to sleep, system sleep and all restore just fine. I am loving this as it allows me to have my 3 displays connected to my Mac Mini and there’s no tearing or choppiness like I was getting from my Startech USB adapter for my 3rd display. Eventually I will be testing a 4th display connected to the thunderbolt pass thru on the back of the Echo. Not that I need another display, just one of those, « Isn’t this cool? » things. My guess is that the 4th display may have some lag or just slow performance due to the bandwidth restrictions on the thunderbolt bus, but for my usage, it should be sufficient. I have a separate machine for gaming or I can use my main display on the Mac Mini which is connected via the HDMI port.
@CrazyC: thank you for the reply, that is very assuring! Can you safely disconnect and reconnect the Vidock/thunderbolt while you’re Mac is asleep? I’m asking because I will be doing this on a MacBook Pro.
You can disconnect it any time you want, but the only way for it to be recognized when plugging it back in is after a reboot. If you were to unplug it while your Mac is sleeping, the change will likely wake the Mac which will recognize the connection change. I have not tested this. If I get a chance to, I’ll try it, but I’m not too optimistic.
To be clear, I am ONLY using a Sonnet Echo Express SE II. It is direct thunderbolt to PCI, no other adapters necessary. The SE II has two PCI slots and is a bit more expensive than the hardware listed in the above HOWTO, but you can also get the SE model which has only 1 PCI slot and is a bit cheaper.
So, after posting my last comment, I had another thought for my own uses and decided to try my Sonnet Echo on my Macbook Air. First…. it works just as well as it does on the Mac Mini. Everything works exactly the same, no problems. Being that I booted up on the laptop, I figured I’d test the question of whether you can unplug the thunderbolt cable while the Mac is a sleep. Answer…. NO, you can NOT unplug it while the Mac is sleeping. Just as I suspected, the computer detects the bus change and when unplugging the cable it causes a kernel panic and the system crashes.
I tested this twice, once with the lid open and again with the lid closed.
With lid open, I put system to sleep, pulled the cable after I was sure sleep mode had activated. The screen then lit up again with the standard Mac crash notification window. A quick reboot and all was well again.
I tried with the lid closed too. Verified system was a sleep, pulled the cable, the Apple logo on the back of the lid lit for about 2 seconds and went out again. I plugged the cable back in and opened the lid. My external display came back on as if the system was at the main login screen, but my internal display was dark and the system was locked up. I would have to assume it cause the same kernel panic as it did when the lid was open.
I must say though, that with the Mac Air and the SSD storage, it doesn’t take long to do a full shutdown and power on though. So depending on what your usage is, if you’re going to be using the external display, I would think that it would be an issue to take another minute or so and just power the machine off and back on when using the external GPU.
So my testing also proved that you can NOT just pull the thunderbolt cable any time you want. The computer needs to be powered down for it not to cause a kernel panic. Both machines used for testing are running OS X Mavericks 10.9.2.
I may very well purchase a single slot expansion bay to use with my laptop while traveling, that’s why I went and did the additional testing.
I am, so far, very impressed with the whole project and performance. I know it is not the performance I would get out of an internal PCI card on a Mac Pro or a Windows/Linux PC, but it does very well for everything I’ve done thus far.
One other note… my previous comment I said Sonnet has a single slot chassis. It’s not an SE, it’s the Echo Express SEL. Just over $300US, depending where you look ($310-350). The SE II I purchased, I found for $445US at AVAlive.com. Regular price for the SE II is $499, but if you watch the various sites that carry it, it will go on special for lower pricing.
@CrazyC: thank you very much for the detailed review. Very, very helpful!
Glad I could help Andrew. I am very much enjoying this setup and thought it could help others if I shared my experiences.
Count me in as another happy costumer. I am using a Sonnet Echo Express Pro with an Apple GT 120 card. Currently driving 3 monitors.
Thanks for the instructions.
Has anyone tried this using Parallels on a MAC? If I run Windows via Parallels, can a multiple monitor setup work for both MAC OS Mavericks and Windows 7 & 8 via Parallels?
Hi I have a 27 inch iMac (Late 2013), with an NVIDIA GeForce GTX 775M 2048 MB. I want to get the best graphics card I can to make 3d editing and rendering with a lot of effects in Adobe Premiere and After Effects and eventually cinema 4d. I am wondering
1) if anyone knows if this will work on my machine?
2)I don’t have an external monitor, so would I have to get one or can I use my iMacs?
3) with everyone’s experience here what hardware would work best for this computer?
Thank you, I am just learning of this graphics capability and love that its a growing thing, I hope apple gets its act together and makes this easier.
It works with an iMac, you must have a second screen, and it’s complicated to find a faster graphics card than the GTX 775M : it’s a good graphic card, and with Thunderbolt, there is a loss with performances (10/15 %).
Hi Pierre and everyone who has contributed to this page,
Just wanted to post a huge ‘Thank You!’ here for making the information available, and for everyone who has followed up with feedback on your setups. I have successfully installed a single Leadtek GTX780 OC GPU into this Thunderbolt 8-slot PCIe expansion box:
http://www.maxexpansion.com/desktop/CUBE3-expansion-enclosure
The Cube3 came with 2 TB ports and I am able to daisy-chain display port through the 2nd port, so my set up is now MBP > Cube3 > Samsung LCD, on Mountain Lion 10.8.5. I am not using the GPU for display, only for CUDA raytracing. My next step will be to test a GTX780ti, and if that works I should be filling the rest of the slots with it. If not, I will settle for x4 GTX780.
I will update here again once the setup is complete, and post some pix! ;-)
Thanks again, Pierre. I couldn’t have done it without you!
I have a late 2012 mac mini, the 2.5 GHz i5 with 10 GB ram. And i was wondering if and how i could get a better graphics card, because we all know that the intel4000 one definitely isn’t the best, i have wanted to get a better graphics card ever since i found out how bad the one in the mac mini is at gaming and so i have been searching the internet for a solution to getting a better graphics card and every where i looked people just said no you cant with out any explanation but every so often i found someone who said something about an external one. After searching for a bit i found this site, but i am not very good with computers so pretty much everything most people say just goes through one ear and out the other, so i am wondering: what would i need to upgrade the graphics card, how much it will cost, what would be the best graphics card i could get (with enough power to play most if not all games at max settings but not too expensive that i pay so much that i might as well of just bought an iMac) and if possible can you explain it with as little technical language as possible since i just wont understand what you are talking about.
Please reply, thank you.
And sorry for telling my life story. ;)
pierre, anybody please help me i want to know how and if this is a plausible solution to a graphics card upgrade of sorts.
I try to test this week, i have a new 2012 mac mini
Thanks Pierre. And if you don’t mind me asking which of them have you got or will it make no difference on the i7 or i5?
It works the same with a Mac mini, i prepare a think about that
Thought so, just wanted to make sure.
Sorry to rush you, but i am desperate to know: how to use an external graphics card using thunderbolt, what i will need to do it, how much it will cost, what graphics cards i would be able to use by doing this and which graphics card would be the best value for the money.
You need a Thunderbolt to PCIe enclosure (like Sonnet Echo), or a Thunderbolt to ExpressCard and an ExpressCard to PCIe, like in the article.
For the graphic card, it depends : it works with all recent NVIDIA cards.
For the price, it’s ~400 $ for the enclosure and cable + the graphic card and eventually a power supply.
Thank you so much this means a lot to me and i really appreciate you answering everything i asked, but i have a few more questions i would like to ask them being:
when you said the AMD cards have a graphical bug and you advised us not to use them at the moment, does that still apply or has the bug been fixed? because i was considering getting the AMD Radeon R9 290 or the AMD Radeon R9 280X because on the website i use to compare graphics cards they are the best value for money top end graphics cards. the website i used was http://www.futuremark.com/hardware/gpu. If they don’t work then what do you recommend? (I will most likely get the NVIDIA GeForce GTX 770).
And my final question is you mentioned the sonnet, the vidock and the BPlus PE4L but which would you recommend i buy?
Hello? Sorry but i am very impatient.
It works with a Radeon HD 7950 Mac Edition, a Vidock enclosure and the Sonnet Express.
I recommend the Vidock + Sonnet Express because i’m sure it works.
But it’s *not* a practical solution, you must be a geek to play with that, i f you want a « out of the box » simple solution, don’t try that.
So on a scale of 1/100 how complicated and geeky is the vidock + sonnet express?
And as for graphics card would the Nvidia GeForce GTX 770 be a good choice, or will the bandwidth or whatever not be good enough? If not what graphics card would you recommend, for the purpose of gaming.
I know i have been asking a lot of questions but i have one final one, which graphics card would you recommend i buy i would like: it to be good enough to play most/ if not all games, i know this may be asking too much and i may be overestimating the thunderbolt graphics card solution but i just don’t want to spend like £500 on this kind of setup just to be told that it won’t work with a game i would really want to play.
Im sorry, i know i have practically asked this question before, but i am really excited to try get this kind of set-up because like you said at the start « This is the holy grail for some » i have been wanting for something like this for ages and i want to get this so i apologise for my impatience.
Thank you so much for making this kind of information available, and thank you even more for answering all the questions i have regarding it.
Hi, I am Seon.
Above all, thank you for your tutorial! It is really hard to find information about this.
I am trying to do this, but there is no change, even though I finished all steps of yours.
Do I have to use extra display? Doesn’t it work with internal display?
On OS X 10.10 DP1 so far it still works but you need to activate the kext development kernel flag at boot.
Done by simply executing this command in terminal : sudo nvram boot-args= »kext-dev-mode=1″
Then it works like a charm!
here on my rMPB http://puu.sh/9g8V0/db038905c1.png
Thank you for your comment.
Your screenshot looks really awesome!!!!!!!
I really want to make egpu work on my mac.
However, my mac do not recognize thunderbolt egpu.
Although I followed all of the steps of this blog
Could you give me some more advice about egpu?
I am sorry, but there is no one to ask T-T..
that is my set up screenshot
https://www.dropbox.com/s/1utctllbz3sk7sh/NVDAStartup.png
https://www.dropbox.com/s/u0yuqs2wxpc0rfx/AppleHDAController.png
https://www.dropbox.com/s/kgdm4z4el91ok9m/IONDRVSupport.png
https://www.dropbox.com/s/h9ok49nnitueme9/aeccpt%20commed.png
My hardware :
mac 2012 rMBP(early)
Sonnet Technologies Echo Express III-D
Nvidia GTX 650
So I tried the nVidia web driver for 10.9.3 (a workable alternative driver as suggested in https://www.journaldulapin.com/2014/05/31/mac-mini-egpu/) and I noticed on average 1 fps gain in Unigine Valley benchmark under Extreme preset with 2011 Macbook Pro 17 and GTX 680. Not bad I guess… XD
@swk : an external display is not an option : you can’t use the internal display with Mac OS X. It’s possible with Windows and some NVIDIA card, but the performances are very low with that.
@swk : is the card seen on PCI information ?
-> About this Mac -> More infos -> System report -> Video card or PCI card. If the card works, you can see him.
And go to the console and make a filter on the search fields with IOPCI, to see if the modification are correct.
It took so long time because of kernel panic, but I succeed finally!!
It ‘s awesome!!
I can see the card on PCI information !!!!
Thank you for your advise :)
Now, I will try to make it work with extra monitor!
I hope it works well, too!! I will let you know :) Thank you!!
Vidock 4 plus stopped working after upgrading to OSX 10.9.3.. Does anyone else have any issues / solutions with this update?
It works for me with 10.9.3. You must modify the file with every update fo Mac OS X.
And there is a problem with 10.9.3 and graphic card : if you have a NVIDIA card, try the web driver.
Hi,
I have a MBP 2012, a Sonnet Echo Express and a Nvidia GTX 650. Problem is, my external Monitor is not working with it.
I can see the 650 under Graphics/Displays in System Report, the PCI Cards tab gives me an error though.
I ran console it tells me « Driver « NVDAStartup » needs « IOPCITunnelCompatible » key in plist », but I checked the file so many times now, I don’t now what could be wrong about it.
Also my monitor is connected via VGA, could that cause a problem?
By the way, I already tried the web drivers, that didn’t seem to help…
Thanks for your support.
If the console speak about NVDAStartup, you have an error on the file.
Alright, I found the error. was in the wrong column. Console isnt giving me any errors anymore.
But my external Monitor still isnt recognized. Any suggestions?
Can you try the DVI or HDMI ? I have not tested with VGA.
Have you installed the last NVIDIA driver ?
My monitor only has VGA, I have had problems with that before yeah… Do you think a VGA to DVI Adapter could help?
I installed the Nvida Web drivers mentioned above. Or is there more to install?
VGA to DVI is the same as VGA directly.
I have only tested with DVI.
I just connected my TV via HDMI that works. So I guess that confirms that VGA is not working. Now, either I find another solution or might have to invest in a new monitor I guess…
Thanks so much for the help
Hello gents,
This could be a just what I am looking for. Has anyone used this with FCPX? We work from our laptops the majority of our time doing video editing and even with the fastest MBPRs things still get pretty hung up.
I know FCPX has dual GPU support now. The dream would be if anyone here could confirm that they were able to use dual external GPUs for rendering and their built in one for display (gotta new 4K monitor about to arrive and I have a feeling it’s going to whoop my GT 750M’s ass as a second display.
I also never found a concise answer in the thread. Do I need to stick with Apple ready GPUs? And, can you go dual? I’d love to get two of the top end AMD GPUs they are sticking in the new Mac Pro.
Thanks for your tutorial, which I used with the following hardware:
Retina, 15-inch, Late 2013
ViDock 4+
Sonnet Echo Express Card/ 34 TB
Asus Geoforce 660 DirectCU II OC, 2GB
2x Asus PB278Q monitors
Everything was working perfectly back in May, until…
The 10.9.3 update arrived.
Now the monitors are black. The Echo ExpressCard is still being recognized as connected to a Thunderbolt port [on System Report], but for the « PCI Cards » heading I see: « There was an error while gathering PCI card information » and the video card and monitors no longer appear in the report either.
After the update, I went back and made all of the recommended changes to the three files again – just like before.
But still I have no joy.
Any suggestions would be greatly appreciated!
For the information, i have the same problem, but it’s work.
If the monitors are black, try to install the NVIDIA driver for 10.9.3
An advice to anyone trying eGPU: make sure that you use a good quality PSU.
I use a 500W generic power supply with GTX660 (TDP of 150W), and would get kernel panic every once in a while . I then tried a GTX770 (TDP of 230W) with the same 500W PSU and would consistently get kernel panics. I have a spare name brand 500W PSU around so I tried that, and no more kernel panics.
You’d think that any 500W PSU can handle 150W ~ 230W of load, but this wasn’t the case for me. So if you’re getting random kernel panics, try a different PSU and see if that helps.
Hi i am seon untill yesterday I used to be egpu system.
it is amazing experience.
Yesterday, I updated my mac and then I try to fix my three driver file for egpu.
however, it don work for befor version it just black screen or not racognize grahic card….
so I can’t install the web driver
could you racommend any solution for version 9.4??
Hello, If I am using an AMD cards, which kext should I be editing?
I edit some few and was able to show the AMD GPU. However, OS still using the built in HD4000.
Thanks!
Here’s my SETUP
Mac Mini 2012
Thunderbolt Display
XFX R6670 Core Edition 2GB
Sonnet Echo Express Pro
It only detects the card but won’t use it.. Any inputs/?!?
for the Radeon : https://www.journaldulapin.com/2014/05/31/mac-mini-egpu/
Try tu use google translation, it works with AMD card.
Hello Pierre, GPU was detected, however, HD4000 is still the default GPU. Is there a way to tell the Mac OS to use AMD as the GPU (FYI I am running Thunderbolt Display)
so my connection is,
Thunderbolt Display > Mac Mini
Thunderbolt Display (Port) > eGPU (Sonnet, PE4H)
Any ideas?
It’s not possible with Mac OS X and the Thunderbolt Display.
Hello Pierre.
OK so I purchased a Monitor.
Now my setup is
Mac Mini Sonnet Echo PCI DIY eGPU PE4H (GTX 750 ti) DVI – HDMI Monitor.
I can’t get it to work. There’s no display on the Monitor. Thoughts?
Many Thanks!
Try the other output on the Graphic Card.
And launch the console and filter with « iopci » to see if there is not a problem with kext modification
And i’m not certain if the GTX 750 Ti is supported, it’s a Maxwell product.
How about the following GPU’s are these supported?
GeForce GT 630
GeForce GT 640
GeForce GT 610
Thanks again!
I think all is OK, i have a GT610, it works. Every GPU with a Kepler will work (with NVIDIA drivers in certain case)
Hello Pierre, can you please show me your setup for mac mini?
Did you have an extra HMDI from Mini to Monitor? or did you output the display from GPU (DVI, HDMI) to the Monitor?
I’m getting frustrated LOL!!
So is this the GPU that worked for you?
EVGA NVIDIA GeForce GT 610 Low Profile 2048MB DDR3 PCIe 2.0 x16 Video Card
Thanks again!
Hi, so I got it working.. I use GT 610… But often times, it would hang and restart………. have you encountered this??
Another thing, when you say
« And launch the console and filter with “iopci” to see if there is not a problem with kext modification »
what do you mean by this? what I should be looking at and updating???
Thanks!!!
If its work, no problem.
If the card will not work, launch Console (in the Utilities folder) and filter (on the research field) with « iopci ». If there is a problem, you will see lines with iopci and the name of the kext with a problem. You must modified this kext withe the thunderbolt section.
Hello Pierre, it didn’t show anything after I filter « iopci » in the console. Any other thoughts?
Actually, I was able to load it up one time. I was able to see GPU worked, I wasn’t just able to do a screen shot. When I tried to launch app. Then it freezes and restarted. after that I can’t get even to worked properly again. It loads on the log in screen then i-restarts.
I saw these errors whenever the OS restarts after I disconnect the eGPU.
Kernel Extensions in backtrace:
com.apple.iokit.IOGraphicsFamily(2.4.1)[75D81741-64C1-3941-ADFA-9D6B6C434EE4]@0xffffff7fa516d000->0xffffff7fa51a4fff
dependency: com.apple.iokit.IOPCIFamily(2.9)[4662B11D-2ECA-315D-875C-618C97CDAB2A]@0xffffff7fa48be000
com.apple.iokit.IONDRVSupport(2.4.1)[D41125CE-69BD-32E7-9B1D-4E83431662DD]@0xffffff7fa51b0000->0xffffff7fa51bffff
dependency: com.apple.iokit.IOGraphicsFamily(2.4.1)[75D81741-64C1-3941-ADFA-9D6B6C434EE4]@0xffffff7fa516d000
dependency: com.apple.iokit.IOPCIFamily(2.9)[4662B11D-2ECA-315D-875C-618C97CDAB2A]@0xffffff7fa48be000
dependency: com.apple.iokit.IOPCIFamily(2.9)[4662B11D-2ECA-315D-875C-618C97CDAB2A]@0xffffff7fa48be000
dependency: com.apple.iokit.IONDRVSupport(2.4.1)[D41125CE-69BD-32E7-9B1D-4E83431662DD]@0xffffff7fa51b0000
dependency: com.apple.iokit.IOGraphicsFamily(2.4.1)[75D81741-64C1-3941-ADFA-9D6B6C434EE4]@0xffffff7fa516d000
dependency: com.apple.iokit.IOPCIFamily(2.9)[4662B11D-2ECA-315D-875C-618C97CDAB2A]@0xffffff7fa48be000
Hello Pierre, would you be able to send me the 3 kext files you have I just wanted to see if I’m doing it correctly..
Thank you
Hi Pierre,
Thanks for the great tutorial and also for the great continued support. I hope you can help me and maybe point me in the right direction.
I’m running a Mac Mini (2014)
OSX 10.9.4
Sonnet ECHO ExpressCard Pro TB adapter
ViDock 4++
EVGA Geforce 770
I’ve edited the three suggested files:
/System/Library/Extensions/NVDAStartup.kext
/System/Library/Extensions/IONDRVSupport.kext
/System/Library/Extensions/AppleHDA.kext/Contents/PlugIns/AppleHDAController.kext
I have just started fiddeling around with my ViDock and an EVGA Geforce GTX770. I’ve followed the steps above with textwrangler, and have also installed the Nvidia Webdrivers for OSX 10.9.4 (which took some coding and headaches to get in) but the graphics card is still not visible under System information.
The Sonnet is visible and shows as device connected.
Question 1: Have I missed something?
Question 2: I no longer have audio from my analogue Out on my MacMini. Is it necessary to edit the AppleHDA file, or can that be left alone since I don’t require audio over HDMI?
Thank you kindly,
Nalle
Verify is the HDAcontroller is patched correctly.
And try to modified the kext *after* the installation of the nvidia driver.
Reset all three files and then re-edited them and now the GFX card is working. Thank you!
The audio is still gone though, and 2560*1440 resolution looks very bad, but that is merely tweaking.
I’ll keep looking into the audio part.
Thank you again.
Hello Nalle, I am also working with my Mac Mini but I couldn’t make it work. Can you please send me the 3 kext file? I just wanted to have a reference. Thank you!
There’s a new eGPU option out there!!!! please see our post here!!
http://forum.techinferno.com/diy-e-gpu-projects/7580-%5Bguide%5D-2014-15-macbook-pro-iris-gtx780%4016gbps-tb2-akitio-thunder2-win8-1-a.html#post104132
Thank you Pierre for your great work. With your guide I am running a mini-ITX version of the GTX 760 by MSI on my OS X 10.9.4 mac mini 2ghz server.
Thanks again,
Mark
Thanks for the info.
I was able to repackage the NVIDIA 343 web drivers and install them on my Macbook Pro Retina (Yosemite). Follow your guide and boot using the external GPU (gtx670).
It is not stable however. Not sure if its the hardware rigged to build this or software.
@Gizmo, what type of error are you getting? kernel panics? Or maybe because Yosemite is still in beta state?
OSX 10.9.4
ViDock 3
GTX 750
Sonnet Echo Pro
Sometimes in the info.plist files there are multiple instances of CFBundleIdentifier before a , do I need to place a IOPCITunnelCompatible
for each one or just a single one before the first ?
Trying with just a single one edit for each one my computer recognizes the Sonnet Echo Pro but not the Graphics Card. What can I try?
Thanks for your help!
Email me at chrisprabhu2@gmail.com
The GTX 750 don’t work actually with OS X
thanks for the reply!
you are certain? how do you know?
Hi
Do any of these setups benefit premiere and/or aftereffects on the latest macmini i7/2,6Ghz/16 Gb ?
That would be the only reason for me to spend almost $1000 (with a 680GTX included)
thanks
I will post my video regarding using GPU CUDA/OpenCL on Premiere with eGPU. It certainly increases the rendering time vs the software renderer option in Premier.
For the meantime here’s my eGPU implementation: https://www.youtube.com/watch?v=uiBFe3yc2Xk&list=UUXwtd55qt20so4hU83UWOrw
Does using Mac running MacOSX 10.9.4 with a eGPU running a Nividia or AMD PC Graphics Card have sleep issues?
I mean can you put the Mac to sleep with the eGPU setup?
It depends of the eGPU and the Mac.
So which ones do you recommend that doesn’t conflict with sleep function on the Mac?
If i use a PC version of Nvidia Geforce 650 or 660, would it causes sleep problems on the Mac?
I got a mac mini
I have not tested with the mini.
but with your mac, which ones doesn’t have sleep problems?
I didn’t encounter any sleep issues with my egpu-mac mini-sonnet iii d-cinema display
My question:
So which graphic card is known to have sleep issues and
which graphic card is known to work with sleep function on the Mac?
I think you will have sleep issue you enable your Energy Save ‘Wake for network access’ settings in System Preferences!
The official release of Yosemite will no longer load unsigned kext:
10/17/14 9:36:18.180 PM com.apple.kextd[19]: ERROR: invalid signature for com.apple.nvidia.NVDAStartup, will not load
Does anyone have any ideas on how to fix this? I’ve reverted to Mavericks for now…
juste type that :
sudo nvram boot-args= »kext-dev-mode=1″
i prepare a things about Yosemite next week
For information : Maxwell cards works with Yosemite and NVIDIA drivers !
I installed Yosemite on my 2012 Mac Mini today and found 2 extra steps needed to get the external GPU working this time. I will list out what I did below and only reference the original instructions.
1. After installing Yosemite, boot to desktop and open terminal.
2. As Pierre said above, you need to enter this: sudo nvram boot-args=”kext-dev-mode=1″
It will ask for your password.
3. Close terminal and reboot before doing anything else.
4. After rebooting to desktop, now follow all of the original steps for modifying the 3 kext files needed.
– AppleHDA.kext – 2 sections starting with CFBundleIdentifier
****additional modification for AppleHDA.kext
– IONDRVSupport.kext – 3 sections starting with CFBundleIdentifier
– NVDAStartup.kext 1 sections starting with CFBundleIdentifier
After only doing the steps above for the original mod I found this error in my log:
kernel[0]: Driver « AppleHDAController » needs « IOPCITunnelCompatible » key in plist
I tried a few locations to resolve this and found that we need to add another IOPCITunnelCompatible key before the last in the section that starts with com.apple.driver.AppleHDAController.
For the the 10.10 release of AppleHDA.kext, the last 5 lines looks like this:
IOPCITunnelCompatible
As I’ve said before, all the other steps from the original instructions at the top of this page still apply, but make sure you open terminal and end the nvram command before modifying any kext files or this won’t work and you will see errors in your logs about invalid signatures for kext files like Joe mentioned above.
And then make sure you get the extra entry for AppleHDA.kext.
Everything appears to be working fine as it was in Mavericks.
I should also mention that I tested out running 4 displays on this setup in Mavericks. As of today I only have 3 and will have to test the 4th again, but I don’t see why it won’t work.
1 display connected to the Mini’s HDMI port
2 displays connects to my Nvidia 630 GT ports
1 display connected on the pass through thunderbolt port of my Sonnet Echo Express box
For normal use, browsing, videos, etc. speed is fine. I did trying playing a game on one of the Nvidia connected displays but had very low frame rates which made it unplayable. So if anyone is just looking to have lots of apps and windows open at once, maybe watch a video while working, you CAN connect 4 displays to a Mac Mini.
So I found a problem or two with my steps today when I realized that my internal audio components were not showing up under system preferences. After troubleshooting for quite a while, I ended up putting my original AppleHDA.kext file back and my audio was working correctly.
After putting the original back, I proceeded to troubleshoot my displays not working AND audio not working if I edited the file as needed for the GPU on thunderbolt. After lots of playing around, I have been unsuccessful getting both my eGPU AND my internal audio working at the same time. This is not a major problem for me as I have an external USB audio device for surround sound, which is why I didn’t notice the audio device issues in the first place.
So be warned…. anyone upgrading to Yosemite and following the steps I listed above, you will not likely have your built in audio devices (at least on a 2012 Mac Mini). I have tested USB headset, airplay audio and external USB audio device. All of these are working fine, but the internal devices do NOT work when I have enabled the PCI Tunnel Compatibility.
Hi Pierre,
Thanks in advance for any information you can share regarding getting your eGPU kext hack to work on Yosemite. It has been working fine for me under Mavericks using two GTX780s, but I recently upgraded a test Macbook Air to Yosemite and the eGPU setup is totally broken, despite following your steps.
Looking forward to your update on Yosemite soon!
Just type
sudo nvram boot-args= »kext-dev-mode=1″
reboot, modify the kext, reboot and it works, for me (there was an error with the « » » on the first comment)
Are you using the latest Nvidia Web Driver for Yosemite 343.01.01f01?
With my GTX 750 Ti, yes.
I’ve done as per your instructions, but it doesn’t work for me. System Information sees two GPUs under ‘Graphics/Displays’ section, but ‘Kernel Extension Info: » states « No Kext Loaded ».
Andrew, open the console app and search the system log for each of the modified kexts to see what it has to say. If it’s refusing the kexts due to signature, there will be an error stating that. My guess is that’s what is wrong, it took me quite a few trys to get it right.
You have to have the original, unmodified kexts in place, reboot to make sure there are no errors, THEN enter the dev-mode command. Reboot again, then modify the kexts.
What I personally have found that works best is to copy the kexts out of the extensions folder to a folder on my desktop. Make backup copies. Modify a copy of each, delete the originals in the extensions folder and then use kextbeast from tonymacx86.com to install them.
Pierre, are you having the problem I am with the audio devices?
Ok, I’m an idiot…. I never saw the AppleHDAController.kext in the plugins folder. I’ll try that and see what happens.
So… I have no audio device problems when I edit the CORRECT file.
Pierre, did you just change that within the last couple days? I could have sworn that it said the AppleHDA.kext file before. I poked around in all the folders and was being blind to the Controller file.
Are you sure of your modification ?
If you add the 2 lines on the wrong place, you have no sound.
Add the 2 lines at the end, not between a key and a string value.
What I had done was edit the ApplaHDA.kext, not the AppleHDAController.kext that’s in the plugins folder. Once I modified the right file, it works fine.
What I was asking was if you just recently changed the file in your instructions at the top of the page? But that was probably just me missing it.
One last question, can a graphics card from the GTX 9** series work with this (e.g a GTX 970)?
Withe the last NVIDIA driver, yes, it works
So will it work on Mac os, if so does it have to be a certain version e.g Yosemite or will it work on any version (i use 1.8.3 because i am too lazy to update). Or if it doesn’t work on Mac os will it only work when the computer is booted into windows.
With the last NVIDIA drivers for Yosemite.
I have not tried with Mountain Lion
Ok, thanks.
So what is the difference in performance for a gtx 970 with a thunderbolt 2 connection instead of a thunderbolt 1 connection.
No idea, i mean not many. It’s ~10 % between ExpressCard (500 MB/s) and TB1 (1000 MB/s).
So it wouldnt really be worth it to go for a thunderbolt 2 – gpu?
Has anyone had any issues with the 343.01.01.f03 Nvidia web driver release? My mac mini with a gtx 760 had previously worked fine with 343.01.01.f01 on osx 10.10 yosemite, but now it is not detecting my card. Interestingly, it looks like some power management was implemented (card now powers on and off when the mac mini turns on and off, when previously, the graphics card had to be powered on and off manually with its external power supply’s switch). I hope I just screwed something up in my kexts, but I’m not sure at this point.
Thanks,
Mark
Nevermind! Ignore my prior post! 343.01.01.f03 is working perfectly. (The problem was that my card became unplugged from my PE4L somehow. Woops!)
Mark
Hey!
Gear:
rMBP OS 10.9.5
EVGA GTX 770 4GB
Sonnet III-D Chassis
Corasir 650W PSU
I have modified the 3 Kext Files (Perhaps I did it wrongly). installed a mod Web Driver for 10.9.5
My eGPU is recognized in the Graphics Card under System Profile. But there is the « Error gathering information… » under the PCI Card tab.
IOPCITunnelCompatible
*Note*Foward signs replaced with } for illustration.
/System/Library/Extensions/NVDAStartup.kext
Line 49 <key}IOPCITunnelCompatible</key}
Line 50 <true/}
/System/Library/Extensions/IONDRVSupport.kext
Line 91 <key}IOPCITunnelCompatible</key}
Line 92 <true/}
/System/Library/Extensions/AppleHDA.kext/Contents/PlugIns/AppleHDAController.kext
Line 57, 74, 91 <key}IOPCITunnelCompatible</key}
Line 58, 75, 92 <true/}
About This Mac-More Info- I'm still getting the onboard graphics as the main one
My Da Vinci Resolve is still giving me 7-10fps Rendering speeds even though under System Overview recognizes the GTX 770.
Anyone have any suggestions why this could be?
Very interesting article.
What i am wondering about is if it is possible to drive a 4k display with 60hz with such a setup?
Anybody any insights?
Cheers
With a DisplayPort display, no problem, i have tested. With a HDMI 2.0 TV, not today, i have tested and failed.
And you got 60hz and not only 30hz?
With a GTX 980, the HDMI port don’t work. With another GPU, it works at 30 Hz
For those thinking about the OS X 10.10.1 upgrade, everything is working, though I needed to install the 343.01.02b02 (beta) Nvidia Web Driver. As of this moment there is no official/non-beta Nvidia Web Driver release that supports 10.10.1. Search the web for WebDriver-343.01.02b02.pkg to find the beta, or wait until the official non-beta NVidia Web Driver release before upgrading.
HI.
Be carfeul. Yosemite does not like modifying kext it seems. And Ive not been able to boot since doing this in yosemite. Just hangs …spent ages trying to fix. Did you actually get it working? Are there any other steps I need to do?
Yep : sudo nvram boot-args= »kext-dev-mode=1″
Hiya. Yeah I had that. I think I discovered the issues tho. I nano edited one of the kext, and discovered I missed the in one of the entries. I wonder if it hung on reading that point. Anyways…we’re back in businiess with macbook working and latest everything, so time to try to reactivate the thunderbolt again. Oh, regardign the sudo nvram boot-args=”kext-dev-mode=1″ is it better to hard code it into the boot.plist since if you ever do a vram flush on boot, you will lose that boot-arg right? Thanks!!!
the above should have read… I missed the « true » key in one of the entries
Wait pierre, so does the gtx 970 work? Because you said it did before but now in the attention part it says it doesn’t work.
Hi Just wrote a blog on getting the 970gtx working in macbook. This page was a big help so Ive linked and credited it in the blog.
Still not 100% setup as want but very close.
http://www.villagetronic.com/g4/expansion/forum/gpu-driver-installation-procedures/188-macbook-vidock-970gtx-oculus-rift
Thanks Pierre for this topic !!
-P
Jamie : it works with the latest NVIDIA drivers on Yosemite, but not all the connectors (HDMI don’t work with my GTX 980)
Wait what do you mean, by the HDMI not working?
With a GTX970/980, the HDMI output not working (i mean it’s because it’s a HDMI 2.0 output and there is no support for that on Mac OS X)
Ah, ok, now i get it. But what did you use instead of HDMI?
DisplayPort or DVI (i have not tested DVI)
Ok thanks.
Hey everyone, I just bought one vidock+ for my 2011 end macbook pro (13), intel HD 3000, with my new graphics card GTX 750 TI. When I use this under windows it always bulescreen and I don’t know how to deal with it. I am trying to use it under OS x (10.9.5) but I did not get the several steps in this page right now. Could anyone help me with that? Thanks a lot.
What’s « bulescreen » ? For me, the 750Ti works.
And with Mac OS X, you must install Yosemite for a Maxwell 750 Ti card.
Bluescreen as 0x00000116. I did install the latest Yosemite of 14b25, and I think I have done those kext parts and repair permission parts right and the driver installed successfully. BUT It shows under my card ‘ECC not supported’ and it is obvious that my card does not work. I just thought if I have to use an external monitor? When I checked the details of GPU in system report, there is a LCD under my original HD 3000 information, and 750TI not. In extension parts, AppleHDA is ‘Yes’, IONDRVSupport ‘Yes’, but after the first reboot of fixing the permission, it shows ‘Yes’ of NVDAstartup and maybe a few minutes later or after I reboot my pro again, it turns ‘No’….. I am trying to fix those these days, it seems not really work, therefore I bought an external monitor and hope that is the key problem.
hello
by now i think i read all the comments in this blog. i thought i might be ready to install my own setup.
only now it just doesnt work.
i have:
macbook pro mid2012 osx 10.10.1
psu corsair rm 650
gtx 760 4gb
sonnet echo express sel
display connected via displayport
still i have no picture. and the gpu is not listed.
i checked all the kext, also the sudo command.
does anyone have an idea
thanks
korbi
@taylor : for ECC, it’s normal : you can’t use the ecc memory with a « consumer » card, only with Quadro.
@korbi : have you tried the other video out ? With a GTX 980, i can’t use HDMI 2.0. Try HDMI or DVI
So what kind of reason should be the main problem? Maybe I could give you some pictures that might be helpful.
Thanks
Taylor
hi pierre
I’ll try the different video out tomorrow. is it possible that i have to jumpstart the psu. dont know much about that.
thanks
korbi
But with most people I read here, they can see the gppu in the system, but get no picture. i dont get any conformation at all.
Please.. Sorry for my English.
Hi Pierre,
Look, i’m working now with a 750ti on yosemite with PE4L 2.1.
Running windows, i get 4x pci connection, but under OSx, just 1x.
now… My other setup problem is: Blessed file AppleHDA. this still not working for me. i tried several positions for the code and nothing happen.
a screenshot https://dl.dropboxusercontent.com/u/47207557/applehda.png
appreciate your help.
thanks.
@Cristian There are three parts should be added code in AppleHDA kext, i guess you must be missing them
Hello,
I’m trying to install a Netstor NA211TB on Mac OS X Lion. I cannot find the NVDAStartup.kext file in the directory. Is the file named differently in Lion? It is important I stay in Lion, due to the software used in this machine (DICOM Viewer Osirix for Radiology purposes).
Best Regards!
I have no idea, i have not tested with Lion and i don’t know if it’s work
Can’t make it work under Yosemite with 750 TI. Could you give some suggestions? I am soooo sucked by those stuff.
Hi, i have a late 2011 macbook pro 15″ with 650M inside and egpu 750TI on thunderbolt, but tje lcd screen of my mac dont use the egpu (tested with uengine) can you tell me if the lcd screen can work with the egpu or if iris macbook’s can.
Regards.
I’ve read reports that say OSX does not support more than 2 graphic cards:
http://render.otoy.com/forum/viewtopic.php?f=9&t=44989&p=223394&sid=615ff7e31a6056229ea158b75711301c#p223394
Is this true? I have x2 GTX780 in a TB chassis now and plan to add another 2 more, but that would not be possible due to this limitation.
Does Pierre or anyone know?
Thanks in advance!
New poster here — I have a 2012 Mac Mini / 16GB RAM with 2 external DELL U2412M displays (standard DVI connectors.)
I want an eGPU for faster OpenGL in my CAD program « Vectorworks 2015. »
What is the easiest, most-reliable configuration of external Thunderbolt –> PCIe chassis + power supply + video card, to run under the latest revision of Yosemite?
Thanks!
hey gosmond
the easiest i dont know. I got it to work with
akitio pci case
corsair rm 650 powersupply
pcie 8 to 16 riser with molex
nvidia gtx 970
yosemite 10.10.1
I have a question about my 10.8.5 Macbook Pro (Mid-2012), which has a default Intel HD 4000 graphic card. Recently, I purchased an external graphics card (NVIDIA GeForce GTX 650 2048MB GDDR5) and fixed it to my PCIe expansion chassis, which is properly hooked up via my thunderbolt connection and running. However, my laptop (hooked up to an external monitor) doesn’t recognize the eGPU. For example, under the « Graphics/Display » section in « System Properties » in « About This Mac », it does not list my eGPU.
Is my Graphics Card compatible with my Macbook Pro? If not, then do I have to tweak certain settings as a super user in terminal in order to make it work? Or do I have to upgrade to Yosemite and use the method that you have prescribed? Or do I have to purchase an entirely different graphics card?
Today, Intel announced Thunderbolt 3 and they say that thunderbolt 3 officially supports external Graphics Cards, so what do this mean
for us with computers with Thunderbolt 1 or 2? Does that mean external graphics cards will be officially supported on thunderbolt 1 & 2 too?
It’s a good question.
It’s a problem with driver, and i don’t know if Apple will support that. With Windows, actually, it works OOTB : technically, there is no difference between TB1, 2 or 3 for that (only the speed)
Hi Pierre,
Thanks a lot for the article and your support. Your entry pushed me to try this, so finally I bought an EVGA nVidia GTX 970, a Sonnet Thunderbolt to ExpressCard adapter, the BPlus PE4L with all the PCI cables and so on and of course the Thunderbolt cable.
I have two MBP: one 15″ from early 2011 and one 13″ retina from late 2013, both running OS X 10.10.2. I’ve carefully followed the instructions here and from other sites to correctly modify and flush the kext files, but I’m not able to detect the card.
Apparently, I got the nVidia drivers correctly installed, as the app appears in the finder menu, but it does not detect the card by thunderbolt.
My intention is to use it under OS X, not windows, and my main question is: is it possible? Maybe I have to plug the card at some specific point? Do you have any recommendation? After so many tries and readings, I’m not sure now that my config can work.
Thanks a lot,
Javier
* As addendum to my last post, the nVidia app appears in the finder menu and I can select the NVIDIA web driver, I restart, the GPU fans spin for a while and then stop. I do not see any signal in the external display.
Hello! I decided to make an eGPU based on Akitio Thunder 2 for MacBook and I had a few questions. I hope there is a person who can help me. Here are the elements of my system:
– Macbook pro (retina 15-inch, mid 2014)
– Benq 3201PT secondary display
– Akitio Thuder 2
– Nvidia GTX970
– PSU Crosair CX500M
– PCI-Express PCI-E 8X to 16X Riser (I know that it is not the best way and in the nearest future I will use molex to barrel adapter)
– Paperclip
This video helped me to make Yosemite to see my eGPU http://www.youtube.com/watch?v=QfKb8…7vxl1A&index=5 Now my nvidia GTX970 is displayed in the system information. But I’m not sure that everything is done correctly. I am interested in the use of an external graphics card only with Yosemite (for work in DaVinci Resolve and Adobe Premiere) so I connect an additional monitor to the macbook because, as far as I know, this is the only way to get a performance of my eGPU on Yosemite . When I connect the monitor (via HDMI or Displayport) directly to the GTX970, my monitor says “No signal”. Under the characteristics of my GTX970 in the information about the system, I do not see any information about the additional display (under intel iris – the information about two monitors at once). And when I go to the section About this mac, and then move on to the Monitor tab, I see under the two monitors (built-in monitor and additional monitor) the information that they are using a video adapter Intel iris (internal). Does it mean that the system does not use the power of my eGPU GTX970? My Akitio is connected to the mac and mac is connected to a second monitor (thunderbolt – displayport). When I launched Unigine Heaven on my secondary monitor with default setting I receive maximum frame rate of 25 fps. Here is a link to a photo of my hardware configuration and kext files that I have changed through the application text wrangler. https://www.dropbox.com/sh/ulo34t8it…XjSPXT8na?dl=0
A link to the video of commercial project is based on the box Akitio http://www.youtube.com/watch?v=qGyPW0tCkHY
On 14:11 visible information about additional monitor. There we see that the monitor is under eGPU
What did I do wrong?
Then, on the advice of techinferno I used this plug-in and instructions http://forum.techinferno.com/mac-os-x-discussion/10289-script-automating-installation-egpu-os-x-inc-display-output.html
After that, I downloaded automate-eGPU.sh through direct link to the desktop, and then step by step, repeated the command in the terminal and then restarted the computer. The system parameters have changed and now in the Monitor tab under two monitors the Nvidia GTX970 is displayed. However, a direct connection to the secondary monitor GTX970 works only via HDMI. When I connect a secondary monitor via DisplayPort again appears « No Signal ». However, at the moment of connection the main monitor reacts to it. And besides the mouse cursor on the secondary monitor began to move with strobe as if the monitor began to show less fps. It looks very bad. And naturally deteriorated image quality as compared with connecting the monitor directly to a MacBook through a Thunderbolt DisplayPort. This is most likely due to the fact that I have 4k monitor and HDMI does not support this feature. When I connected the monitor directly to macbook back (Thunderbolt-DisplayPort) after the action in the terminal without using eGPU, mouse continued move with strobe. Maybe I made a mistake when typing commands in the terminal. At this time, I had a MacBook attached to external video card and a second monitor via thunderbolt simultaneously. How to remove strobe in the image and haw to make the DisplayPort connectors on the GTX970 work properly?
I’ll be glad if you understand my question, and you can help
@Tristan9, you got the eGPU to use the internal display just by entering the sudo nvram boot-args= »kext-dev-mode=1” command? Is that all you had to do to get the eGPU to display on your Retina MacBook Pro’s internal display?
1. Please disregard my earlier post. I neglected to read the rest of your post.
2. When you say that you have to enter “sudo nvram boot-args=”kext-dev-mode=1″” at boot, you you mean whenever you want to have the eGPU use the internal screen or do you mean you just have to enter it once and it’ll work every time after that? Also, how do you enter it at boot? I’m a little confused here, you said that you have to enter it at boot, but you also said that you enter it in Terminal. Is there a special keyboard shortcut which brings you to Terminal at boot?
The command had no effect with El Capitan, just disable SIP with El Capitan, that’s all.
@Pierre Dandumont It’ll work if I disable SIP?
Hey guys…
I have a ViDock4 that I’ve had for almost 2 years. It works great and is running on a Nvidia GTX 760 card. I’ve recently built a dedicated gaming pc and no longer need to ViDock. Runs Unigine Valley at around 80fps (ultra settings, 2560×1440)
If anyone is interested please let me know.. martin4vidock4 [at] sent [dot] com
**Parts list,
ViDock 4+
Sonnet PCIe to Thunderbolt adapter
Thunderbolt cable 6ft.
Nvidia GTX 760 gpu.
Woud like to get $500 obo
Thanks.
P.S. Sorry for posting the ad here, but hopefully this might be useful to someone. :)
good afternoon. Sorry for my English. Please help. I have Akita Thunder 2, MacMini 2013, power supply with adapter pci Express. Windows not find my card. graphics tried GTX 750, GT 740 Device Manager also no information about the connected equipment, bridges Pci.
Hey I was wondering if anyone could help me out. I’m using a Late 2013 iMac with TB1, running Yosemite 10.10.5. I got a Titan Z, 1000 PSu, and Akitio Box, and followed the instructions several times. But no matter what at the end of the install my screen just lags afterwards and doesn’t recognize the card is installed.
I tried redoing this multiple times and reinstalling my system and it’s driving me crazy.
I think on one occassion the cards actually appeared to be working(They appeared under the graphics/displays in system report) but once I launched After effects my computer froze up and restarted. They never showed again since.
Any thoughts anyone?
Hi,
i got to work a 770 GTX with Vidock 4 ++ on el capitan 10.11.13 with latest nvidia web drivers.
However I don’t get sound anymore on the mac. For sound output it does not list my speaker anymore.
Any tip?
Do you think DA Inquisition will run on Macbook Pro 13 » Late 2011 with this set-up?
Hello,
This is so interesting!
I have been trying to get an eGPU working on my MacBook Pro 17″. I only want for rendering in Adobe Suite for editing.
Running 10.9.5 . I have sonnet echo express III.
I have tried your instructions with Quadro 4000 for Mac. But I cannot seem to get it to work. Is this card compatible? Perhaps I am coding wrong, could you maybe provide a screenshot of the way the codes should appear exactly?
You mentioned you have the « latest nvidia web driver » installed. When I tried to p install the driver for 10.9 it said « this computer is not compatible with driver ».
One other thing, when I originally (before even trying coming to this page) my camper recognizes a graphics card when plugged into th thunderbolt chassis, but it reads the wrong card! It says it is an AMD card!!
Please, any feedback would be incredibly appreciated!!!
Thank you!!
Try with that : https://www.journaldulapin.com/2015/12/02/a-faire-script-egpu/
It’s a script who make the correction and mod the driver
Hi!
Thank you for responding!
That script looks like exactly what I need.
I downloaded the .zip from the script page. But I don’t know where to put it…
Sorry, I am a bit novice with coding/hacking.
From what I understand, I must put the script .sh file (somewhere),
Then run Termnial commands:
chmod + x automate-eGPU.sh
sudo ./automate-eGPU.sh
I run both? One after the other?
Question, will this hack work for Windows only graphics cards. Like M4000?
NVIDIA says I can only use graphics cards (not via TB) that say « for mac » (like my Quadro 4000 FOR MAC)
THANK YOU!!!
-Plug the card
-run the command
The script will just make the modification, with a message if there is a problem.
-Restart
I have no idea if the card is supported, i have not tested with this model.
Ok. But where do I put the script? In what system folder?
The script .sh I downloaded is just sitting on my desktop.
When I run the command it says « directory not found »
Lauch the terminal
type :
cd downloads
git clone https://github.com/goalque/automate-eGPU
cd automate-eGPU/
chmod +x automate-eGPU.sh
sudo ./automate-eGPU.sh
The Terminal wait for the password (just type the password and press enter, there is nothing on screen)
That seemed to work, the software installed, and script ran…
I got a message in Terminal « only Kepler architecture cards are supported on OS X 10.9.5.
I guess I got the wrong card after all :(
http://www.amazon.com/gp/product/B004CRS78O?psc=1&redirect=true&ref_=oh_aui_detailpage_o00_s00
One last question. You mentioned you were using a GTX 960? That is a Window card. So I guess the hack works for Windows cards on Macs as well? Are you on 10.9.5? Because the GTX 960 is Maxwell.
Thanks allot. You are awesome.
I’m on El Capitan.
Many « Windows » cards works with Mac OS X, but not all. And even if the card works, you can have problems with video output : not all the port works, it depends of the brand and the model.
Thanks for all your help. I really appreciate it. I have been trying to get an eGPU running for so long now.
If I decide to upgrade to El Capitan, is the procedure the same with the automated script?
« Launch the terminal
type :
cd downloads
git clone https://github.com/goalque/automate-eGPU
cd automate-eGPU/
chmod +x automate-eGPU.sh
sudo ./automate-eGPU.sh »
Yep.
Hey,
So I just tried the script on a laptop running El Capitan 10.11.3. Still trying to get Quadro 4000 for Mac running over Sonnet 3.
I ran the script in terminal, after entering password when prompted I got the following error:
Password:
nvram: Error getting variable – ‘ csr-active-config ‘ : (iokit/common) data was not found
Boot into recovery partition and type: csrutil disable
Paolas-MacBook-Pro:automate-eGPU MensajeroAzul$
I used my wife’s computer to try this out because she uses EL Capitan. I hope I didn’t mess up her computer!!
Any thoughts??
Thx
Just disable the SIP.
Reboot the computer with cmd and R pressed.
Launch the terminal from the menu
type :
csrutil disable
reboot
And retry
When I disabled SIP like you said, the install worked!
Everything was successful in Terminal. It detected the correct graphics card, installed the appropriate driver. Then it prompted me to reboot.
After restarting, I went into system report to verify, and there still is something strange.
It now shows TWO graphics cards in the system report via PCIe. But NEITHER are the correct one!
One still shows up as NVIDIA GeForce GT 750M (which is what originally showed up before this process, but still not the right card)
And now, the NEW ONE shows up as just « NVIDIA Chip Model. » In the specs it doesn’t read the correct info, eg. VRAM, etc….
I don’t understand what could be happening now! It seems like I’m doing everything right, and the instructions you send keep getting me closer and closer. Is there something else that must be done now?
Thank you Pierre!
Ever since I installed my eGPU, Spotlight runs for a minute every time my Mac boots. Has anybody else had this problem? Is there a solution?
By the way, I’m running OS X El Capitan 10.11.3.
I really have no clue whats going wrong here. I had it all working, then today i installed « Little snitch » I guess it made a mess somewhere so i followed all the steps again but its not working. Its saying it detects my card but its not showing or working after a reboot.
Detected eGPU
GM204 [GeForce GTX 980]
Current OS X
10.11.4 15E65
Previous OS X
[not found]
Latest installed Nvidia web driver
Version: 346.03.06f01
Source: 3rd Party
Install Date: 09-05-16 23:13
Checking IOPCITunnelCompatible keys…
Missing IOPCITunnelCompatible keys.
Mac board-id found.
Searching for matching driver…
The latest package for [15E65] is already downloaded.
Do you want to reinstall? (y/n)
y
installer: Package name is NVIDIA Web Driver 346.03.06f01
installer: Upgrading at base path /
installer: The upgrade was successful.
installer: The install requires restarting now.
Checking IOPCITunnelCompatible keys…
Missing IOPCITunnelCompatible keys.
Error Reading File: /System/Library/Extensions/IONDRVSupport.kext/Info.plist
Error Reading File: /System/Library/Extensions/IONDRVSupport.kext/Info.plist
Error Reading File: /System/Library/Extensions/IONDRVSupport.kext/Info.plist
IOPCITunnelCompatible mods done.
All ready. Please restart the Mac.
Mac-mini-van-Leendert:automate-eGPU leendert$
This no longer seems to work on 10.11.5. Does anyone have a working config?
For 10.11.4 and prior I had to add in NVDAStartupWeb.kext changes to get it working but in 10.11.5 there are new errors.
-J
Hello! I have a mac mini (El capitan) with sonnet echo express se II expansion chasis, I have connected a Nvidia quadro k1200 and tried the instructions of the post but it still not working, could you help me??
Greetings
I have a macbook pro 2011 with failed gpu (reflow didnt work). I can run it from only the intel processor but was wondering if I might be able to use and external gpu to use the system as a desktop? Or do I need the amd gpu to work to do this?
@damovdv provided you can boot the system and perform the necessary steps, the external GPU should work fine and « replace » the built-in one. I use Nvidia eGPUs with DaVinci Resolve, for example, and it lets me choose which GPU is the main one.
@Bruno: Do you have your eGPU system running on the latest El Cap/Sierra?
@Andrew Phang
Still on Yosemite, mostly due to El Capitan’s lack of a « full » Disk Utility and Sierra’s lack of, well, lots of things.
@Bruno: Interested to know what Sierra lacks for you, in terms of video/3d/motion applications? My eGPUs are mainly for C4d and AE on my 2012 MBP, running 10.11.6, and it would be great to learn of any pitfalls before I jump to Sierra. Thanks in advance! Feel free to email me andrew[underscore]phang[at]mac.com if you’d prefer to continue off this thread.
This was a very helpful article and helped clear up a lot of questions I had on the matter. I plan on doing the same thing with a Windows system so the thought of adding that link I noticed in the end was greatly appreciated. The one issue I have with this is that when i click the link that reads « It is there » takes me to a page that has nothing but the words « Something went wrong. Please try again. ». I’ve attempted to open the link in Chrome and Opera browser tabs and received the same result. Is there possibly another link to a website with the same info or anything along those lines? If not, is there a way that i could properly open the link?
Actually, the link is old, and i think it works without that. It was a link to a forum, with a program to activate eGPU. But with modern GPU, it work out of the box, normally