← Back to context

Comment by zeusk

16 hours ago

> My personal dream is that vms would support pci pass through and so you can just spin up a Linux vm and let it drive the gpus.

SR-IOV is just that? and is well supported by both Windows and Linux.

SR-IOV and VFIO passthrough are different things. SR-IOV partitions a PCIe device across multiple VMs simultaneously (common for NICs and NVMe). VFIO passthrough gives one VM exclusive ownership of a physical device. For GPU compute you almost always want full passthrough, not SR-IOV partitioning.

The harder problem on Apple Silicon is that the M2 Ultra's GPU is integrated into the SoC -- it's not a discrete PCIe device you can isolate with an IOMMU group. Apple's Virtualization framework doesn't expose VFIO-equivalent hooks, so even if you add a discrete AMD Radeon to the Mac Pro's PCIe slots, there's no supported path to pass it through to a Linux guest right now.

On Intel Macs this actually worked via VFIO with the right IOMMU config. Apple Silicon VMs can do metal translation layers but that's not the same as bare-metal GPU access. It's a real limitation and I doubt Apple will prioritize solving it since it would undercut the "just use macOS" pitch.