Announcement

Collapse
No announcement yet.

NVIDIA Publishes Code For X Synchronization Fences

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

  • Originally posted by brent View Post
    Uhm, I don't get it. Proper synchronization to avoid tearing is of interest for everyone, not only NVidia. Why should NVidia be criticized for this contribution?
    That contribution in itself is totaly fine. It's just that they only contribute to FLOSS if they realy need the functionality for their blob and not because they have a policy of contributing back to FLOSS 'market' where such thing is part of the way 'business' is done.

    It's like a giant electronics company that enters a cellphone market and decides not to share patents while everyone is doing that and starts an all out patent war when at least one of all the other companies seemingly violates their totally meaningless patents.

    Comment


    • Wow, 10 pages and yet no one comment about the Xorg changes (sorry if I missed it).

      I remember to read a comment on the NVIDIA Linux support forums about the required changes. IIRC, it was a feature that could benefit other drivers as well.

      If somebody has more info or can explain why these changes were needed please do so.

      Comment


      • These threads have some info. Quoting Aaron Platner:
        core X rendering protocol does not sync to vblank or provide any way of doing tear-free updates. This is one of the main reasons the Composite extension was created, but to avoid tearing you do need a composite manager that knows how to do tear-free rendering, which xcompmgr and other RENDER-based composite managers do not.

        PS: the 1 min limit for edits suck.

        Comment


        • Originally posted by DeiF View Post
          Wow, 10 pages and yet no one comment about the Xorg changes (sorry if I missed it).

          I remember to read a comment on the NVIDIA Linux support forums about the required changes. IIRC, it was a feature that could benefit other drivers as well.

          If somebody has more info or can explain why these changes were needed please do so.
          It syncs rendering streams. For example with compositing there is 2D rendering and 3D rendering. It would be nice if such rendering buffers could be synced. However with Gallium3D that all FLOSS drivers are going to be using I wonder if it is even going to be needed/benificial...

          But in theory...

          Comment


          • Originally posted by pingufunkybeat View Post
            Other than latency, all of these are more or less direct results of the development process and source being open.
            This is all fine until we get to this point.


            Originally posted by pingufunkybeat View Post
            Which was my point.
            To refer to statements such as
            Originally posted by pingufunkybeat View Post
            Originally posted by mugginz View Post
            Do you feel that running Linux with a closed driver is against this philosophy. If not then surely you must agree then that there's no basis for people to suggest running Linux with a closed driver is illegitimate.
            Yes I do.

            But I never claimed that YOU have to feel the same way about it.

            Let me run a free OS with free drivers. You run whatever you want.
            I think the main issues being questioned are the philosophical and political ones.

            There are technical benefits to using an open development process. There are some benefits to a closed process as well but those probably don't bear mention right here.

            But the thing is, when you say there are legitimacy issues because the driver is closed then you're wondering off into another place. If you say there's benefit a), b), and c) when you use an open process and assuming you list valid reasons then you'll be on solid ground. When you say that there are ideological reasons to not use a closed driver then there still can be a beneficial discussion to be had about the gravity of those issues, but the idiological position you have on that doesn't really impact issues of kernel integration, FPS, shader model support, power management, quality of experience, fitness for purpose, etc.

            Comment


            • Originally posted by pingufunkybeat View Post
              Other than latency, all of these are more or less direct results of the development process and source being open.

              Which was my point.
              Wait, leaving aside that the list you quoted is a tutti-frutti nonsense, how does Linux development process and its license have anything to do with, well, anything there? OK, I give you flexibility, but the rest? And note that I'm not even questioning the true value of what has been said, nor judging whether they are advantages at all, but your assertion that they are a direct consequence of Linux development model and openness.

              Comment


              • Originally posted by yotambien View Post
                Wait, leaving aside that the list you quoted is a tutti-frutti nonsense, how does Linux development process and its license have anything to do with, well, anything there?
                Security profits from an open development model. Surely you are aware of how fast critical errors are patched with FLOSs and how slow proprietary providers can be. This is not to say that Free Software is always better, but I think that many will agree that the "thousand eyes make bugs shallow" and practice bears it out.

                Viruses are a direct consequence of the security.

                Flexibility you agree with.

                Working out of the box is facilitated by having the access to the code and the ability to modify it, which ensures that distributions can modify the software to improve the overall system. With a closed system, you cannot modify it for the most part, and you're stuck with what you get. The licenses of open source programs also make it possible to bundle them together, which many closed source apps explicitly prohibit (see Java and many drivers).

                Scalability itself is not dependent on the openness of the source but you are very well aware that the scalability of Linux came because the big boys wanted to have Linux running on big iron. The openness of Linux made it possible for companies such as IBM to improve the SMP performance.

                KDE and apps all run on Windows anyway, but you would never have such great software for free if not for the license.

                Comment


                • Back on topic: I'm pretty sure synch objects were an nvidia only extension for a long time. It's part of OpenGL 3.x now, but I'm assuming most Xorg stuff won't be using that. I haven't seen the patch details, and I'm not particularly familiar with Xorg internals, but I'm still certain that this particular feature is really only useful with the nvidia blob.
                  Not that this is evil in any way - I hardly expect nvidia to do things for the benefit of anyone other than nvidia - but I suspect that it will limit generic usefulness somewhat.

                  Comment


                  • Originally posted by mugginz View Post
                    I think the main issues being questioned are the philosophical and political ones.
                    I agree that the issue is philosophical (other than the real risk of losing the drivers if Nvidia chooses to pull them).

                    But the problem is that Nvidia users do not have a feasible option to make their choice. They have to use closed source software, or be left with a largely non-functional system.

                    I can believe that you would let everyone make their own mind about closed/open software and have them choose what they want based on their own considerations.
                    But at the moment, Nvidia users do not have a choice. It's like saying that everyone should make up their mind whether to eat meat or be vegetarian and then offering only sausages. It may be a really good sausage and a very performant sausage, but this doesn't help the vegetarian.

                    Once you have tofu ragout on the menu as well as the sausage, THEN people can choose what to eat based on their philosophy. Give us the specs so we can have free drivers, and THEN it will be a question of philosophy. Until you have the option of running a (functional!) free system, you do not have a choice to begin with, philosophical or other.

                    The situation is not perfect for AMD users, as the free drivers have some issues and are missing functionality (although I will point out that they are in a rather good state and that I'm happy with them). But the situation is clearly better and AMD users can make such a philosophical choice.

                    Comment


                    • Originally posted by pingufunkybeat View Post
                      I agree that the issue is philosophical (other than the real risk of losing the drivers if Nvidia chooses to pull them).

                      But the problem is that Nvidia users do not have a feasible option to make their choice. They have to use closed source software, or be left with a largely non-functional system.
                      And that I can agree with. Without their closed driver, nVidia cards don't seem that great to me for a Linux desktop. I'd be extremely surprised if they pulled out of the Linux market but of course it's not imposable that that could happen. nVidia cards are partially useful with Nouveau thankfully and hopefully in the future they'll be more so.

                      If nVidia were to pull out of supporting the Linux market and stopped developing their closed driver, users of nVidia hardware could remove their nVidia cards and install something else and still be left in a familiar place though. If the entire Linux operating system were to vanish were nVidia to pull out then I'd be a lot more concerned about that possibility.

                      Originally posted by pingufunkybeat View Post
                      I can believe that you would let everyone make their own mind about closed/open software and have them choose what they want based on their own considerations.
                      But at the moment, Nvidia users do not have a choice. It's like saying that everyone should make up their mind whether to eat meat or be vegetarian and then offering only sausages. It may be a really good sausage and a very performant sausage, but this doesn't help the vegetarian.
                      I think you have a decent point there. nVidia's sausages are only performant when you apply blobs of their own brand of special source. At least that's so until the Nouveau source is a bit tastier.

                      It's a case of if you don't like the flavour of nVidia's blob source you're better of with Intel or AMD sausages.

                      Originally posted by pingufunkybeat View Post
                      Once you have tofu ragout on the menu as well as the sausage, THEN people can choose what to eat based on their philosophy. Give us the specs so we can have free drivers, and THEN it will be a question of philosophy. Until you have the option of running a (functional!) free system, you do not have a choice to begin with, philosophical or other.
                      Thankfully AMD are actively enabling the open driver landscape with makes their hardware a better fit for some. Additionally, I think we're likely to see AMD's closed driver reach parity with nVidia's re performance and features, etc. and so will not only have the most open source friendly hardware but also the best closed drivers for a Linux desktop. That of course it yet to be seen but recent developments in fglrx suggest this to me at least.

                      Originally posted by pingufunkybeat View Post
                      The situation is not perfect for AMD users, as the free drivers have some issues and are missing functionality (although I will point out that they are in a rather good state and that I'm happy with them). But the situation is clearly better and AMD users can make such a philosophical choice.
                      Indeed.

                      Comment

                      Working...
                      X