2018 15" MacBook Pro (RP560X) [8th,6C,H] + GTX 1080 @ 32Gbps-TB3 (ASUS XG Station Pro) + macOS 10.13.6 & Win10 [OliverB] // RX 570 vs GTX 1080 Ti
-MacBook Pro 15 inch 2018, i7-8850 6-core, 32GB Ram, 1TB SSD
-iGpu Intel UHD Graphics 630
-dGpu AMD Radeon Pro 560X
-External Monitor Samsung S24H85x 2560x1440
-Mac OSX 10.13.6
-Windows 10 Build 1803 Bootcamp
It's the first time all 4 TB3 ports of the MacBookPro are being used.
1) Install nVidia Webdrivers (e.g. https://github.com/Benjamin-Dobell/nvidia-update)
2) Boot into MacOSX with @goalque's EFI Bootloader
3) Hot-plug the Asus XG Station Pro, but do not attach a monitor to it (Important).
4) Hot-plug the Breakaway Puck, you can attach a monitor to it in order to get a second display.
3) If you want to use a monitor attached to the nVidia card
- You must not have a monitor attached to the Breakaway Puck AND
- You must use the following command: "sudo pmset -a gpuswitch 0"
(I strongly recommend to attach the monitor to the Breakaway Puck (or the AMD card in similar setups) for several reasons)
Windows will be handled in the next post.
Unigine Heaven Preset Extreme:
1. set-eGPU.sh has been using to get the eGPU running on the internal display. There have been two interesting discoveries:
a) Having both eGPUs, set-eGPU.sh will always chose this nVidia card over this AMD card, no matter the order they have been plugged in.
b) With set-eGPU.sh set, any application running on external display attached to the AMD card, still will be accelerated by the nVidia card. This has been a big surprise.
2. Attaching a monitor to the nVidia card yields into losing dGPU acceleration of the internal display. This problem is the opposite to the Windows problem where it's lost with AMD eGPUs. Futher it's not possible to use more than one external display, if one is attached to an nVidia card.
3. By enabling nVidia cards for MacOSX the "Disconnect" Icon is being removed. It's not possible to disconnect nVidia cards. Any attempt results in a system crash.
Installation steps Windows
A. nVidia Card:
0. I started with a quite fresh installation of Windows 10 Buid 1803. I restored a backup, which needed 45 seconds from a NVMe SSD.
1. I hot-plugged my nVidie eGPU. Soon "Microsoft Basic Display Adapter" appeared:
2. I waited about 4 minutes until the Geforce card appears in Display adapters. Windows wanted to reboot. I didn't do it.
3. I disabled the yellow banged GTX 1080 Ti device. I didn't reboot, clicked on "no", when Windows was me asking to.
4. I reenabled the GTX1080Ti device. My external monitor lit up.
B. AMD Card:
5. I hot-plugged my AMD card. Again "Microsoft Display Basic Adapter" appeared. I waited. My internal monitor will go black eventually.
6. No reason for panic. I still had an external monitor working. Both AMD cards are yellow banged, one with Error 43, the other with 12:
7. I just disabled the "Radeon Pro 560X" and rebooted.
Note: Still there is the bad taste of disabling the Radeon Pro 560X and it's not possible to re-enable it again, By installing bootcampdrivers the dGPU can be reactivated, if no AMD eGPU present, but all this is far from a fine solution.
2. Unigine Heaven Preset Extreme:
|RX 570||GTX 1080 Ti|
|[email protected]RX 570|
|[email protected]GTX 1080 Ti|
1) For MS Hybrid nVidia install newest nVidia drivers.
2) Ms Hybrid works perfecty with two eGPUs, giving the choice on each display which card to be used. It works in both direction, which is great. Actually this surpassed clearly the MacOSX possibilities.
3) You can attach a display on each card.
4) Unigine Heaven is very "nVidia-friendly"
5) Unigine Heaven scores much higher on Windows than on MacOSX (party because of DirectX11 faster than OpenGL)
6) The loss for rendering on a foreign display is much lower than on MacOSX (High Sierra).
7) Most important: You don't need any hack/tinkering with the system to get both eGPUs running. There is no "punishing of nVidia" or anything similar.
I won't write a own build guide, but it's was to expected that there is no problem the have two AMD eGPUs running at once.
Most interesting is the fact that two different eGPU can be used to accelerate games. Here is copy from my post:
Actually it's quite possible and makes perfact sense to use multiple (e)GPUs in a game. A good example is Ashes of the Singulary, which profits from a multiple GPU setup and not just Crossfire/SLI:
To use it, check "Enable Multiple GPUs" in Video Option:
Ashes of the Singularity. 1440p Preset High.
The results are depending on which is primary display. While the GTX1080Ti as secondary display improves the performances of this RX570 from 37.6 to 55.0 FPS, the RX570 as secondary display is advisable:
|First eGPU||One eGPUS||Two eGPUs|
When using two cards which are more similar to each other, there is always an improvement. See RX570 and RX580
When testing multiple eGPUs, of course two eGPUs shouldn't be the end of line, so let's see what happens with 3 eGPUs.
Plugging another ASUS XG Station Pro into the right port:
LuxMark uses all three eGPUs and yields a good result with the score of 51976 :
The internal display can be accelerated, too. With @mac_editor's fine software it can be done:
- While the internal GPUs are being throttled under load, this is not the case for the external eGPU.
- set-eGPU prefers nVidia cards.
- Three eGPUs together can power a 15-inch MacBookPro. No additional power cable necessary.
One addition concerning Bootcamp/Windows:
It looks as it is not possible to run 3 eGPUs in Windows, because it's not possible run tun two eGPU on the same Thunderbolt Bus. It only works with max. 2 eGPUs, one for each side (one left, the other right).
Plugging two eGPUs at one Thunderbolt bus yields to the same issues like a Dual-GPU: One of the GPUs gets yellow banged with Error 12, the other won't work correctly either.
@itsage: Have you ever succeed in running two eGPUs at the same Thunderbolt Bus in Bootcamp?
@oliverb I actually never tried two separate eGPUs through on Thunderbolt bus (same side) in Boot Camp. It was due to Windows constant struggle with resource allocation for eGPU. One exception is my AKiTiO Node Duo build with the 2016 15″ MacBook Pro, the two Radeon RX 580 eGPUs did work through a single Thunderbolt 3 connection via one Thunderbolt 3 bus. This was possible through the disablement of both the dGPU PCIe connection, and the other Thunderbolt bus PCIe connection.
@itsage, thank you for this information. With my model (15-inch 2018) I think, I cannot disable the dGPU PCIe connection (or is it possible with losing internal display?).
Perhaps this may be interesting, too: On MacOSX, I cannot use a second nVidia eGPU. Using @mac_editor's purge-wrangle only the first plugged nVidia eGPU (here GTX 780 Ti) will work, the second one (should be GTX 1080 Ti) gets a "NVIDIA Chip Model" without any function. Of course, this is only for scientific purposes 🙂
Yes for some reason macOS could only detect one Nvidia eGPU at the front of a Thunderbolt chain. The only instance when I could connect two Nvidia eGPUs was through daisy-chaining them to AMD eGPUs. Here’s a test when I got 4 total eGPUs going in macOS.
I made some tests with multiple eGPUs in Bootcamp for this 15-inch MBP 2018.
- Two eGPUs work suprisingly well if they are connected to different Thunderbolt busses (notebook sides). Even more surprising this works very well with two AMD eGPUs.
The dGPU should be disabled (it must be disabled when an AMD eGPU is present).
- Two eGPUs attached to the same notbook side won't work. Which leads automatically to:
- Three or more eGPUs won't work.
In MacOSX there are no such restrictions (but others as the second nVidia eGPU issue).
There is one special case, that actually three GPUs can work together and this is 2 nVidia eGPU with the Radeon dGPU:
But this is not easy to get as you must hotplug the nVidia eGPUs to avoid an black internal screen. Typically the second Hotplug will not succeed.
Breaking news is, that AMD eGPUs can work actually together with the AMD dGPU using Bootcampdrivers: