XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Nvidia Quadro P400 not working on Ubuntu server via GPU/PCIe passthrough

    Scheduled Pinned Locked Moved Compute
    106 Posts 8 Posters 28.3k Views 5 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • T Offline
      TheFrisianClause @olivierlambert
      last edited by

      @olivierlambert Alright, thanks for the effort 🙂

      1 Reply Last reply Reply Quote 0
      • W Offline
        warriorcookie @olivierlambert
        last edited by warriorcookie

        @olivierlambert just wanted to clarify a couple things:
        -nvidia drivers support passthrough recently on windows guests only. Linux guests are still unsupported.
        -while most quadro cards are supported for passthrough including P4000, the P400 is excluded from support. It's considered consumer grade (GP107 basically a striped down gtx1050)
        -might be a given but for those that stumble on this thread, both the video device and audio device need to be passed through separately as they show as separate devices under lspci.

        I'm confident this is an issue with the nvidia driver disabling when it see's the CPUID hypervisor present bit.

        On my hardware (SM x9 with e5-2667v2) proxmox and esxi both worked flawlessly with near bare metal performance but you're able to change the CPUID hypervisor present bit.

        On xcp-ng 8.2 with windows guest it works with no issues.
        Once I install Linux as the guest then smi-nvidia produces "no devices were found" even though it shows with lspci.

        I'm trying to migrate from esxi. I'm jumping in on this thread as this is a major issue for me that would prevent me switching. Unfortunate as this project ticks all the other boxes that vmware failed to....

        T 1 Reply Last reply Reply Quote 0
        • olivierlambertO Offline
          olivierlambert Vates 🪐 Co-Founder CEO
          last edited by

          Okay so it's "just" a matter of hiding the CPUID then 🙂 Thanks a lot for the detailed feedback @warriorcookie !

          Let me push again on that feature request on my side, I'll see what we can do (and how much time/money to get a solution)

          1 Reply Last reply Reply Quote 0
          • W Offline
            warriorcookie
            last edited by

            Parralel work into what I think could be the solution, but stalled as of now: https://xcp-ng.org/forum/topic/4643/nested-virtualization-of-windows-hyper-v-on-xcp-ng/39

            1 Reply Last reply Reply Quote 0
            • T Offline
              TheFrisianClause @warriorcookie
              last edited by

              @warriorcookie Well this is a nice and detailed post, never knew about the CPUID though so I think that could be the problem here.

              1 Reply Last reply Reply Quote 0
              • olivierlambertO Offline
                olivierlambert Vates 🪐 Co-Founder CEO
                last edited by

                It is, but it doesn't answer how much effort is needed to "solve it". ATM, there's no way to change it in Xen. So the great question is the modification scope required 🙂

                W 1 Reply Last reply Reply Quote 0
                • W Offline
                  warriorcookie @olivierlambert
                  last edited by

                  @olivierlambert said in Nvidia Quadro P400 not working on Ubuntu server via GPU/PCIe passthrough:

                  It is, but it doesn't answer how much effort is needed to "solve it". ATM, there's no way to change it in Xen. So the great question is the modification scope required 🙂

                  My Pa always said "don't bring me a dead cat without a shovel..."

                  Sorry, I'm all cats and no shovel today!

                  1 Reply Last reply Reply Quote 0
                  • olivierlambertO Offline
                    olivierlambert Vates 🪐 Co-Founder CEO
                    last edited by olivierlambert

                    Maybe a better approach would be to modify Nvidia drivers to change or remove the check. After all, it should be only a kind of grep on the word Xen 🤔

                    And obviously, this would be also against the EULA.

                    W 1 Reply Last reply Reply Quote 0
                    • T Offline
                      TheFrisianClause
                      last edited by

                      Apparently this seem to be an bigger issue than thought or am I wrong thinking that?

                      1 Reply Last reply Reply Quote 0
                      • W Offline
                        warriorcookie @olivierlambert
                        last edited by

                        @olivierlambert said in Nvidia Quadro P400 not working on Ubuntu server via GPU/PCIe passthrough:

                        Maybe a better approach would be to modify Nvidia drivers to change or remove the check. After all, it should be only a kind of grep on the word Xen 🤔

                        And obviously, this would be also against the EULA.

                        I've found this but have not had time to play: https://github.com/DualCoder/vgpu_unlock

                        1 Reply Last reply Reply Quote 0
                        • olivierlambertO Offline
                          olivierlambert Vates 🪐 Co-Founder CEO
                          last edited by

                          So the most advanced discussion within Xen about it, is here: https://lists.archive.carbon60.com/xen/devel/439501

                          Nothing happened since sadly, but it might be a start. Also, hiding Xen will probably have a lot of consequences regarding performances (no PV drivers and so on)

                          T 1 Reply Last reply Reply Quote 0
                          • T Offline
                            TheFrisianClause @olivierlambert
                            last edited by

                            @olivierlambert hmmm seems something, but why can this so easily be accomplished with Proxmox and even ESXi (Which I thought would be a pain considering the age of the P400). So if I for example would buy an nvidia K4000 I would be able to succesfully passthrough the GPU to Plex? (I don't know if you have done that)

                            1 Reply Last reply Reply Quote 0
                            • olivierlambertO Offline
                              olivierlambert Vates 🪐 Co-Founder CEO
                              last edited by olivierlambert

                              Because… they are totally different projects? ESXi got thousand engineers working on it. KVM model is different and less isolated than Xen and ESXi, so you can make important modifications in it more easily.

                              T 1 Reply Last reply Reply Quote 0
                              • T Offline
                                TheFrisianClause @olivierlambert
                                last edited by

                                @olivierlambert Yeah that they are different projects is obvious, but my question was more like 'what makes it so hard to do this in Xen?'

                                1 Reply Last reply Reply Quote 0
                                • olivierlambertO Offline
                                  olivierlambert Vates 🪐 Co-Founder CEO
                                  last edited by

                                  1. True Type-1 hypervisor (like ESXi, unlike KVM) makes it more isolated but harder to do things in general
                                  2. It's as hard in ESXi, but resources on the hypervisor are 2 or 3 order of magnitude higher than for the Xen project.

                                  Obviously, we are working hard here at Vates to get more people directly involved in the Xen project. But it takes time and a vast amount of money to reach our target 🙂 Anyway, I'll try to see what I can do with our resources. The main issue for me now on this feature: it's mainly for non-pro usage, so no company will finance that.

                                  W 1 Reply Last reply Reply Quote 0
                                  • W Offline
                                    warriorcookie @olivierlambert
                                    last edited by

                                    @olivierlambert said in Nvidia Quadro P400 not working on Ubuntu server via GPU/PCIe passthrough:

                                    1. True Type-1 hypervisor (like ESXi, unlike KVM) makes it more isolated but harder to do things in general
                                    2. It's as hard in ESXi, but resources on the hypervisor are 2 or 3 order of magnitude higher than for the Xen project.

                                    Obviously, we are working hard here at Vates to get more people directly involved in the Xen project. But it takes time and a vast amount of money to reach our target 🙂 Anyway, I'll try to see what I can do with our resources. The main issue for me now on this feature: it's mainly for non-pro usage, so no company will finance that.

                                    I certainly appreciate the challange, and I wish I had something to offer to help development wise.
                                    Perhaps a more "pro" use case could be from the standpoint of nested VM with the likes of HyperV?

                                    1 Reply Last reply Reply Quote 0
                                    • olivierlambertO Offline
                                      olivierlambert Vates 🪐 Co-Founder CEO
                                      last edited by olivierlambert

                                      I think I never heard of any company/industry requiring the possibility to hide the hypervisor for now (doesn't mean it doesn't exists, though).

                                      It's all a matter of priorities and limited resources sadly… That's why taking the problem from the other angle (ie drivers that doesn't check it) might be a correct solution.

                                      T 1 Reply Last reply Reply Quote 0
                                      • T Offline
                                        TheFrisianClause @olivierlambert
                                        last edited by TheFrisianClause

                                        @olivierlambert
                                        Well I am also looking into a Quadro K2000/M2000 or something similar, I believe those would passthrough without any issues?

                                        1 Reply Last reply Reply Quote 0
                                        • olivierlambertO Offline
                                          olivierlambert Vates 🪐 Co-Founder CEO
                                          last edited by

                                          I think we should go back to the main accountable company about all of this: it's Nvidia 😄 They probably have the answer on how they decided to artificially segment their product line via their drivers 😛

                                          W 1 Reply Last reply Reply Quote 0
                                          • W Offline
                                            warriorcookie @olivierlambert
                                            last edited by

                                            @olivierlambert that is a certainty. But no amount of bribery or blackmail seems to make them want to let us in on the secret...

                                            T 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post