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.7k 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.
    • 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
                        • T Offline
                          TheFrisianClause @warriorcookie
                          last edited by

                          @warriorcookie Well I am at the point on almost giving up on the P400 and just go with an M2000. I currently have an AMD Radeon Pro WX2100 laying around but no luck with this one Plex...

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

                            Currently I can get a M4000 for a decent price, I think this one should be able to passthrough in XCP-NG? But I have no idea if this will actually passthrough, has anyone reading this experience with passing through an Quadro M2xxx or M4xxx card to XCP-NG?

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

                              You should ask on Nvidia forum, I assume it will be a safe bet 🙂

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

                                I will take the bet, an M4000 for 200 euro's is pretty cheap as I have seen M2000 for higher prices.

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

                                  Well just tested the Quadro M4000 also no luck on this one... Although this GPU is alot more powerfull than the P400 so I will keep in anyway....

                                  EDIT: Well complained to quickly, apparently a host reboot resolved it and I see the GPU now in the Plex VM 😄

                                  X 1 Reply Last reply Reply Quote 0
                                  • X Offline
                                    XCP-ng-JustGreat @TheFrisianClause
                                    last edited by

                                    @thefrisianclause Hello, not sure if I missed something from the above thread, but did any of you try to turn off the CPUID "hypervisor present" bit on an Intel-based XCP-ng host VM using this technique from the thread referenced by @warriorcookie above? https://xcp-ng.org/forum/topic/4643/nested-virtualization-of-windows-hyper-v-on-xcp-ng/26

                                    It is the equivalent of the ESXi Hypervisor.CPUID.v0="FALSE" vmx file configuration tweak. It configures the XCP-ng VM to, in effect, lie to the guest OS by saying, "you are not running on a hypervisor."

                                    T W 2 Replies Last reply Reply Quote 0
                                    • T Offline
                                      TheFrisianClause @XCP-ng-JustGreat
                                      last edited by TheFrisianClause

                                      @xcp-ng-justgreat Does this also work for Linux? As I currently run Linux with this and not Windows. But I will have a look into it 🙂

                                      Also I am running this on an AMD Ryzen 3800XT.

                                      EDIT: I also had the Quadro M4000 running this afternoon, but had to redo the VM. Now I cant get it to work anymore and did the same tasks. Sometimes Xen is like a 'lady' sometimes it works and sometimes it doesn't 🙂

                                      X 1 Reply Last reply Reply Quote 0
                                      • X Offline
                                        XCP-ng-JustGreat @TheFrisianClause
                                        last edited by

                                        @thefrisianclause Yes, it should work for a Linux guest too. It alters the VM's apparent CPUID as presented to the guest OS--whatever that happens to be. I'm not one-hundred percent sure about AMD, but try the same technique. The same bit probably has the same purpose on an AMD CPU.

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

                                          How would you have hide this exactly? For Linux, the "best solution" for now is to get a modified Nvidia driver without the virt check. On Windows, it's already working since recent drivers (they removed the check)

                                          1 Reply Last reply Reply Quote 0
                                          • T Offline
                                            TheFrisianClause @XCP-ng-JustGreat
                                            last edited by TheFrisianClause

                                            @xcp-ng-justgreat Unfortunately this did not work on Ubuntu 20.04.3 LTS ..... Even my recently bought Quadro M4000 won't work...

                                            I am now getting this error:

                                            [   50.123425] NVRM: GPU 0000:00:06.0: RmInitAdapter failed! (0x25:0x40:1250)
                                            [   50.123475] NVRM: GPU 0000:00:06.0: rm_init_adapter failed, device minor number 0
                                            [   51.102646] NVRM: GPU 0000:00:06.0: GPU has fallen off the bus.
                                            [   51.304888] NVRM: A GPU crash dump has been created. If possible, please run
                                                           NVRM: nvidia-bug-report.sh as root to collect this data before
                                                           NVRM: the NVIDIA kernel module is unloaded.
                                            [   51.507717] NVRM: GPU 0000:00:06.0: RmInitAdapter failed! (0x24:0xffff:1220)
                                            [   51.507755] NVRM: GPU 0000:00:06.0: rm_init_adapter failed, device minor number 0
                                            
                                            X 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post