External Graphics Card for MacBook Pro -...
 

External Graphics Card for MacBook Pro - Boot Camp eGPU Setup Guide  

Page 5 / 6
  RSS

Mandril420
(@mandril420)
Active Member
Joined: 10 months ago
Posts: 10
Aug 28, 2018 5:03 pm  

I finally got it working by doing a clean install of the Nvidia drivers (along w geforce experience) downloaded from their website. Initially I just let windows get the drivers and even though windows said they were the latest I wasn’t able to select the 1080Ti as the high performance GPU. Now everything works fine and I’m playing Overwatch on Ultra on my internal display. Thank you so much for everything fellas!!

ps: does anybody know how to enable 1440x900? It’s missing closest I get is 1680x1050 plz help!

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
(@ryan_martin)
New Member
Joined: 9 months ago
Posts: 4
Sep 13, 2018 9:03 pm  

Hi there-- I have the same set up I think. My Mac (in Windows 10) recognizes the 1080 and I have the latest drivers installed. However, I don't know how to switch from the Radeon Pro 560 to the 1080-- where do I do that? When I do to graphics settings, the 1080 is there as the High Performance GPU... I just don't know how to have the MAC use it. I set Steam to use the High Performance GPU (1080), but it does not use it. Any tips appreciated. I'm wondering if I need to disable PCI resources or something to get it to work?

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
(@christian_meldal)
New Member
Joined: 9 months ago
Posts: 3
Sep 22, 2018 5:33 pm  

i reach the step with integrated.bat, but when i run the bat and reboot, my integrated screen flickers and goes black. my external screen does not work either. i dont need the macbook screen, so if i can use my external screen with egpu without running integrated.bat that would work.
also, i have the new fw with «large memory» do i still need to disable both 1901 and 1905 to run a vega 64?

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
(@christian_meldal)
New Member
Joined: 9 months ago
Posts: 3
Sep 22, 2018 6:07 pm  

also, what are these steps for? the egpu works on a new windows install, by just plugging it in, however i dont get the performance i expected

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
(@christian_meldal)
New Member
Joined: 9 months ago
Posts: 3
Sep 23, 2018 10:09 am  

when i open a game, it runs smooth for 10 seconds, then everything goes black and windows crashes

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
(@danny_nguyen)
New Member
Joined: 9 months ago
Posts: 1
Oct 4, 2018 12:15 am  

I have a mid 2017 MBP 13 w Touch Bar and Gigabyte Gaming Box GTX 1070. I have activated iGPU with rEFInd, but when I check the Device Manager, I still only have one Microsoft Basic Display Adapter. What should I do?

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 2 years ago
Posts: 2080
Nov 25, 2018 6:28 pm  

