Announcement

Collapse
No announcement yet.

NVIDIA's Proposal For A New API Better Than GBM Has Already Made Some Progress

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #61
    Originally posted by fuzz View Post
    It's NVIDIA's fault that they have an architecture that might not be so great. AMD drivers don't suck. Have you even used the new open source AMDGPU drivers?
    AMD is a second-rate GPU and CPU company.

    I get that people are fans, but at least be honest with everyone.

    Comment


    • #62
      Originally posted by johnc View Post

      AMD is a second-rate GPU and CPU company.

      I get that people are fans, but at least be honest with everyone.
      No disrespect but, you should change your tag to: "Official Nvidia Fanboy".

      Comment


      • #63
        Originally posted by starshipeleven View Post
        Basing this on? All blog posts from DE and driver devs are pretty much in agreement about "not giving a fuck about EGLStreams". https://blog.martin-graesslin.com/bl...stream-or-not/
        But we're not talking about EGLStreams, are we? We're talking about the new API that Nvidia are proposing. And Martin's objection isn't to EGLStreams anyway - it's to maintaining different code paths for different drivers. The Nvidia proposal is to replace both GBM and EGLStreams with something new that addresses the concerns with both.

        Originally posted by starshipeleven View Post
        This just means people on NVIDIA blob will have to stay on Xorg, for all distros it's orders of magnitude easier to just keep that old dog around (also because Unix and BSDs) and for 99% of the userbase it won't be noticeable.
        Not happening. The desktops, as we've established, don't want to maintain multiple code-paths - they'll be killing X11 support as quickly as they can. By which I don't mean that X apps won't work - that's why Wayland exists - but the desktop shells won't be maintaining the ability to run on X11 for long.

        Comment


        • #64
          Originally posted by bkor View Post

          What makes you think this? You're purely guessing AFAIC. I've seen nothing to support this thought. 1) GNOME does NOT appreciate multiple APIs for pretty much the same thing. How is anyone going to be able to test it? 2) It would require GNOME/KDE to have the hardware as well as running proprietary software to support this. GNOME was pretty much started because of the Qt license (ages ago). 3) For KDE, the KWin developer already will not support Mir and anything distro specific.
          Who's talking about multiple APIs, or distro-specific stuff? The Nvidia proposal is for one API replacing both GBM and EGLStreams. If it's adopted, it will probably co-exist with GBM in the short term, since the GBM code already exists - but only in the short term so that the migration to Wayland isn't disrupted too badly.

          As to "purely guessing" - yes, some of what I'm saying is speculation. But it's speculation based on reading the mailing lists and blog posts, based on facts posted publicly. We know that Nvidia aren't willing to do GBM, because the API doesn't suit them - unsurprisingly, since it was designed for the needs of the Mesa/DRM drivers. We also know that Nvidia appear to have accepted that EGLStreams doesn't work for everyone else, because they've belatedly started pushing a collaborative approach on a third API that meet the needs of everyone. These are facts, easily confirmed by looking at the public mailing lists.

          What I *am* speculating on, is the reaction of the people who have already committed to GBM - the open-driver folks, the desktop compositor folks, etc. And they're certainly not happy with either of the possibilities - failing to support a significant hardware vendor, or having to rework their code to a new API... they've made that clear enough. But I do believe they'll choose the latter, because that's just a short-term pain - not as bad as the support effort needed in keeping X11 compatibility around, or the pain of having to deal with people wanting to know why their hardware doesn't work. Speaking as a developer - if not one of the developers affected by this - I know what my choice would be.

          Comment


          • #65
            Unbelievable. They prefer start a new API instead of supporting GMB.
            So, let's change the world because the world is wrong.
            If it was like that, how do you explain none has jumped on EGLStreams in the last 2 years?

            Afaik an answer that is thrown around a lot is that GBM can be expanded. Has any dev in the video talked about expanding GBM to overcome its shortcomings?
            Remember, where does Wayland comes from? Why is it that we are discussing GBM now? Would it have been a better deal to expand X instead of developing Wayland?

            What happened here is clear, GBM has its shortcomings, NVIDIA pulled EGLStreams out of nowhere without previous discussions with current developers who, when faced with it, blocked it out on technical grounds. NVIDIA could not move ahead with EGLStreams on their own, as they usually do, and then tried to convince the other developers. This time, however, they interacted properly, discussions are still ongoing, and the result so far is that they have found common ground, that being, neither GBM nor EGLStreams are proper solutions. Hence, a new API is being worked upon.

            This is the best outcome, proper design requires this bottom up approach, hacking solutions to fill some sort of demand for something that runs on top of the system is what led X to become the mess is was.

            Comment


            • #66
              Originally posted by Delgarde View Post
              But we're not talking about EGLStreams, are we? We're talking about the new API that Nvidia are proposing. And Martin's objection isn't to EGLStreams anyway - it's to maintaining different code paths for different drivers. The Nvidia proposal is to replace both GBM and EGLStreams with something new that addresses the concerns with both.
              WAT?
              Yes, the new api NVIDIA is pushing is EGLStreams, and since also AMD and Intel have shown exactly 0 interest in it, for DEs this means keeping a different code path for different drivers.

              Not happening. The desktops, as we've established, don't want to maintain multiple code-paths - they'll be killing X11 support as quickly as they can. By which I don't mean that X apps won't work - that's why Wayland exists - but the desktop shells won't be maintaining the ability to run on X11 for long.
              X11 is pretty much stable at this point and support for it is there already. Sure they won't keep it indefinitely, but they will run on X11 for a long while still.

              Comment


              • #67
                sigh, unapproved post for Delgarde above

                Comment


                • #68
                  Originally posted by Stellarwind View Post
                  NVidia devs already told somewhere, that they can implement GBM if they had to, but they rather not, because it will suck for various reasons. It is quite possible that they are right and it will be better for everyone or maybe that they have some special optimisation tricks they are doing, that others don't - could be a reason their drivers work great and amd still suck.
                  Then why doesn't GBM suck for Intel, AMD, and other experienced developers working with graphics (e.g. peoples from Red Hat)?

                  This doesn't seem to be true.

                  Comment


                  • #69
                    Originally posted by Hi-Angel View Post
                    Then why doesn't GBM suck for Intel, AMD, and other experienced developers working with graphics (e.g. peoples from Red Hat)?

                    This doesn't seem to be true.
                    Simple - because those are the people who designed GBM. And naturally, they designed something that would work well for them - they knew what their drivers were capable of, and designed something that would support the needs of clients (i.e desktop compositors) while performing acceptably on their drivers. It probably also works for Nouveau (to the extent that anything does), since that's built on the same basic driver stack as the others.

                    But that doesn't mean it's suitable for the Nvidia binary drivers - it wasn't designed for them, of course, because nobody but Nvidia has any idea how those work. Their fault, of course, but a problem for everyone in the field...

                    Comment


                    • #70
                      Originally posted by starshipeleven View Post
                      WAT?
                      Yes, the new api NVIDIA is pushing is EGLStreams, and since also AMD and Intel have shown exactly 0 interest in it, for DEs this means keeping a different code path for different drivers.
                      Why do you say that? Have you not read the article, the previous article it linked to, or anything else on the subject? The previous Phoronix article summarises it pretty well, along with the PDF slides it references:

                      Originally posted by Phoronix
                      With those current "prior arts" from here, James Jones (NVIDIA) is hoping that the development community will ultimately devise a more optimal API...

                      ...the hope is to make a much more universal and full-featured API to other clients / windowing systems.
                      Both GBM and EGLStreams are listed under "prior art", and an explicit documented assumption - the first such assumption - is that they're designing an ideal new API from scratch. And this is a process being initiated by Nvidia, because they've accepted that EGLStreams is not going to be accepted by anyone else.

                      Comment

                      Working...
                      X