2015 13" MBP [email protected] (AKiTiO Thunder2) + Win8.1 [EdowadoHense]
I have a problem with my egpu. When I am playing a game during 40 minutes i get a black screen during 1 or 2 seconds and after that I see my desktop and the game that I was playing has been closed.
i5 3230M 2,6 Ghz
gigabyte gtx 1060 3gb
exp gdc 8.4d
My power suply is Enermax NAXN 500 W, ATX, 220 V.
Hi guys. I have had my egpu setup and running fine for the past year or so on my mbp (mid 2012) which has a hdd drive.
I now want to improve the gaming performance, so I've bought an ssd.
I manage to get through all the steps in eGPU Setup 1.2 but when i go through the bootloader, it says at the very end "No bootable device -- insert boot disk and press any key".
I'm guessing it is to do with my ssd being in the optical drive bay location (i assume this is hd1) and the original hdd (hd0) being disconnected, so windows can't see it when in bootloader.
I think I need to edit the config file for the chainloader, so the bootloader reads the ssd but what exactly do i need to change?
I tried changing the map section (line 55):
map (%FIRSTHDD%) (hd0)
Changing the (hd0) to (hd1) put the bootloader in a loop!? So I am not sure what to try next...
Any help is greatly appreciated!
This is just to report the success of installing a gtx 1060 on my M17X R4. Mine is the 3D version and as far as I'm aware, you need a screen in eDP mode (120Hz 3D model) for it to work (confirmed) on top of UEFI support to boot up. See here for the gtx 980m install which is the same for this card, but the 980m works on 2D models too: https://www.techinferno.com/index.php?/forums/topic/8103-installed-980m-in-m17x-r4120hz-3d/
HDMI in and out works but it does raise the question if the gtx 1060 will work on the 2D model via HDMI out. It should do as it's the eDP connector for the laptop screen is the issue here. Also 3D mode will no longer work (like anyone cares about 3D anymore ). The cards above the 8xxm series have no 3D support.
A 120Hz screen is needed to pascal GPUS as only the 120hz connector in the laptop supports eDP mode.
Keep your current card, in case you try modding your Bios or something like that, if settings become reset, UEFI is usually off by default. That means in this situation the GTX 1060 won't work without changing the Bios settings. Install your old card as it supports non-UEFI and UEFI modes.
UEFI mode: This is must for the reason above. Windows needs to be installed on a GPT partition to use this feature. As this laptop origianlly came with windows 7, GPT and UEFI originally was not used. However Bios updates and windows 8+ could use it so UEFI was enabled. Install a fresh copy of windows on a GPT partition. The windows installation menu can help you with that. https://technet.microsoft.com/en-gb/library/dn336946.aspx
Bios settings: In the boot options, set to UEFI mode, disable fastboot and legacy options. This ensures that your old card and the Pascal card both work when you swap them out.
It seems the laptop just about supports it. One Major thing to be aware of is the installation. For at least the MSI model of the GTX 1060, you need to use very thin heat pads as the core only just makes contact with the heat sink otherwise. I have found that on the core side are some new resistor blocks (Labelled R.22) that weren't in my old GTX 680m and thankfully they are the exact height of the core, so it isn't impossible to mount the heat sink. It's a very fine mark but provided you use thin pads (stock GTX 6xxm cards have nice thin ones) and a tightly screwed X bracket, you can get good cooling performance. The top R.22 blocks also do not need thermal pads (may benefit from thermal paste though) as you need as little height as possible.
I'm aware of two types of heatsink used in the m17x r4. Both will work but there is a protrusion (in red) that can prevent proper contact with the core. If on a copper cornered heatsink (second image), you may not have to file this bit down. If you seriously have no tools to do this, you can very carefully bend this section VERY slightly to provide a little more clearance. To ensure good contact with other components in this case, use thicker pads or more paste on this section.
(Top) Taken by Zoldago
(Bottom) Taken by Decool
Drivers are fine, just go to laptopvideo2go and get the latest drivers with the modded .inf files. Remember to use DDU before installing .
Simple guide for drivers:)
- uninstall any graphics drivers, including ones automatically downloaded by windows (disable windows update if need be). Using DDU ensure every trace is wiped clean to avoid any problems
- Disable driver signature enforcement (Shift + restart button in the start menu -> troubleshoot -> Advanced options -> Startup settings) OR f8 at boot screen (windows 7)
- Run official installer, quit once the driver files are extracted.
- Place the modded .inf file into "display.driver" of the extracted files
- run "setup.exe" from extracted folder. Done!
Bios + screen
Generally, a modded bios is not needed as all necessary options are already available. Some scenarios may need a display type change or the iGPU cannot be disabled the usual way.
To convert from a 60hz to a 120hz screen, you need to ensure that when booting up on the 60hz screen to disable the iGPU (FN+ F7) (Check BIOS settings to ensure it stays off). Once in dGpu only mode, you can go ahead and install the 120hz screen. 120hz screens do not support optimus as the iGPU is incompatible.
Performance wise it's pretty close to a desktop 1060, hitting a score of ~3600 in time spy and ~12,000 graphics score in Firestrike (desktop scored ~14,000). Temps settle at 75C as the card is limited to ~80W (so very limited OC for now ). First Screenshot below used the stock paste that came with the card. Highly recommend a different paste such as mx-4 paste which I used (second screenshot).
I doubt it will work on a M17X r3 due to the lack of UEFI support.
Fan control and monitoring
I use MSI afterburner for monitoring temps. You can also use HWinfo to control the fans, seeing as the 1060 is an 80W GPU compared to the 100W that the laptop is capable of cooling. If you're interested in lowering the fan speed for the sake of noise, use HWinfo. I'm aware that a system lock up can occur when using the fan control feature. However, so far I may have a solution.
- Remove the main battery. A fix for many users and easy to implement
- Alternatively use the settings provided in my screenshot. I know that the ACPI features are likely to be the main cause of lockups, but to be sure copy my settings and only monitor the sensors needed for fan control (e.g. CPU package temp and GPU temp). the author of this program is aware that the battery monitoring is the cause for lock ups (which uses the ACPI in windows)
Remember that you can only control both fans at the same time! Be sure to stress your CPU with a program prime95 to ensure your CPU does not overheat with your new fan settings. Also use both fan tables, one for the CPU and the other for the GPU so the fans spin up under loads from either.
A final note. I would set a re-spin period on the fan control menu to reduce fan pulse. I found 2-3 seconds ideal. In my machine at least, the BIOS sets the fan speeds higher than needed before settling down to their target speed. E.g. at 4000 rpm, the fans spin up to 4600 rpm and in around 10 seconds slow down to 4000. Below is my preferences, although you may not want to run components quite as hot. Under max load, the CPU hits 90c and GPU 78c.
Good luck and enjoy!
This isn't even my final form!
Mid-2014 MacBook Pro (15-inch) Core i7-4980HQ (2.8 GHz) NVIDIA GT 750m NVIDIA TITAN Xp 12GB (GP102-450) (previously 980, 980 Ti) Also tested with: EVGA GTX 1080 SC (see bottom of post) Akitio Thunder2 Corsair 550w ATX PSU "Fat .50" Ammo Can (800 rd 5.56mm)
Windows 10 Latest macOS version automate-eGPU.sh rEFInd Boot Manager apple_set_os EFI application
Screwdrivers Channel-lock Pliers (or vise grips) Jigsaw / Dremel / Angle Grinder / Metal File / Sandpaper
Honestly, the build was surprisingly simple! Popped open the Akitio, used channel-lock pliers to pry the front side of the Akitio open to allow for the length of the GPU. Added gaff tape over all of the metal parts, just in case the card came into contact with the bare metal of the bent Akitio enclosure.
Got the card handy, a gorgeous little reference model GeForce GTX 980.
On a side note, I actually had an MSI GTX 980 GAMING 4G but ended up trading it for this reference unit, as it was one of the ugliest pieces of hardware I've ever seen, and the reference models are just beautiful. (Form over function, but isn't that the Apple way? :P)
The card slotted right in, no problems here.
Next up was the power supply. I used a Corsair 550w unit, but cut everything besides the two PCIe power connectors and the CPU 12v rail (to power the Akitio). Terminated all the ends with shrink wrap and gaff tape on top of that, and taped all the unused lines down to the side of the PSU. It was also during this step where I hotwired the PSU to always be "on" via the paperclip trick...except I just traced those wires back to where I was going to make my cut, and soldered them together.
For the Akitio's power, I used the molex-to-barrel-adapter guide, but instead of being patient and getting a proper barrel connector with two leads, I cut the barrel connector off of the Akitio's power supply that came in the box. I like to live life in the moment, I guess...but the fruits of my labor were revealed when I stripped the wire and it turned out to be coaxial instead of side-by-side! No matter, I said to myself, as I twisted the outer fibers into a solderable piece of wire, and stripped the inner wire as well. Verified polarity via a multimeter, and soldered the Akitio barrel connector to the CPU12v line from the PSU. A bit of shrink-wrap and gaff tape later, and I had a nice little feed for the Akitio coming off of the PSU.
No powered riser bs, no extra Akitio power supply. Clean and simple. PCIe plugs went straight into the GPU, I gave em a little bend so they'd hug the edge of the magazine holder. I also re-routed the front LED from the Akitio's box around the back of the PCB to where the Akitio power plug is, so that that area of the magazine holder lights up blue when the card is active.
At this point, I took the magazine holder and made cutouts for the GPU ports, ventilation, and PSU ventilation. Covered the rough edges with gaff tape so they wouldn't fray and get sucked into a fan (plus it looks a bit less janky). The Akitio with GPU slid perfectly into one side of the magazine holder (make your measurements first before going shopping!), but was sitting too low for my cutout to be centered on the GPU's cooler...nothing a little packing foam (from the Akitio box!) couldn't fix.
The PSU slid in with...some effort.
From my measurements, I knew the PSU wasn't necessarily going to fit, but it was close enough that with a bunch of gaff tape to keep the bottom and sides secure, it doesn't move anywhere and there are no signs of any danger of it falling out after a good 2 weeks with the setup. I just try to keep this side hidden, it's pretty garish.
EDIT 070416 (MURICA DAY)
Added green underlighting because #AMDsux #teamNVIDIA (lol). Here she is at work (literally, at my work), powering 2x 120 Hz displays & a bunch of OpenCL compute.
It was time to start her up. Plugged in PSU, switched it on, plugged my 4K 60Hz monitor into the eGPU, plugged the TB cable into the Mac and hit the power button. Fired right up, booted into Windows and re-installed the NVIDIA drivers. After a reboot, the card was recognized, and I was playing Doom (2016) at ultra quality 1440p inside of 10 minutes. Not too shabby!
I spent some time in MSI Afterburner, customizing a fan curve to keep it pretty quiet during moderately high gaming workloads, but ramp the fans up quickly if the temperature went north of 70º C. Boy, this thing is loud when the fans are at full tilt, but I'm glad they; the reference cooler is no slouch, and with fans cranked to max it's actually able to pull down the temperature from 80 down to 70 while furmarking!
With a bit of tinkering, I settled on a final, furmark-for-8-hours-stable overclock of +225 MHz core, and 7400 MHz on the memory. Using ThrottleStop, I also undervolted the i7 in the laptop, and downclocked it to ~2.4 GHz. Windows runs a bit hotter than OS X, figured I'd help out as much as I could.
I gotta say, it feels good to put down an 80th-percentile score in 3Dmark Fire Strike with a MacBook Pro.
On the OS X side of things, automate-eGPU.sh took care of everything without a hitch. I did notice some weird stuttering every second (and exactly on every second), but with some tinkering I found out that the "Displays have separate spaces" option was the cause of the issue. Disabling it made OS X run perfectly smoothly afterwards.
Final Cut Pro X immediately took advantage of the new GPU, and I was able to play back Sony FS5/A7s 4K footage with a few layers of colorgrading on it much smoother than with the 750m. It can almost handle playing it back at full-res, which was just astonishing to me. Analyzation of footage for stabilization just rips, along with optical flow retiming.
Adobe CC was able to take advantage of the card as well, Mercury Playback Engine (CUDA) felt much smoother than on the 750m, though I haven't been using Premiere in a while so I didn't do much testing in CC. Unfortunately, After Effects is not really accelerated by the card, but oh well.
To get Optimus to work with a 750m-equipped MacBook Pro, I turned to this reddit thread detailing the installation of rEFInd and using an EFI utility called apple_set_os to get the Mac to expose the Iris Pro when booted into Windows. I also customized the rEFInd interface because the default skin looked like something out of Mac OS 7.5.3 (I half expected little puzzle piece extension icons to start loading across the bottom).
The reasoning for using apple_set_os instead of the built-in spoofing feature in rEFInd is because I'd like to normally run Windows without the iGPU enabled, but retain the ability to switch into "Optimus mode" when I'm mobile.
My full boot/setup process for mobile gaming via Optimus, coming from normal eGPU usage with external monitor is as follows:
Leave eGPU unplugged Boot into Windows Disable the 750m in Device Manager (I usually leave it enabled when booting Windows normally) Run the switch-GPU script to set the iGPU as primary Shut down Windows Plug in eGPU and start the computer Select apple_set_os (I've renamed this to "iGPU Enabler", the far right icon in rEFInd) Boot Windows
If all goes well, I'm in Windows with the GTX 980 as the Optimus "high-performance NVIDIA processor". Game performance takes a bit of a hit, but not anything significant...I can still play most titles at 1080p ultra quality, and they look great on the MacBook Pro's retina IPS display.
Thankfully, all of the lingering issues I have only involve the boot process. Sometimes the entire system refuses to POST (sits at a black screen without ever chiming), and I have to hold the power button for a few seconds and try again. When it does POST though, the next hurdle is whether the driver (in OS X or Windows) will initialize properly. Sometimes it doesn't want to play nice, and I'll get a BSOD on booting Windows with DRIVER_IRQL_LESS_OR_NOT_EQUAL, but a restart or two will do the trick.
FIX FOR BSOD ON BOOT: I figured it out, a trip to Device Manager and I noticed there was a "show hidden items" menu option. Clicking that revealed that I had two GTX 980 devices that weren't connected for some reason, and the driver was fighting itself upon initialization during boot. Rebooted into Safe Mode and ran DDU to clean out the NVIDIA driver, reinstalled it in normal mode with the eGPU connected, and all is well. One GT 750m, and one GTX 980 in Device Manager when viewing hidden devices. If you're having driver issues like I did, you might want to check this.
(NEW) FIX FOR macOS NOT BOOTING: Run Goalque's script in "-a mode". This alters something regarding the thunderbolt chipset on every shutdown, so when rebooting back into macOS, the eGPU will initialize properly every time.
For OS X, I just get a black screen with my monitor showing no signal input. Again, a restart or two fixes this. (Honestly, I've had the NVIDIA Web Driver do this with the internal 750m, so it's just a normal driver-crashing-on-init issue, not specific to the eGPU.)
But once the system is booted, it is rock solid, and I've never had anything crash or fail (besides overclock-induced crashing in Windows, but that's my own fault).
It all seems to be based on luck of the draw, as I'll have some days where it'll work flawlessly and I'll be bouncing between the two OS's with no problem, other days I'll get 8 failed starts in a row. If anyone has any idea how to help mitigate these failed starts, I'm all ears.
The only other issue I can think of is lack of display brightness control when running in Optimus mode (anyone got any clues?), but it just means I have to set the brightness from within OS X first before going through the boot process.
It was totally worth it. I'm in love with this setup, it truly feels like the best of both worlds. The i7-4980HQ in the MBP is no slouch of a CPU, the only thing my setup was missing was some graphics horsepower, and the GTX 980 more than comfortably steps up to the plate. My work experience has had amazing fluidity, and gaming has gone from sub-720p resolutions on the latest titles to gorgeous looking, maxed quality 1080p and higher. Less demanding titles (CSGO, Borderlands Pre-Sequel) even run at 4K 60fps, which is a sight to behold. The Oculus Rift that I got my hands on runs perfectly smooth, with no VR-sickness to speak of. And all this, in a "portable" setup.
I now have 3 levels of portability (with associated levels of performance): full desktop mode, Optimus (so I don't have to lug a monitor around to LAN parties or remote editing / rendering of CGI), and of course the laptop by itself (which, with its Core i7, is still no slouch, at least when it comes to CPU compute power).
It's also extended the longevity of my machine a lot, since I was looking at the 2015 and purported 2016 models for their GPU upgrades...but not anymore! The only thing I'm looking at is the moment NVIDIA releases Pascal drivers for OS X...and my poor wallet might have to take the brunt of a GTX 1080.
I'm still on the hunt for a better case, but all of the computer cases I've found are...well, computer cases, and far larger than this magazine file setup. So I'm looking at...different solutions. An old army surplus ammo box looks like my next case, and it has a handle at the top, which I can't live without after having this magazine file for a couple weeks.
I'd love to pick up a modular SFX PSU so that the PSU actually fits into the magazine holder without any modification necessary, and if it's modular, it'll help keep the cables clean and tidy, with no drive and fan power cables to cut.
Hope you guys enjoyed the adventure, and that some of the solutions to the little quirks I found help out someone! Happy eGPU-ing!
EDIT 070416 (MURICA DAY)
Just for kicks, slapped a buddy's GTX 1080 into the chassis to test with Windows. It required a driver reinstall as the system didn't detect the 1080, even after rebooting...it seems that the NVIDIA driver enumerates the cards in your system at install time and will only install the drivers it needs to, not all of them (different from the way OS X does it). The driver install worked fine without having to run DDU and cleanly install. YMMV though.
The added compute power of the GTX 1080 was more than welcome to help mitigate the performance hit you take when using Optimus. Crysis 3 ran at the laptop's native resolution (2880x1800) at around 45-60fps with all settings cranked. Beautiful.
I was really looking forward to testing out Rise of the Tomb Raider on it, but ironically there's a bug with Pascal cards and NVIDIA VXAO, so I couldn't get a fair comparison.
Wish I could keep it, but the lack of Pascal drivers for OS X keeps me on the 980. For now.
Acquired a "Fat .50" (actually an 800x 5.56mm) ammo box and made the primary cuts using a pneumatic angle grinder + cutoff wheel. Test fitted the Akitio and PSU. Currently need to drill the PSU & AKT mounting holes, but also trying to figure out what thread pitch the Akitio's mount holes are (anyone got a clue?). Specifically, the ones that the Akitio's own case's captive thumbscrews screw into.
Finally finished the ammo can case after much measuring, cutting, and drilling.
As the barrel plug was going to be flush against the side of the case, and I didn't want to have to loopback the cable like I did in the magazine file, I ended up soldering the CPU12v rail to the back of the Akitio's PCB. Pre-tinned the wires and plopped them onto the PCB, then secured it with gaffer's. Verified the correct solder points thanks to /u/Dippyskoodlez, who found the info from these very forums. Singed the PCB a bit, but oh well, close enough.
NVIDIA released Pascal drivers for macOS. Upgraded eGPU to a TITAN Xp. Benchmarks available upon request.
Yes, it's completely a ridiculous setup now—I was only able to upgrade due to external circumstances. Diminishing returns starts to creep in (even for the much-more-fairly priced 1080 Ti) due to the TB2 bottleneck.
So I'm having a little issue with my egpu setup and if anyone could give me some hinters that would be great.
Basically I've done this before with this same laptop on a 980ti which worked perfectly and now I have a 1060.
Only problem is, I've installed everything correctly, theres no error messages in device manager, says this device is working correctly BUT when I go to play games, it decides to run the dgpu instead. Now I've run some benchmarks and the 1060 is being used, getting 150fps. I do have to disable the AMD though.
So, my question to the pros is, what happens next?
I've tried using the latest drivers from nvidia, tried uninstalling everything with Display Drive Uninstaller and trying again, tried using a safe driver version (372.70) because I read the latest one was buggy..
Tried uninstalling and disabling microsoft basica display adapter only to get the same results..
I also get an error when trying to access nvidia control panel "nvidia display settings are not available, you are not currently using a display attached to an nvidia gpu" but it shows in device manager as "working properly"
It also doesn't show in dxdiag as well. only shows the AMD.
I'm not using an external display if that helps..
any help would be appreciated!!
EDIT: I have been getting code 12 errors with my current driver 372.70
Does this mean I need to do a DSDT override?
I'd like to not have to deal with coding etc but if necessary then I can try.
I have tried to update to the latest driver version but that hasn't really been helping either.