2018 Mac Mini, Bootcamp, Win 10 20H2, eGPU, easier than expected (eventually)
Just thought I'd share a setup success ...
So I decided to have a go at setting up Bootcamp again with my 2018 Mac Mini and eGPU (Gigabyte RX 580 Gaming box). Possibly because I was curious about this whole crypto-mining thing and you can't buy a graphics card from anywhere apparently but the one I have isn't terrible (but MacOS seems to be, for mining).
The last time I tried this it was an utter nightmare - I only did it to update the firmware on the eGPU enclosure and the only way I got it to work was to take the GPU care out of it. So I never really connected the graphics card with Bootcamp.
So could it work this time?
Setting up Bootcamp was easy enough and I used the latest Windows 10 20H2 ISO image.
I installed all the Bootcamp drivers and Windows updates and everything was working (Bluetooth, WiFi etc...)
Then I read through endless topics about editing EUFI files and boot partitions and all manner of complex things ... oh, it all looked so difficult.
But then I saw a comment about _not_ having the HDMI connected straight from the Mini and ... no, it couldn't be that easy could it?
I installed the latest AMD drivers, rebooted with just the eGPU connected and it only went and worked!!
I've since installed some mining software (nicehash is easy) and modified the card BIOS to improve the hash-rate (+30 Mh/s, apparently about what the card should be capable of) and it's now adding some heat to the basement so my wife is happy (it is -35 outside right now).
So THANK YOU to whoever it was that made the comment about unplugging the HDML cable, sorry I couldn't find the exact topic again. And thanks to everyone else that shares useful information and know-how on this site.
I'm happy that my Intel Mac Mini and eGPU has a purpose, hopefully it won't feel rejected at all when a new M1 version shows up, and if it works really really hard, for many many years, it may even fund it 😉
Some extra details for anyone else trying to replicate this.
It's easier if you setup Windows to auto-login. A couple of times I had to login "blind" to continue the driver setup (kudos to AMD though for their driver install that can remove old drivers and then install the new ones, with no interaction). But I needed to sign in to have that happen and initially had the "PIN Number" method with a Microsoft account. The trick was to make a note of how long it took to boot (using the integrated graphics, mine took about 30 seconds to get to the login screen) and then add another 10 seconds for safety, tap a key, wait 5 seconds (to let the signin form show) and enter the PIN.
Bootup is always blind with the eGPU because of how and when Windows initializes the devices. But the screen comes on to show the login screen if you still have that enabled. This is all with ONLY the eGPU plugged in - if you have the inbuilt HDMI plugged in then you have the error 12 or other issues to deal with. I found it easier to save doing all that.
For the mining itself, it only ran at about 8 MH/s out of the box with the latest drivers. While they do have a "mining optimized" driver, it's old and there is a "compute mode" option in the latest. It didn't show up for me in the GUI but you can set it with a registry key. That should put things at about 28 MH/s with the latest drivers.
You can get another 2 MH/s or so by flashing the BIOS with a custom ROM to optimize the memory timings. That's probably the scariest bit, but there were plenty of examples and walkthroughs of how to do it.
The rest is tweaking the graphics card OC settings (actually, underclock the core and lower the voltages, and up the memory speeds which makes the difference to mining). Combined with some parameters to tweak the mining software itself this brought things up to 32 MH/s. That's using Phoenix miner which worked best of all the ones I tried (via nicehash is super-simple).
With these tweaks the power usage goes down to about 80W which saves heat and noise.
Right now it's earning about $5 per day on average which is sweet.
what do you mean by "only the eGPU plugged in"?
Literally, just have the eGPU as the only connected display and nothing plugged into the inbuilt HDMI display. This causes it to not initialize that display so the eGPU driver gets the resources it needs (I believe).
Given that the MacBook Pro has a built-in display that isn't possible to disconnect, this method probably won't work and you'll instead need to deal with the error 12 / resource issue.
Hmm, thanks for posting this. I'll have to experiment more with this if my current attempt doesn't work out. I kind of tried this path (and failed), but I didn't have it set to auto-login. I left it a long time, though, and never got a video signal. But, maybe with the auto-login, it gets to a further point, or something. Thanks.
Also, thanks for the tips on mining. I'm going to do some of the same (minus bios updating) if I get mine running, so those settings and info might be helpful. I've got the same 580 as you, but the Blackmagic. I'm not sure if I can (or want to) customize it that much, but it should stay cool and quiet, which is a good thing with mining (haven't mined, but used to do protein folding w/ Folding@home).
The BIOS changes definitely made a difference in terms of the hash rate it gets and the power it uses / temp it runs at. Some of the settings are also done in the drivers for the latter. I'll post the exact settings I'm using in case it helps.
@simon_green OK, I'm finally about where you were before your optimizations. I gave up on 1903+ and went back to 1809 (which I had running when everything was new), just to see if I could get THAT config working again, and it did.
I couldn't get Nicehash going for some reason (I think I didn't have all the drivers installed correctly), but got Cudo Miner running, which gave me just over 6 MH/s... so I'm going to have to start experimenting, as that isn't worth it. Oddly, Cudo Miner thought it was running 100%, but the meters I have installed showed the GPU only running like 6%. (And, my whole system was using like 110 watts w/o CPU doing anything). So... time to get tweaking. Thanks again for your notes. Maybe they'll get me pointed in the right direction.
That's probably the drivers - there is a registry setting to enable the crypto mining optimizations (no UI option unfortunately) and that made the biggest difference. For that eGPU there are also the regular firmware options to get the full speed from thunderbolt for the GPU, without it reserving some for the USB hub, which might make a difference (I already had that installed).
Nicehash isn't the fastest, I found the phoenix miner was the best for my particular setup. It's weird that your GPU wouldn't be maxed out which is the point of the whole thing - maybe that is the particular miner or the thunderbolt bandwidth issue?
But the rate now is down to about $2 CAD and there is a new Company of Heroes 3 beta out ... so it's back to gaming duty.
@simon_green Thanks! Yeah, it is probably the drivers. I messed up last night and tried to install newer ones but left the 'reset to factory' checked (I think), and it removed the driver and didn't come back. (Kind of a unique issue with my Blackmagic eGPU, I think. I have to install just the driver, then add all the other software.)
I'm guessing you're talking about Compute Mode in regards to the registry? I found this article:
I don't think the TB speed should be an issue, as to my understanding, full-out mining only uses like less than 1/4 of the bandwidth.
I'm not concerned (at least initially) with getting every speed enhancement, but just getting in the ballpark of reasonable performance (ie. not losing money!).
Thanks for the tip on the Phoenix miner. I'll have to decide what to use and tradeoffs. I guess Nicehash is quite different, in that they are paying you for your mining power to resell, right? I'm guessing they don't pay out as much, but I'm also thinking their mining pool might be one of the best? Tradeoffs, I suppose.
Is the ultimate setup using the best miner, in as close to the best pool you can find, and then sending the crypto straight into your wallet? (I think Nicehash contributes to some kind of wallet of its own and then you transfer in chunks to save fees... so maybe going right to your wallet would be too expensive?) So much to figure out (assuming I get my hash rates up, that is). LOL
Yes, you want to find the best miner that works for your setup and then mine via a pool that pays directly to your wallet. NiceHash is super-convenient but they are more focused on Nvidia cards and are a middle-man, reselling the hash power. The theory of switching to the most profitable thing to mine is a good idea, except it's always Ethereum right now. They had a falling out with phonenix miner and removed them from the app, but phoenix was by far the best miner that I tried for my card.
There's another website / app called minerstats that can switch between pools as well and they also list the most profitable per-card: