[Solved] eGPU error 12 fail after update to Windows 10 1903 or newer (OS Build 18362.329 or newer) inc downgrade pci.sys version solution
@daniele_pugliese, @ttamnogard, and @visvism Can you run
winverin the Taskbar search box to get the OS Build number? I'm collecting information to see whether this new Windows 10 build is causing more headache. I updated my 2016 15" MacBook Pro to 18362.329 tonight and setting up eGPU becomes harder.
Unfortunately I already wiped and went back to a clean install of Windows 10 Pro with automatic updates disabled. I'm back on version 1903 (build 18362.30). I have my Mac Mini working again with Intel PCI Express Root Port #2 - A339 and Intel PCIe Controller (x16) -1901 disabled. The only downside I see to this is that my ethernet port on the Mac Mini stops working and I have to use WiFi only. But I have successfully gamed with the Vega 64 in The Division 2 without any crashes or stutter issues.
Thanks for everything @itsage.
@itsage I presume this is the update in question: https://support.microsoft.com/en-us/help/4512941/windows-10-update-kb4512941
There don't seem to be any red flags in the changelog after a quick look. Odd. I might try updating after creating a restore point for testing.
@itsage Confirming that build 329 does cause Error 12 for my setup as well. Somehow it also deleted my restore point, but uninstalling the update manually did the trick.
@mac_editor Thank you for the confirmation. At least uninstalling the update let you roll back to a working version of 1903. I'm seeing the same issue on the 2018 Mac mini. Hot-plug is no longer a possibility with OS Build 18362.329. I disabled most PCIe root controllers and ports to see if error 12 can be resolved. Unfortunately it did not make a difference. Booting into Windows with the eGPU connected didn't work either.
Last night I updated my 2016 15" MacBook Pro to this OS build and it's not as easy to run an eGPU like the previous build. I'm no longer able to hot-plug an AMD eGPU in Windows to run alongside the Radeon Pro dGPU. The AMD eGPU would encounter error 12 even when Large Memory is allocated through DSDT override + automate-eGPU EFI. I'm relying on an older procedure that attaches the internal display to the Intel iGPU and disabling the x16 PCIe Controller to Radeon Pro dGPU.
The most concerning observation was the reported bandwidth in AIDA64 (down to 1,6XX MB/s from 2,6XX MB/s). This of course effects internal display mode performance. I used a .5m Thunderbolt 3 cable so there's no questionable components that might have caused this drop in throughput. If you're able to get eGPU going with this build of Windows 10 on your Mac, please check AIDA64 GPGPU benchmark.
Update #1: I tested different Radeon graphics cards with different enclosures this morning. They were not capped at 1,6XX MB/s like the Vega Frontier Edition but the H2D could not reach more than 2,2XX MB/s. Definitely something has changed in this build of Windows 10.
If you’re able to get eGPU going with this build of Windows 10 on your Mac, please check AIDA64 GPGPU benchmark.
@itsage I didn't immediately see a way to get it going, since last we checked, apple_set_os.efi + iGPU muxing caused issues on 2018+ 15" MBPs. This might have changed, given that on build 295 (what I'm currently on), I can boot with the eGPU plugged in with all displays active, support for clamshell mode in Windows (need to wake system using external mouse/keyboard after closing lid), and hot-plugging also works sometimes. This is the best it has been for me so far. Looks like a combination of Catalina firmware updates and 1903 have improved eGPU significantly, but this update is disappointing (and hopefully there's better to come).
It is disappointing each system update in both macOS and Windows can cause such headache. At least we can isolate the culprit to build .329 and rollback to .295 works well. I tested an Nvidia eGPU just now. Of course it remains working even with hot-plug support, like always.
Can confirm build 329 causes same problems on my setup. I tried disabling left side TB3 ports and the pcie root connected to the wifi card but could not get egpu working at all. Even with all of that disabled *and* booting with egpu plugged in to disable igpu could not make radeon vii work. Uninstalled the update for now and everything is back to working again.
At least we can isolate the culprit to build .329 and rollback to .295 works well. Do you mean that I can install the version .295 ? Can you please link me a guide to do that. Usually windows asks for automatically update to the last version.
Go to Windows Update settings -> View Update History -> Uninstall Updates.