I think the guide needs to be restructured, especially for 2017+ Macs. First step should always be to try the eGPU without any hacks, because usually for the 2017-18 Macs (exception: AMD on 2018 15" MBP needs bootcampdrivers.com drivers), that is enough, and if it doesn't work, it doesn't do much harm.

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
----
Troubleshooting eGPUs on macOS
Command Line Swiss Knife
eGPU Hardware Chart
Multiple Build Guides
----
Current: MacBook Pro RP560X + 480/R9 Fury/Vega 64 | GTX 780/1070
Previous: 2014 MacBook Pro 750M + 480/R9 Fury | GTX 780/980 Ti/1070


theitsage liked
ReplyQuote
gary1999
(@gary1999)
New Member
Joined: 7 months ago
Posts: 1
Nov 28, 2018 9:13 am  

I followed the instructions but I am stuck when I plug in the eGPU and reboot. It will just won't start up. If I plug in the eGPU when it is in the rEFInd, the screen just freezes. How can I solve this? Thanks.

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
FlyingTexan
(@flyingtexan)
Eminent Member
Joined: 7 months ago
Posts: 33
Nov 28, 2018 7:16 pm  

All of the links in the steps don't do anything. It says to "download file and copy into system" or whatever but I don't know what that means. It's like saying to disable SIP but doesn't say how to do that.

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
FlyingTexan
(@flyingtexan)
Eminent Member
Joined: 7 months ago
Posts: 33
Nov 30, 2018 7:04 pm  

Every guide links to another guide that links to another guide. Why can't we just put it all in one place and keep it simple? It's confusing the way it is. If you're going to reference a post just put it in the guide because now you have to filter through half of another one to try and piece together what someone is trying to say.

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
Eightarmedpet
(@eightarmedpet)
Noble Member
Joined: 2 years ago
Posts: 1579
Nov 30, 2018 8:38 pm  

Would have to agree. Things are getting confusing. I’m almost tempted to write a beginners guide to the basics because I feel there is a level of assumed knowledge that many don’t have. Only prob is I prob don’t have the knowledge to write said guide. 

Anyone whos ever dabbled in hackintoshes must have come across Corpnewt, the way he wrote was a breath of fresh air to someone like myself.

2017 13" MacBook Pro Touchbar + [email protected] (AKiTiO Thunder3) + Win10
2017 13" MacBook Pro Touch Bar + [email protected] (Sonnet Breakaway Box) + Win10

2017 13" MacBook Pro Touch Bar + GTX1070 (debating 2070 upgrade) @32Gbps-TB3 (Razer Core V1) + Win10

2017 13" MacBook Pro Touch Bar + Vega 56 @32Gbps-TB3 (Razer Core V1) + Win10 & macOS 10.14+

---
LG 5K Ultrafine flickering issue fix


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 2 years ago
Posts: 2080
Nov 30, 2018 9:07 pm  

@flyingtexan Fair criticism. In general, the problem is multifaceted, with other problems such as guide discovery, new solutions popping up with their own guides, and more. In my opinion, the approach of having "guides" gets old real fast in the ever-changing and fast-paced tech. sphere. A clearly better approach could be something like a website where the user chooses his/her machine (easy for Mac-side, but difficult for general Windows), then selects their eGPU enclosure, then selects a GPU, and then the website spits out what the user needs to get things going. Such an approach eliminates the overhead of checking what's applicable and what isn't, at least. Finally, we need people willing to openly contribute to build these new approaches, and who have the spare time to do so.

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
----
Troubleshooting eGPUs on macOS
Command Line Swiss Knife
eGPU Hardware Chart
Multiple Build Guides
----
Current: MacBook Pro RP560X + 480/R9 Fury/Vega 64 | GTX 780/1070
Previous: 2014 MacBook Pro 750M + 480/R9 Fury | GTX 780/980 Ti/1070


OliverB liked
ReplyQuote
Eightarmedpet
(@eightarmedpet)
Noble Member
Joined: 2 years ago
Posts: 1579

ReplyQuote
FlyingTexan
(@flyingtexan)
Eminent Member
Joined: 7 months ago
Posts: 33
Nov 30, 2018 9:24 pm  

When I run the integrated.bat as administrator, the exe file it downloaded, the cmd just flashes so quickly I can't see what's happened. Does that mean it has worked?

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
FlyingTexan
(@flyingtexan)
Eminent Member
Joined: 7 months ago
Posts: 33
Nov 30, 2018 10:08 pm  

I'm sorry I've been a little confused. So we disable the PCI 8x because it gives the error 12 but if we have a 2017 15" MacBook pro we don't need to do this and can put the egpu on the left side to use the 8 lanes?

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 2 years ago
Posts: 2080
Nov 30, 2018 10:50 pm  
Posted by: Eightarmedpet

Can’t contribute any smarts but can do admin. 
Have some new files to send ya too champ.

Send 'em over anytime 🙂

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
----
Troubleshooting eGPUs on macOS
Command Line Swiss Knife
eGPU Hardware Chart
Multiple Build Guides
----
Current: MacBook Pro RP560X + 480/R9 Fury/Vega 64 | GTX 780/1070
Previous: 2014 MacBook Pro 750M + 480/R9 Fury | GTX 780/980 Ti/1070


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 2 years ago
Posts: 2080
Dec 1, 2018 12:46 am  
Posted by: FlyingTexan

I'm sorry I've been a little confused. So we disable the PCI 8x because it gives the error 12 but if we have a 2017 15" MacBook pro we don't need to do this and can put the egpu on the left side to use the 8 lanes?

You can't use 8 lanes over Thunderbolt 3 (it's 4 lanes). Using either side should be ok. The 2017 15" is hack-free in most cases.

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
----
Troubleshooting eGPUs on macOS
Command Line Swiss Knife
eGPU Hardware Chart
Multiple Build Guides
----
Current: MacBook Pro RP560X + 480/R9 Fury/Vega 64 | GTX 780/1070
Previous: 2014 MacBook Pro 750M + 480/R9 Fury | GTX 780/980 Ti/1070


ReplyQuote
Eightarmedpet
(@eightarmedpet)
Noble Member
Joined: 2 years ago
Posts: 1579
Dec 1, 2018 7:56 am  
Posted by: mac_editor
Posted by: Eightarmedpet

Can’t contribute any smarts but can do admin. 
Have some new files to send ya too champ.

Send 'em over anytime 🙂

I’ll hopefully get them to ya this coming week, I’ve moved house and have no internet so limited to my phone atm, it’s heart breaking...

2017 13" MacBook Pro Touchbar + [email protected] (AKiTiO Thunder3) + Win10
2017 13" MacBook Pro Touch Bar + [email protected] (Sonnet Breakaway Box) + Win10

2017 13" MacBook Pro Touch Bar + GTX1070 (debating 2070 upgrade) @32Gbps-TB3 (Razer Core V1) + Win10

2017 13" MacBook Pro Touch Bar + Vega 56 @32Gbps-TB3 (Razer Core V1) + Win10 & macOS 10.14+

