PCIe Pass-through lanes and lane performance
-
@andriy.sultanov said:
I'll try to see why other devices are omitted and how this can be fixed.Any news on this?
I have been fighting with getting an Intel Arc Pro B50 to work on Linux for months and i suspect that, the fact that the audio device isn't present, is what makes Linux fail to load the driver correctly.Going the xen-cmdline way, seams to disable xe passthrough both in command line and in XO gui, causing all kinds of issues.
Windows seems to be able to initialise the GPU driver without the audio device, but it is in some kind of borked state. You can send workload to the GPU but the drivers are complaining about "no-pci compatibility".
XCP-ng 8.3 (latest patches)
Fedora server 44 - Kernel 7.1.5-201
on latest Arc firmware as well. -
@pandusen As Teddy said above, you can't passthrough a PCI bridge, so there's no PCI devices xapi shouldn't omit here.
But "going the xen-cmdline way" shouldn't break anything, that's what
xe pci-disable-dom0-accessdoes behind the scenes. What issues did you see? Which steps did you follow? -
@andriy.sultanov It's possible that this is just a fundamental issue with trying to use (maybe just Battlemage) Intel GPU's in XCP-ng.
The card itself appears to be a PCIe bridge in front of the actual GPU hardware on the card. If the driver on the guest requires "the whole thing" sent to it, and you can't pass-through the whole bridge and everything behind it, then there's no real way to use these GPU's in a guest on XCP-ng.
The lack of recent kernel or sufficient backports in the XCP-ng kernel, means the SRIOV features of Intel GPU's are lost as well.
All of this stuff works in Proxmox with seemingly little issues.
James
-
FYI I will get my hands on a Intel Arc Pro B50 to make various tests with it (in the next weeks). If something don't behave as expected, I will try to find a solution.
-
@TeddyAstie I think there's alot of interest in the Intel platform because of the lack of ridiculous licensing for virtualization features. The problem is that you need a pretty current 6.x kernel to use them and XCP-ng/XenServer is just stuck on a really aging kernel right now.
As exposed in this thread, the PCIe pass-through isn't really working properly under XCP-ng.
Even if pass-through worked, that's kinda lame because the real purpose would be to chop up the GPU into SR-IOV instances so multiple workloads could have a GPU.
The Proxmox community is already rockin' and rollin' with this. I watched a video a couple of days ago where a B70 was chopped up into Qty.4, 8GB GPU's via SR-IOV and passed to clients.
No ridiculous mega-$$$$ licensing. It just worked.
-
Thought...If you want access to a server with a B50, I think I could setup VPN access and put a host online with IPMI access for you to do whatever you want with.
You will have an AMD Epyc 7302 with 64GB of ram some flash and HDD storage, and an Intel B50. PM me and we can work out the details of what you need to experiment with, and I can setup some remote access for you to get into the system.
I will gladly work with you guys any which way I can to move this forward.
-
@JamesG Don't bother, I'm in PTO next week; so I may get access to hardware when I'm back.
-
P poddingue marked this topic as a question
-
@pandusen As Teddy said above, you can't passthrough a PCI bridge, so there's no PCI devices xapi shouldn't omit here.
I am not trying to pass through the bridge only the end points. The Intel arc's have 2 end points: The GPU and the Sound device. "xe pci-list" only reveals the GPU, not the sound device. (this works for nvidia and AMD)
But "going the xen-cmdline way" shouldn't break anything, that's what
xe pci-disable-dom0-accessdoes behind the scenes. What issues did you see? Which steps did you follow?the sound device is available in the lspci list and can be passed through using CLI.
But doing so, (using CLI for passtrough) undoes everything done using xe or the passthrough gui in XO. and results in this:
https://xcp-ng.org/forum/topic/10609/xcp-ng-8.3-pci-passthrough-issue
so yes, its does break something.
-
@jamesg @teddyastie, any further findings on this?
I am building an AI Inference server with a handful of Arc Pro B70's and a Supermicro H12SSL-i MOBO + 128GB of ram. I was hoping to use xcpng as a hypervisor to setup different VMs / software setups, but have also run into roadblocks with pci passthrough.
I'm somewhat of a novice on low level issues like this but if there is any info i can provide to help with the support of these GPUs for passthrough, happy to do so.
Going to give proxmox a try, then bare metal but just wanted to add another somewhat different use case behind the Battlemage cards.
-
@dkidd255 I'm a LOOONG time XCP/XenServer/XCP-ng user in my homelab...And it pains me to say this...
But this just works in Proxmox.
If you want to help us dig in and troubleshoot/explore this topic...Fine.
If you want to actually use your hardware and make progress on your ideas, go to Proxmox.
I seem to recall some recent firmware shenanigans from Intel. Intel maybe thought a little too much of their hardware, or they've decided to just scale things back a bit, but newer versions of firmware have reduced VF's available. I don't think the B70 is impacted by this, but it has massive memory in comparison to the smaller cards.
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login