I have a Windows 10 VM running on a same system too. It may not be suitable if you require virtualization inside macOS itself though. Nested virtualization doesn't work too well with the Android emulator, in my experience.
I have a Windows 10 VM running on a same system too. It may not be suitable if you require virtualization inside macOS itself though. Nested virtualization doesn't work too well with the Android emulator, in my experience.
I believe my guide is better at avoiding GPU driver initialization problems than others. I'll need to update it to support OpenCore however.
I'm not sure if you know but you have been shadow banned.
> Does nvidia work through GPU pass through as I know hackintosh didn’t support my 1660gti gpu when I tried it a few months ago.
It most likely does not.
(I briefly looked into using a single GPU for passthrough, which seems possible but involved rewriting the GPU rom and I'm not going to do that :)
I have the macOS side connected via HDMI and Windows via DisplayPort. Then I switch inputs when through the monitor's OSD for changing the OS (I think there's a way to do this through DDC/CI commands depending on the monitor, in which case you'd be able to write a script to do this, haven't looked into that yet). I have a USB switch for moving all device connections to the OS of my choice.
Also the board I have, an X299 Designare, has several USB controllers on their own IOMMU group so you can pass through each to their own VM.
I just run the following commands to stop gdm and X after booting:
sudo systemctl stop gdm
sudo systemctl stop systemd-logind
sudo killall gdm-x-session
Then start my VM. libvirt automatically unbinds it from the host and binds to the VM. You're right though, in the past this has been problematic. It is working fine though now at least on my Radeon WX 5100.I would still be using ESXI now, except my (unusual) goal was to run 10.9, and I couldn't for the life of me get GPU passthrough working in 10.9.
The neat thing about ESXI, though, is that it is officially supported by macOS. Only on Apple hardware, of course, but with ESXI the motherboard is all fake anyway, so it works identically regardless of the host's hardware. All you need to do is patch out the Apple hardware check, which is easy.
High Sierra and an nVidia card "just worked" for me on ESXI. (Sadly, Mavericks did not—I could not get the GPU to output anything—and that was the only OS I cared about—but you probably don't care.)
There's a lot more information on using KVM, so you may want to go that route instead. But of course, then then you need to use a Hackintosh bootloader like Clover or OpenCore. It was really cool having everything just install natively with ESXI.
For example, say I build a linux host with IGP + powerful discrete GPU. Can I use KVM to pass the discrete GPU to Windows if I want to play a game (using the IGP for the linux desktop) but also use the discreet GPU for Linux CUDA programming after the Windows guest is shut down?
If anyone knows if this is still the case and if the same holds for modern NVidia cards as well that would be great! Is GPU reset a documented/officially supported feature on NVidia/AMD these days?
Now, whether its actually easier to set up than a bare-metal Hackintosh, I'm not so sure. I tried it last fall, and it took a lot of fiddling to get working. (It also flat-out didn't work for my very specific use case, but that's another matter.) Maybe it would be better at surviving updates, but it's not obvious to me that it necessarily would, especially when Clover/OpenCore are already pretty decent at it.
Someone setup a repo here with a starter config: https://github.com/Leoyzen/KVM-Opencore
You'll need to build a bootable disk image with the EFI folder there, but that should mostly work out of the box. Only thing I changed was the serial numbers so iMessage, iCloud etc work properly. I think it would be easier to set up a working Windows install with passthrough first just so you know you have that portion setup properly, and then do macOS.