---
LG 5K Ultrafine flickering issue fix


ReplyQuote
OliverB
(@oliverb)
Noble Member
Joined: 8 months ago
Posts: 1282
Jan 21, 2019 12:10 am  
Posted by: mac_editor

I think the guide needs to be restructured, especially for 2017+ Macs. First step should always be to try the eGPU without any hacks, because usually for the 2017-18 Macs (exception: AMD on 2018 15" MBP needs bootcampdrivers.com drivers), that is enough, and if it doesn't work, it doesn't do much harm.

This real story might be interesting in this case:
The boss of a software company (having 13-inch MBP 2018) bought an BlackMagic eGPU in order to play games. This was the first time I heard about eGPU.
I asked him: "How is it?"
He said: "It's B*llSh*t. I won't work with bootcamp. You must use reFIND and lot of dirty hacks. Very tricky and dangerous stuff. I am not willing to do all this stuff and risk my installation. There is even petition at Apple to support bootcamp with eGPU", referring to this egpu.io.
So I said: "Let me try it."

I borrowed the eGPU, plugged it at my 15-inch MPB 2018, screen went black, couldn't see a thing. Fortunately, I was smart enough enough to reboot the system and voilá: External Display worked like charm, playing Tomb Raider with my wife. We had a great time.
Nothing else had to be done to get it to work.

I told him: "It works in bootcamp quite well. At least at my system."
He answers: "This is not possible, they all say it doesn't work". And he wouldn't dare until to today.

Real story, real life.

2018 15" MBP & 2015 13" MBP connected to RTX2080Ti GTX1080Ti GTX1080 Vega56 RX580 R9-290 GTX680


ReplyQuote
theitsage
(@itsage)
Famed Member Admin
Joined: 3 years ago
Posts: 4000
Jan 21, 2019 12:43 am  

Every component in an eGPU setup matters. The intention of this guide was to get a Thunderbolt 3 MacBook Pro work in Boot Camp as close to a Windows laptop as possible. While the 2018 MacBook Pros have firmware with Large Memory allocation to resolve error 12, the 15" model can't power the internal display with its iGPU.

I have used every model of the Thunderbolt 3 MacBook Pro (eight to date). All of them can either be plug-and-play or encounter error 12 depending on a lot of factors. I'd rather present all possible issues before someone decides to invest a good amount of money in an eGPU setup. If this guide scares them, that's for the best.

This post was modified 5 months ago

Best ultrabooks for eGPU use

eGPU enclosure buying guide

94 external GPU build guides


ReplyQuote
OliverB
(@oliverb)
Noble Member
Joined: 8 months ago
Posts: 1282
Jan 21, 2019 1:07 am  

With all due respect, fear is not always the right choice of instrument.  I really like the suggestion of @mac_editor and have separate guides depending on the model. The  current "How-To-Bootcamp Guide" does not apply well to the 2018 MacBookPro models. Frankly, it causes more problems than necessary. There should at least be an advice not to use apple_set_os.efi with that particular model and so on. 13-inch 2015 MacBookPro doesn't fit either. There you have the POST issue with nVidia cards. This isn't mentioned at all in the guide. etc..etc.. I hope, it's clear what I mean.

2018 15" MBP & 2015 13" MBP connected to RTX2080Ti GTX1080Ti GTX1080 Vega56 RX580 R9-290 GTX680


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 2 years ago
Posts: 2080
Jan 21, 2019 1:20 am  

@oliverb it’s hard to make a one-size-fits-all guide. It is also equally difficult to make multiple guides for different scenarios (they become hard to find, confusing, etc.). I didn’t directly suggest having separate guides, and honestly I don’t have faith in guides because they quickly become outdated. @itsage’s guide was/is super helpful when it was published. A lot has changed. Hard to keep track of every little thing here and there (like problems with 750m, 2015 13” MBP, etc.). I am just grateful we have a place to connect with people and get/give help.

My “solution” is ditching guides and going for app-based suggestions (user can select system configuration and get desired results automatically - what hacks to use, etc.) - but all of this requires tremendous effort. It’s easy to program subpar software, and I certainly am not one of those willing to make subpar stuff. If I had the time, trust me, I would have built that app. Users like you provide a wealth of knowledge to others thanks to your build guides and extensive benchmarks - that in itself gives users confidence. End goal is to make eGPUs ubiquitous and get companies to support it, and thanks to everyone here I think  we are on the right track.

Also, on that fear point I would say to any user that if they feel it’s dangerous, untrustworthy, or not worth it - that’s fine isn’t it. It’s their choice - they may not want something that works today, but may not tomorrow. I for one love software, so getting it to work is the fun part for me haha. 

This post was modified 5 months ago

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
----
Troubleshooting eGPUs on macOS
Command Line Swiss Knife
eGPU Hardware Chart
Multiple Build Guides
----
Current: MacBook Pro RP560X + 480/R9 Fury/Vega 64 | GTX 780/1070
Previous: 2014 MacBook Pro 750M + 480/R9 Fury | GTX 780/980 Ti/1070


ReplyQuote
(@buh_khuu)
Eminent Member
Joined: 11 months ago
Posts: 45
Jan 21, 2019 10:00 am  

Hey @itsage, do you have any tips to connect the GTX1070 AGB to the 2018 15" Macbook Pro internal display? When I plug in the AGB too early, it will only run external displays. Plugging in too late or when windows is fully booted up, gives me a ks.sys error whereas I have to restart my PC.

I've tried disabling and enabling with the AGB connected, but still gave me ks.sys error..

Please help me. On the verge of selling the eGPU of this frustration

2018 15" MacBook Pro I7-8850H RP560X
Gigabyte Gaming Box GTX1070 @ TB3


ReplyQuote
madjase
(@madjase)
New Member
Joined: 8 months ago
Posts: 1
Jan 21, 2019 7:23 pm  

I'm in the same place with my 15" 2018 MacBook Pro, did you find any resolution or path forward?

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
(@juliangoespro)
New Member
Joined: 5 months ago
Posts: 2
Jan 22, 2019 6:41 pm  

Now that the 13inc Touch Bar MacBooks have 4 full speed TB3 ports I should be able to use any of them with equal success, right?

For windows I am still not able to get the internal display to show anything but the windows logo... since there has already been so many changes, what do I still need to do to get my AMD RX480 to accelerate my internal display (or at least get it working powered by the cpu's "gpu")?

Thanks a lot!

2018 13inc MacBook Pro with Touchbar + Razor Core X RX480


ReplyQuote
thebaz
 thebaz
(@thebaz)
Joined: 5 months ago
Posts: 1
Jan 30, 2019 8:50 am  

Thank you so much for this article! By following it I was able to connect a Sonnet Technologies eGFX Breakaway Box 650 (with a mounted Nvidia GTX 1080 Ti) to my MacBook Pro (15-inch, 2016) when using Windows 10.

Followed the steps one by one without any issue


ReplyQuote
Yves
 Yves
(@yves)
New Member
Joined: 4 months ago
Posts: 3
Feb 20, 2019 5:33 am  

In case anyone still has this problem. I use macbook pro 15 mid 2017. In the intel energie options just turn of all energy saving stuff. Important because i had the same problem. I had to do it for battery and non battery options to make it work. Don't know why.

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


theitsage liked
ReplyQuote
Gabrish
(@gabrish)
New Member
Joined: 7 months ago
Posts: 2
Feb 23, 2019 6:48 pm  

Stuck on step 2, If you see two Microsoft Basic Display Adapter devices under Display adapters in Device Manager, proceed to install Intel graphics drivers. I only see one Microsoft Basic Display Adapter, what should I do?

MacBook Pro (13-inch, 2017, Two Thunderbolt 3 ports), 2.3 GHz Intel Core i5, Intel Iris Plus Graphics 640 1536 MB. GIGABYTE Radeon RX 580 Gaming Box eGPU


ReplyQuote
(@yousaf_amir)
New Member
Joined: 3 months ago
Posts: 3
Mar 22, 2019 6:18 pm  

Hello. So I am stuck at Step 3-4.
I have a Late 2016 Macbook Pro w/ Radeon 450.

I successfully follow through the steps, double checking each thing. And I am trying this on a fresh windows install.

My issue is when I run the integrated.bat and it shows successful. Then I go to the Windows Menu and click shut down. Once it's fully shut down, I connect my eGPU (Razer Core X w/ RTX 2080Ti). It instantly starts up (the GPU), and show's the GEFORCE RTX lights (maybe the comp doesn't shut down properly?). Then I try turning on my comp and there is nothing on the display. I have to disconnect the GPU, restart the comp and then go back to Windows.

I have done this process about 3 times, with each time restoring to iGPU Safe, so I can redo everything step by step. But same issue. Please help!

Late 2016 15" Macbook Pro w/ RP450 + RTX 2080Ti FE @32Gbps-TB3 (Razer Core X) + Win10/MacOS


ReplyQuote
theitsage
(@itsage)
Famed Member Admin
Joined: 3 years ago
Posts: 4000
Mar 22, 2019 9:34 pm  

@yousaf_amir I no longer have the 2016 15" MBP but I remember the RTX graphics card caused a boot hang. It's an incompatibility issue between the RTX eGPU and this MBP. I'd recommend hot-plug the RTX eGPU once Windows 10 is fully loaded.

Best ultrabooks for eGPU use

eGPU enclosure buying guide

94 external GPU build guides


ReplyQuote
(@yousaf_amir)
New Member
Joined: 3 months ago
Posts: 3
Mar 22, 2019 10:39 pm  

So I tried that but Windows crashes. There are sometimes system thread errors, or IQRL failed and such.

I think I will be erasing the bootcamp, and will retry again. With disabling the x16 Lane right away after I attach the iGPU to internal display. Maybe then I'll try hot plugging.

In a previous attempt, plugging the GPU when Windows was loading seemed to work. Both x8 and x16 disabled. Then once booted, I enabled x8 for connecting SSD that I used for storing games.

But when I tried running the game, I always had an error which started with Video_TDR... Nxxxxxxx.sys. Upon research i found that it was something to do with with the Intel drivers. I did try both Intel and Nvidia drivers reinstall clean. But that didn't work either.

Perhaps maybe it's cause of macOS Mojave or simply the older Macbook doesn't have that "Large Memory" case?

Late 2016 15" Macbook Pro w/ RP450 + RTX 2080Ti FE @32Gbps-TB3 (Razer Core X) + Win10/MacOS


ReplyQuote
OliverB
(@oliverb)
Noble Member
Joined: 8 months ago
Posts: 1282
Mar 24, 2019 10:17 pm  

@itsage, I would suggest to start this guide with the naming of the MacBook models where this guide fits (I think 15-inch 2016 mainly). There are quite are number of users with completely different models following this guide this leads to confusion.

2018 15" MBP & 2015 13" MBP connected to RTX2080Ti GTX1080Ti GTX1080 Vega56 RX580 R9-290 GTX680


ReplyQuote
(@james_take)
New Member
Joined: 2 months ago
Posts: 3
Apr 18, 2019 6:35 am  

I get boot up issues when I activate the integrated graphics. It hangs at a windows logo with no loading sign and occasionally smc crashes (this can be observed by a spike in fan speed and then the reconnection of all USB devices) and then the entire thing shuts off. I've reinstalled bootcamp and tried multiple times but I can't seem to be able to restart after installing the intel drivers. I only plan on using the egpu for external display acceleration. Can I just stop after uninstalling radeon pro drivers? I realized that most of these steps are only needed for internal display acceleration.

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
(@james_take)
New Member
Joined: 2 months ago
Posts: 3
May 15, 2019 12:07 am  

My 2018 15 inch MBP runs well with the egpu. in fact I get around 2% higher performance with it than with my tower using the same card and a similar performing processor. However after around 2 hours, the thunderbolt controller area gets SUPER hot and my MBP crashes because the eGPU gets disconnected. I would guess that it would work again after crashing but the eGPU then fails to create an environment for OpenGL and DirectX 11. It also proceeds to disconnect and crash after 5-15 minutes. Then I would try it in the ports on the other side and it would work for another 2 hours and then crash. This wouldn't be a problem if I could get it to work after a restart but it stays like that. I know the thunderbolt controllers are functional because the eGPU runs fine in OSX for up to 15 hours but not in windows. I haven't tried reinstalling bootcamp yet but I really don't want to. Is anyone else experiencing a similar issue?

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
(@james_take)
New Member
Joined: 2 months ago
Posts: 3
May 15, 2019 12:14 am  

well I'd just keep hard resetting until the advanced start settings pops up and then use it to go back to the restore point you made and try doing everything again

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
(@team_ninety-seven)
New Member
Joined: 3 weeks ago
Posts: 1
May 25, 2019 8:14 am  
Posted by: theitsage

Now that macOS High Sierra 10.13 officially supports external graphics cards, we've developed a reliable procedure to set up and maintain a functional external GPU in Windows 10 via Boot Camp. In the past month, we’ve tried many different solutions by reading through eGPU implementation guides. What we've found to work most reliably with a Late 2016 15″ MacBook Pro is a combination of apple_set_os.efi, rEFInd, integrated.bat, and the right-side Thunderbolt 3 ports. The 13" MacBook Pro is less involved to implement due to its lack of a discrete graphics card. Our goals were to have an integrated GPU active for eGPU internal display mode and a reliable Windows bootup without error 12.

External Graphics Card for 15" MacBook Pro - bootcamp setup guide External Graphics Card for 13" MacBook Pro - bootcamp setup guide

Why so serious?

Let's discuss graphics switching in Windows briefly. Forum member Sky11 explained the three modes in Windows 10 (Microsoft Hybrid graphics, AMD XConnect, and Nvidia Optimus) in this post. The crucial prerequisite is the Intel integrated graphics card for internal display acceleration with an external graphics card. Without a functional iGPU, eGPU would only work with an external display. This explains the ease of eGPU implementation on iGPU-only hosts while dGPU + iGPU hosts such as the Thunderbolt 3 15" MacBook Pro is harder to accomplish. The worst-case scenario is when there's no iGPU present either due to the host firmware or its CPU configuration.

Prior to setting up an external GPU, it's a good idea to identify the routing of the PCIe connection over Thunderbolt 3 for each host. We used HWiNFO64 to check the arrangement of PCIe controllers and lanes on this Late 2016 15″ MacBook Pro (same as Mid 2017 model). The x16 PCI Express Controller connects to the Radeon Pro dGPU. The x8 PCI Express Controller connects to the left-side USB-C/Thunderbolt 3 ports. The x4 PCI Express Controller connects to the right-side USB-C/Thunderbolt 3 ports. It makes total sense to disable the entire line of communication to the dGPU so that we can free up resources for the USB-C/Thunderbolt 3 ports.

The 13" MacBook Pros have no direct Thunderbolt 3 to CPU connection. All PCIe lanes are routed through the platform controller hub (PCH). Apple's Thunderbolt 3 support article states that the right-side Thunderbolt 3 ports on the Late 2016 13" Touch Bar MacBook Pro have lower bandwidth than the left-side ports. This is due to the x2 PCI Express Root Port #9 - 9D18 to which these ports attach. The left Thunderbolt 3 ports attach to x4 PCI Express Root Port #5 - 9D14. We captured the PCIe arrangement of the Thunderbolt 3 15" MacBook Pro (shown on the left) and Thunderbolt 3 Touch Bar 13" MacBook Pro (shown on the right) in HWiNFO64 and labeled them for reference.

Overview of PCIe Lane Arrangement in Thunderbolt 3 MacBook Pro

The name of the game is to allocate enough resources for the external graphics card to function in Windows 10 while not severely crippling other functionalities of the laptop. Through trial and error, we found the right-side Thunderbolt 3 ports under PCI Express x4 Controller - 1909 is the best way to connect an eGPU to the 15" Thunderbolt 3 MacBook Pro. This is especially relevant when using an AMD Radeon eGPU in which both PCI Express Controller 1901 and 1905 need to be disabled to resolve error 12.

The 13" non-Touch Bar MacBook Pro would likely be able to negotiate enough resources for eGPU automagically. If error 12 arises, simply disabling the connection to the iSight camera would resolve it. The 13" Touch Bar iteration is slightly harder for eGPU implementation due to an extra Thunderbolt 3 controller and two more Thunderbolt 3 ports. It's best to use the lower left Thunderbolt 3 port [closest to the TAB key] for eGPU connection on this model and to disable the PCI Express Root Port #9 – 9D18 that connects to the right Thunderbolt 3 ports to resolve error 12.

Here are the recommended steps to set up an external GPU with Thunderbolt 3 MacBook Pros and the reasons behind them. If you're familiar with using an external graphics card in Windows 10 via Boot Camp, proceed to the summarized setup procedure. 

Step 1: Install Windows, DDU & Restore Point

There are setup guides to install Windows on an external hard drive so that the internal PCIe flash storage can be preserved solely for macOS partition. We don't recommend having the Windows volume on an external drive because it would complicate the eGPU setup process and may cause unforeseeable maintenance issues. If your MacBook Pro has a limited amount of storage, partition the Boot Camp volume with 50GB for Windows installation and save 200GB for the macOS partition. You can then install software and games on an external hard drive.

Windows 10 can detect new graphics cards and install the drivers automatically. However the drivers are not up-to-date and sometimes interfere with setting up an external GPU. We recommend using DDU to uninstall the Radeon Pro drivers that came with Apple Boot Camp drivers 6.1 (part of Boot Camp Assistant in macOS). DDU can also disable Windows automated graphics drivers installation.

Keep in mind Apple itself has not provided support for external GPU in Boot Camp. Therefore the following steps to set up an external graphics card with your MacBook Pro can possibly cause bootup issues. We highly suggest the use of the Windows System Protection feature. You can create manual Restore Points that capture snapshots of Windows in order to revert changes should you encounter issues.

Step 2: Use apple_set_os.efi

When booting into an operating system that is not Mac OS, the Mac laptop's firmware tends to deactivate the integrated GPU if there's another GPU present. For example, the 15" MacBook Pro boots into Boot Camp with only the Radeon Pro discrete GPU activated. By only having an integrated GPU, the 13" MacBook Pro sometimes hangs at the Windows bootup process if an external GPU is connected. To remedy this first hurdle we rely on apple_set_os.efi to trick the Mac laptop into believing it's booting into Mac OS. This boot loader file can be stored on either a USB drive or in the ESP partition of the Mac's internal drive through the use of rEFInd boot manager.

Goalque’s guide on apple_set_os.efi is the resource for accomplishing this task. He provided instructions on creating a USB thumb drive with apple_set_os.efirEFInd is an alternative for the need to use an external USB drive and Option boot. Once the iGPU is active in Windows, we want to make sure it has the latest Intel graphics drivers. If the iGPU shows up in Device Manager as "Microsoft Basic Display Adapter," you may need to install the Intel graphics drivers manually. In the 15" Thunderbolt 3 MacBook Pro, we want to attach the iGPU to the internal display so that we can use eGPU internal display acceleration and disable the dGPU if needed. This is where 0xbb’s integrated.bat comes in.

Step 3: Run integrated.bat

This step is relevant to the Thunderbolt 3 15" MBP only. Skip to step 4 if you have a Thunderbolt 3 13" MBP. The purpose of 0xbb's GPU-switch script is to assign a particular GPU to the internal display at the next boot. We want to run integrated.bat in Command with Administrative privilege to execute iGPU attachment to the internal display. Upon the next and subsequent restarts, Windows will use the iGPU to power the Mac internal display. Microsoft Visual C++ 2013 may be required to run this script successfully.

Warning: One important thing to keep in mind is that you have to re-enable PCIe Controller x16 – 1901 in Device Manager (if it's disabled) then re-attach the dGPU to the internal display by running dedicated.bat prior to booting back into macOS. Otherwise the next Windows boot will hang due to macOS force-attaching the dGPU onto the internal display. This is another reason why we recommend creating manual restore points in Windows. In the event Windows fails to boot, you can go back to a safe point without redoing the entire setup process.

Step 4: Solve error 12

The last and most challenging step is to overcome error 12 (not enough resources for eGPU). This almost always happens on a Mac with both iGPU and dGPU. There are several methods to resolve error 12. This is also called "yellow-banged," as visually identifiable in Device Manager by the yellow triangle and black exclamation.

For late-2016 Macbook Pros, Nando's DSDT Override via registry works well, but the required Windows Test Mode prevents some some games and software working. The workaround Clover DSDT override method has some risks but can provide a simple final solution. Adventurous users may consider this. For mid-2017 15" Macbook Pros consider using a PCIe relocation script from here to solve error 12.

A reasonable workaround is to disable PCIe controllers/bridges to free up enough resources so that Windows can handle hosting an external GPU. The PCIe arrangement is different for each Mac but the approach is similar. We start with the PCIe component with the least usage.

In the 13" non-Touch Bar MacBook Pro, disabling the iSight camera PCIe bridge does the trick. The 13" Touch Bar is slightly different in that it has one more Thunderbolt 3 controller to handle the two additional Thunderbolt 3 ports on the right side. Some have success by disabling the PCI Express Root Port #9 – 9D18 that connects to the right Thunderbolt 3 ports and using the lower left Thunderbolt 3 port [closest to the TAB key] for eGPU.

The 15" MacBook Pro is rather challenging to allocate resources for the external graphics card. By disabling the x16 PCIe controller - 1901 to the discrete Radeon Pro GPU, we found Windows likely has enough resources for an external GPU. For us this method has worked with GTX 980 Ti, GTX 1070, and GTX 1080 eGPU. From eGPU.io members' experience, Windows has a harder time with AMD cards. When we tried the RX 580 and RX Vega 56 eGPU, we needed to also disable the PCI Express x8 Controller - 1905 that connects to the left Thunderbolt 3 ports. External GPU works reliably using the right-side ports that connect to the PCI Express x4 Controller - 1909.

Boot Camp eGPU Setup Procedure

If viewing this on the forum, please jump to the mirrored news post here to see steps 1-4 below correctly.

Here are all the steps from start to finish to get an external graphics card running on a Thunderbolt 3 15" MacBook Pro. Do not connect the external GPU to the Mac laptop until instructed to do so. Download the linked resources at each step.

Step 1: Windows 10 ISO and DDU

Install Windows 10 ISO through Boot Camp Assistant - macOS

Download Windows 10 ISO then open Boot Camp Assistant to start installing Windows. If you intend to use an external SSD, partition the internal drive into 200GB for macOS and 50GB for Windows 10.

  Install Windows 10 ISO through Bootcamp Assistant - macOS

Install DDU to remove default graphics drivers and disable Windows automated GPU driver installation - Windows

Right click on Display Driver Uninstaller to run as Administrator. Then proceed to uninstall both Nvidia and AMD drivers. This process disables Windows 10 automated GPU drivers installation as well.

Install DDU to remove default graphics drivers and disable Windows automated GPU driver installation - Windows

Create a manual Restore point just in case there’s boot up issues – name it DDU Safe - Windows

Type "system protection" into the Windows search box. Select Create a restore point under Best match. Make sure Protection is on for the Boot Camp partition and then create a restore point.

Create a manual Restore point just in case there’s boot up issues – name it DDU Safe - Windows

Step 2: rEFInd, apple_set_os.efi, Intel graphics drivers

Install rEFInd boot manager and mount ESP volume – disable SIP if you haven’t done so already - macOS

Open Terminal then drag and drop refind-install to install rEFInd bootmager. Drag and drop mountesp to mount the ESP volume.

Download and copy apple_set_os.efi into the custom folder inside EFI volume - macOS

Create a new folder named custom inside EFI » EFI. Copy the apple_set_os.efi file into the folder. 

Activate iGPU with rEFInd & apple_set_os.eft - Boot Selector

Hit ENTER on apple_set_os.efi volume at rEFInd screen. ARROW to the Windows volume to boot.

 
Confirm iGPU in Device Manager & install Intel graphics drivers - Windows

If you see two Microsoft Basic Display Adapter devices under Display adapters in Device Manager, proceed to install Intel graphics drivers.

Create a manual Restore point just in case there’s boot up issues – name it iGPU Safe - Windows

Type "system protection" into the Windows search bar then select Create a restore point under Best match. Make sure Protection is on for the Boot Camp partition and then create another restore point.

Create a manual Restore point just in case there’s boot up issues – name it DDU Safe - Windows


Step 3:
0xbb's gpu-swich and 2013 Visual C++

Disable PCIe Controller x8 – 1905 (left side USB-C/Thunderbolt 3 ports) - Windows

Select View » Devices by connection in Device Manager then expand the PCI Express Root Complex to locate and disable Intel(R) Xeon(R) E3 - 1200/1500 v5/6th Gen Intel(R) Core(TM) PCIe Controller (x8) - 1905.

Attach the iGPU to internal display with gpu-switch – may need to install 2013 Visual C++ x86 - Windows

Run gpu-switch integrated.bat as Administrator to attach the internal display to iGPU at next boot. If you encounter a System Error message due to missing MSVCR120.dll, install 2013 Visual C++ X86. Shut the computer down when Windows CMD screen disappears.


Step 4:
AMD Radeon drivers or Nvidia GeForce drivers

Connect the eGPU to a right TB3 port then boot into Windows - Boot Selector

Connect the external GPU to one of the Thunderbolt 3 ports on the right side of the 15" MacBook Pro. ENTER on apple_set_os.efi at rEFInd boot screen. ARROW to select the Window volume to boot.

Install Radeon or GeForce graphics drivers for eGPU - Windows

Open Device Manager to confirm there's a third graphics device. This new device is the external graphics card. Proceed to install the drivers accordingly to your external GPU device.

Disable dGPU on PCIe Controller x16 - 1901 to use AMD eGPU - Windows

Nvidia eGPU can work without error 12 when the PCIe Controller x8 -1905 is disabled. AMD eGPU needs the PCIe Controller x16 – 1901 disabled as well to free up enough resources. Select View » Devices by connection in Device Manager and locate PCIe Controller x16 – 1901 to disable it.

Windows Booting Procedure

We've tested different combinations of the R9 Fury/X, RX 480, RX 580, GTX 980 Ti, GTX 1070, and GTX 1080 with the AKiTiO Node, Gigabyte AORUS Gaming Box, Mantiz Venus, Razer Core, and Sonnet Breakaway Box on a Late 2016 15" MacBook Pro, a Mid 2017 13" non-Touch Bar MacBook Pro, and a Mid 2017 13" Touch Bar MacBook Pro. External GPU works well and reliably once these steps are completed successfully. A normal boot procedure is as follows:

  • Connect the external GPU to designated Thunderbolt 3 port and power MacBook Pro on
  • Cold boot shows rEFInd boot menu (hold OPTION at boot if apple_set_os.efi is on USB drive)
  • Press ENTER on apple_set_os.efi boot item - MacBook Pro's display flashes briefly to confirm selection
  • Press ARROW key to Windows 10 volume then press ENTER to boot
  • Windows loads to Desktop and AMD XConnect/Nvidia Optimus icon shows up to confirm eGPU activation

There are reports of hot-plug possibilities. However, we've found it's not reliable and can crash Windows. Furthermore it may cause corruption in the bootup process. We've made a habit of always creating a manual restore point following a change. You never know when Windows will decide it can't boot into the Desktop anymore. Having these restore points labeled for each step allows you to go back to a particular stage should something happen.

Closing Thoughts

Apple can facilitate external GPU support in Boot Camp by optimizing its firmware. We're uncertain how many engineers are working on external graphics support for High Sierra. Boot Camp eGPU is likely low on the list of priorities, if on the list at all. We've opened a thread to petition for support of eGPU in Boot Camp. Please voice your opinions so that Apple will hopefully focus more attention on Boot Camp Mac users.

We're all learners as we venture into the territory of eGPU Boot Camp environment. If you know of a better procedure to setup and use external GPU in Boot Camp with a Mac, please share your experience with the community.

Update

Apple has made some firmware improvements in the mid-2017 MacBook Pro. Windows 10 now shows "Large Memory" under Device Manager » View » Resources by connection. This means some Mid 2017 MacBook Pros may be able to use Nvidia eGPU without encountering error 12, no workaround needed.

Help me please!
I have the same MacBook and an aorus box 1070.
So I have done almost all the points from the list but when I need to check igpu dgpu and egpu- I see only two of them without egpu. Whats the matter?

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
Page 5 / 6