Extreme lag (100% CPU usage when idle) using Boot Camp Windows 10 on a 2019 MacBook Air with Sapphire Pulse Radeon RX 580 on a Razer Core X
Hello all! For the past several months I have been using a Sapphire Pulse Radeon RX 580 graphics card inside a Razer Core X eGPU enclosure with a 2019 MacBook Air (MBA) to play games on Windows 10 via Boot Camp. Getting this setup to work in the first place was not easy (as Apple does not officially support eGPUs on Boot Camp) but it was doable thanks to goalque's automate-eGPU EFI. However, even then this setup only had a 50% success rate at best, as the eGPU was not always recognized and my MBA screen would turn on instead of my external monitor, which always meant that the iGPU was being used instead of the eGPU. When the external monitor did turn on, it was always accompanied by the MBA screen turning on as well, and the two displays would be mirrored and they would both take advantage of the eGPU. Once I got to this stage everything worked perfectly afterwards.
Recently I upgraded to macOS Catalina, and since then this setup no longer works. What happens is that either the monitor of my MBA turns on (iGPU, no eGPU) or the external monitor turns on but is not mirrored by the MBA display. Instead, the MBA display shows only the blue Windows 10 logo and then starts to flicker (with this logo still on) in a very Transformers-esque fashion before going black (the display is still on though). This in and of itself would not be a problem if I was able to use the external monitor normally, but unfortunately this is impossible. The issue is that the CPU goes to 100% usage while idle (no programs turned on except for Task Manager), the tiny little fan in my MBA starts to spin furiously, and any game that I turn on is unplayable because of the lag. As an aside I can also see that desktop windows manager is consuming most of the CPU. Now amazingly this did not happen precisely one time (I still have no idea why) and there was no lag on any of my games and everything worked normally, but since then I have never been able to reproduce this state again.
Any help with resolving this conundrum would be greatly appreciated!
@olivier_glowacz This is likely due to the new firmware installed on your 2019 MacBook Air during Catalina update. I've seen a few reports on 2018 13" MacBook Pro not able to use apple_set_os.efi to keep the iGPU activated. Have you tried booting into Windows 10 normally without the eGPU connected, then time hot-plug the eGPU at Windows logo spinning circles?
@itsage I followed your advice and thankfully this has resolved the lag issue! Thanks you! However, the timed hot-plug method gives rather inconsistent results, failing more often than not (i.e. only the MBA screen turns on). I seem to be getting the best results if I turn on my Razer Core X exactly when I hit return on the Windows partition in the boot menu. However, even then I usually fail to get the external display to turn on. I have also tried turning on the eGPU up to the boot menu screen, turning it off at that point, and then turning it back on again concurrently with hitting the return key on the Windows partition. This seems to have even better results, but it could just be my own bias. Anyways, do you know of any way to make this whole process any less of a headache?
As an aside, I have just received a software update for the Radeon graphics card (recommending an upgrade to 19.10.1 from 18.3.4). Should I download it or will this only make the situation more unpredictable?
You bring up an interesting point. Recently I was experimenting with apple_set_os.efi via automate-eGPU EFI on the 2018 15” MBP and I never saw the iGPU in Windows. I recall in our earlier tests we were able to install drivers and everything for the iGPU when I tried last. Firmware changes probably the root cause.
@mac_editor At first I thought this might have something to do with the Apple T2 Chip but the 2018 Mac mini and
2019 13" MacBook Pro work fine with apple_set_os.efi through automate-eGPU. Therefore it's likely changes in the Mac firmware.
@olivier_glowacz Timed hot-plug takes practice to really get in-sync with your particular setup. I'm glad it at least allows you to resolve the lag issue and stuck internal display. I don't believe Radeon driver version effects the current configuration. Make sure you stay away from Windows 10 OS Build 18362.329 and above.
Correction: I tested the 2019 13" MacBook Pro with automate-eGPU EFI (apple_set_os.efi) with the eGPU connected. The internal display is stuck at Windows logo boot screen. I could hear the sound of XConnect successfully loaded but due to no external monitor connected I didn't see anything. This 2019 13" MacBook Pro is currently running macOS 10.15.1 Dev Beta 2 and Win10 18382.295. It's possible to hot-plug AMD eGPU in both macOS and Windows so I have not tested booting with the eGPU.
If you have a 2018 & 2019 Mac with Apple T2 Chip, please give apple_set_os.efi through automate-eGPU EFI a try and see whether your Intel iGPU works in Windows. The 2018 Mac mini is the only exception for me so far. I tried rEFInd [version 0.11.4] on the 2019 13" MacBook Pro this morning and it was able to keep the iGPU activated with eGPU attached prior to boot.