Announcement

Collapse
No announcement yet.

Fedora Project Leader Calls Out NVIDIA Over Their Proprietary Linux Drivers

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

  • Come on, join us! Work directly on the Nouveau driver so it just works on new hardware
    That's clearly the perspective of somebody working in an open-source company without acknowledging how Corporations work.
    If it adds cost(not working on the same, shared code-base between Windows and Linux), then engineers are not allowed any time to work on it - they have to do it in their free time and we all have limited energy and time after work.

    Comment


    • Originally posted by stargeizer View Post

      In case of Nvidia, this is false. Is true that Nvidia promotes and releases the Geforce Experience add-on that provides profiles for games, but driver wise, they stop at nothing to get the last frame per second they can in Windows. Nvidia enginners do lots of trickery with the GPU/VRAM speed (and generated heat, mind you) and is optimized on a "by game" basis , replaces shader binaries (in case of some games, they replace the entire shader set) to get most of the speed, and with DLSS they do adapt the raytracing engine in a "by game" basis (altough this requires explicit game support too). Because of that (and some other reasons no coder that worked with nvidia engineers shall discuss ever) we do affectionately call Nvidia "THE graphics mafia". (or in my case, used too, since i'm retired yay!!!)

      Seriously, these guys are serious business.

      For older games tho, you'll want to stick with older drivers. From time to time, optimizations are removed from the driver, otherwise it would be a gigantic blob nowadays.

      For those wanting Nvidia opening their Geforce/Quadro/RTX lines of drivers, give up already. As Jen-Hsun Huang once said to a spanish medium: "We're a software company... doing hardware". They long ago started to expand to other areas of business and they do invest a lot of money in software R&D, so their drivers are "THE" money maker. They do have open drivers where makes sense to have one (Tegra and partially Jetson i believe, i can be wrong on these two tho), but for their main line of hardware, i doubt they want to open these. It's just R&D is too much valuable as an advantage over the competition to giving up these to the competition, (or worse, sharing the codebase that gives some use to the competition).

      Get real guys. No ammount of trolling will change reality.
      You speak bullshit as person who personally manipulated Nvidia profiles.

      1st. Geforce expierience doesn't adjust profiles or anything like that. It is simply tool that on its own can reconfigure game settings automatically to your GPU power and offers few stuff like Shadowplay. Profile stuff are not at all done on Geforce Expierience only done in driver.

      2nd. "They stop at nothing to optimize stuff" in case of Nvidia means they spare more resources towards specific optimalization. But they aren't doing anything of sort like let's decrease quality for sake of higher performance, last time it happened was in like 2004 and ATI also did it.

      3rd. I modified profiles for my own amusement and compared them to default presets for like ~~20-30 games. Only in 1 i measured some performance diffrence (around 5%) but in like 3-4 of those titles i saw some graphical issues without those profiles. There was also Monster Hunter World I mentioned that had opposite situation. Where I noticed most changes comparing to default settings? That were tons of changes around SLI profiles, but i didn't have SLI setup so i cannot judge it. Knowing how problematic SLI was, I am not suprised.

      4th. GPU clocking/VRAM clocking is not done by secret profiles, they are publicly availiable in normal nvidia control panel and they do not change on per game basics unless user explicitly chooses it.

      5th. I only found one setting about VRAM allocation strategy that sort of felt a bit like that by description but i never measured any diffrence in any game i played thanks to changing this setting.

      6th. Your argument about DLSS and raytracing is so bullshit i won't even talk about it.

      7th. Since DX12/Vulkan changes done on driver side are very minimal and are way more in line with conformance tests. This is no longer OpenGL times where spec is bullshit.

      Comment


      • Originally posted by piotrj3 View Post

        You speak bullshit as person who personally manipulated Nvidia profiles.
        Thanks, piotrj3, it's really nice to see sensible people here.

        Comment


        • Originally posted by birdie View Post
          I need proofs! Something on a wide scale please! Because, yes, NVIDIA did that for rare broken games which were incorrectly coded in the first place.
          Nothing wrong with helping games developers out that way, except that it wil necessarily create a lot of driver bloat.

          Being not in games development myself, I wonder why they do not simply provide the improved shader code to the game development studios. Then the fixes/workarounds would be where they are really needed and download sizes for the driver could remain much smaller.

          It seems to be the same for AMD by the way: Their AMDGPU Pro driver download has 324 MB, the (Windows) Adrenalin software package has 671 MB. I don't see a download option that does NOT have the whole ballast.
          Last edited by Rabiator; 05 April 2022, 08:34 AM.

          Comment


          • Originally posted by Rabiator View Post
            Nothing wrong with helping games developers out that way, except that it wil necessarily create a lot of driver bloat.

            Being not in games development myself, I wonder why they do not simply provide the improved shader code to the game development studios. Then the fixes/workarounds would be where they are really needed and download sizes for the driver could remain much smaller.

            It seems to be the same for AMD by the way: Their AMDGPU Pro driver download has 324 MB, the (Windows) Adrenalin software package has 671 MB. I don't see a download option that does NOT have the whole ballast.
            Modern GPU drivers are essentially full featured ... operating systems in themselves thus bloat. I'm also quite concerned but luckily not everything gets loaded on boot, so let it be. What I hate all GPU drivers for is that despite this humongous bloat they don't contain human readable descriptions for their internal errors, e.g. infamous Xid errors from NVIDIA which could only be found on their website.

            Under Windows there's a ton more of errors which are also never explained.
            Last edited by birdie; 05 April 2022, 10:47 AM.

            Comment


            • I am a long time Fedora user (decade +). I am also a long time Nvidia user (decade +). I am tired of Mommy and Daddy fighting.

              I use CUDA. I do work that uses GPU acceleration. Nouveau smashes that. Wayland smashes that. Lvmpipe smashes that. The concept that "only the pure can serve" has led to a lot of religious wars. I do not care about your religion. I do care about being able to run OpenCV and TensorFlow. Also OpenPIV, and the list of GPU enabled software goes on.

              I also know how valuable open source is. I once had an argument with a KDE developer about some changes they were making to evolve KDE. He said you had to break a few eggs to make an omelet. I pointed out the Object Oriented Programming principle that the user interface is a contract. Cut/paste etc must work because we have taught people they do work. He said it was a custom knitted mohair sweater and I didn't have to wear it. But KDE today is vibrant, not too bad as a mohair sweater even in the summertime, and the pain of making omelets/souffles has receded in my memory.

              Stop breaking the user interface. It isn't yours to break. Nvidia does not care about Linux, we are a small part of their market share. The software support they have provided is wonderful, and has allowed a decade of games to run under Linux, but it is not enough. They aren't getting mohair sweaters knitted fast enough, and everybody keeps stirring their omelets before the souffle has risen. I still can't install akmod*510 on any one of the three boxes that use GPU acceleration.

              So hear me now. Open Source is not about being purity dictators. If someone uses "Non-Free" software, THEY HAVE THAT RIGHT.

              Hear this too. Open Source isn't about any one company. If you don't like this years style of mohair sweaters, you better get with the style, people are being forced to wear them whether they like it or not. Even when it breaks the house.

              Mommy and Daddy, STOP FIGHTING. Find a way to work it out or GET A DIVORCE.

              Comment


              • Originally posted by CSDofNM View Post
                The concept that "only the pure can serve" has led to a lot of religious wars.
                TBF this is more the problem from the POV of users than it is from the POV of devs. For devs, the real reason "only the pure can serve" is not purity at all, it's that closed source drivers make their life harder in several ways. For a start, the proper clean way to support them out of the box without DKMS magic or the driver lagging behind releases (although slightly in the case of nvidia when I last used it, maaaany years ago) is to keep stable kernel interfaces, which is not at all a trivial task to make compatible with a fast pace of changes. Then you have the debugging issues that having the source code simplifies greatly.
                In the end, it's just harder to support for the open source side, which in some cases is voluntary part time work (for the kernel this is less true tho).

                Originally posted by CSDofNM View Post
                Stop breaking the user interface. It isn't yours to break.
                Oh, that's the thing, it is. The one who does (or at least sponsors) the work is the owner of the decisions. Which also means it's responsible of the consequences.

                Originally posted by CSDofNM View Post
                So hear me now. Open Source is not about being purity dictators. If someone uses "Non-Free" software, THEY HAVE THAT RIGHT.
                Open source is not strings attached. You have whatever rights authors give you. Just as you can't complain to nvidia for not providing free drivers because it was never a part of the offer, dictating what should be able to run in a given project was never part of the offer. You're free to fork, you're free to use something else. You're not free to tell someone else how to work, unless you pay for that.

                Originally posted by CSDofNM View Post
                Hear this too. Open Source isn't about any one company. If you don't like this years style of mohair sweaters, you better get with the style, people are being forced to wear them whether they like it or not. Even when it breaks the house.
                Fork it. Put the hours, put the money. Mommy and daddy aren't around anymore, you're an adult and you're on your own. This is where I do side the most with birdie, even if I don't like his argument style or I may disagree in a lot of things, entitlement in the FLOSS world runs way to high. Against open source providers and against companies. Nobody owes you (or anyone) anything.
                Note I do simply not use nvidia because I don't want to deal with closed drivers, it's not that I'm siding with their way to work, I'm siding against people expecting more than what they paid for. I'm also aware it's not always optional (let's say you work in physics and need to run simulations, nothing beats CUDA and most packages prioritize that backend). But in that case, nvidia held their end, you have a (closed) driver that makes it work and you simply stick to LTS releases in your cluster and everything works. They kept their support promise.

                Originally posted by Alliancemd View Post

                That's clearly the perspective of somebody working in an open-source company without acknowledging how Corporations work.
                If it adds cost(not working on the same, shared code-base between Windows and Linux), then engineers are not allowed any time to work on it - they have to do it in their free time and we all have limited energy and time after work.
                Yep, it sounds like non-competition clauses alone should be enough to stop individual engineers to decide whether they want to contribute even in their free time.

                Comment


                • Originally posted by birdie View Post
                  Data centers have neither X.org, nor Wayland (they run CUDA and ML workflows which are like ~10% of NVIDIA drivers which again most desktop never use) thus your argument is null and void.
                  They break just the same, so it still matters. The userspace parts aren't the issue, it's the kernel space stuff.

                  And in any case, you'd be surprised how much a desktop environment gets run in datacenters. People do things like cloud gaming/workstations, VDI, and many other things there. It's a big business in its own right and because the cloud providers all offer NVIDIA GPUs, that's what's used in those cases.

                  Comment


                  • Originally posted by sinepgib View Post

                    the proper clean way to support them out of the box without DKMS magic or the driver lagging behind releases (although slightly in the case of nvidia when I last used it, maaaany years ago) is to keep stable kernel interfaces, which is not at all a trivial task to make compatible with a fast pace of changes.
                    The proper way to do it is not to break existing interfaces or drivers for legacy hardware. The proper way to do it is not to break existing interfaces or drivers for legacy software. There is software above that relies on that interface, and it isn't yours to break.

                    Originally posted by sinepgib View Post
                    Fork it. Put the hours, put the money. Mommy and daddy aren't around anymore,
                    You fork it. You broke it, you fork it. In this case you are either Mommy or Daddy, and it is the users who are getting screwed. If you had a decent Computer Science background, they would have taught you the Principles of Object Oriented Programming, which came from a language called Smalltalk. If you are saying the kernel/graphics interface is a bad design, I have to agree with you. If you say the levels of abstraction aren't high enough to support multiple types of graphics interfaces, I have to agree with you. Linux (in this case Fedora) is either Mommy or Daddy, and Nvidia is the other one. We, the children, are busy using the fruits of Mommy and Daddy's labor and we have neither the time, money, nor inclination to fix your lack of vision and animosity to the other party. BTW, I have a MS in Computer Science and Engineering and worked on Unix boxes before Linux was even born. If you want to experment, do it in something like OpenSuse's Tumbleweed, and don't inflict it on the rest of us. But the day you force replaced my CUDA drivers with Nouveau in a DNF software update you sinned, and you need to come to terms with that. You have users. You have an entire world community of open source users downstream who could care less what is in the kernel, or where they get their (still free from Nvidia) drivers. You can make up a war, just like the Russians have. You can say your carpet bombing of innocent applications is just as justified as what the Russians are doing in Ukraine. But that doesn't make it true.
                    Last edited by CSDofNM; 05 April 2022, 03:08 PM.

                    Comment


                    • Originally posted by CSDofNM View Post

                      The proper way to do it is not to break existing interfaces or drivers for legacy hardware. The proper way to do it is not to break existing interfaces or drivers for legacy software. There is software above that relies on that interface, and it isn't yours to break.
                      It absolutely is developers' to break. Contracts work when both parties get benefited. Gifts, on the other hand, are a one way street. You fix your drivers or stay at an old version. Besides, "stable interfaces" mean exactly that, not breaking existing interfaces. But it's extra work somebody needs to do, and people's time is not yours to dispose of.

                      Originally posted by CSDofNM View Post

                      You fork it. You broke it, you fork it. In this case you are either Mommy or Daddy
                      Nope. You want it working, you put the work. When you don't have to, be grateful. But when people don't want to, you want it working, you put the work.

                      Originally posted by CSDofNM View Post

                      and it is the users who are getting screwed. If you had a decent Computer Science background, they would have taught you the Principles of Object Oriented Programming, which came from a language called Smalltalk.
                      I'm aware of the "Princilpes of Object Oriented Programming", but it's not my religion and I live in the real world, where software moves, where maintaining it takes work, where you don't get a free meal. Users "get screwed" when they give something without receiving what the other part promised. And that's simply not the case, you're not a paying customer.

                      Originally posted by CSDofNM View Post

                      If you are saying the kernel/graphics interface is a bad design, I have to agree with you. If you say the levels of abstraction aren't high enough to support multiple types of graphics interfaces, I have to agree with you. Linux (in this case Fedora) is either Mommy or Daddy, and Nvidia is the other one. We, the children, are busy using the fruits of Mommy and Daddy's labor and we have neither the time, money, nor inclination to fix your lack of vision and animosity to the other party.
                      Boo hoo. The children are damned adults and if they don't have the time or inclination to fix stuff should pay for stuff to be fixed. That's what entitlement is about. "Ohhh I don't want to actually do anything but everybody should do things as they suit me". Maybe Linux and nvidia don't have the time, money or inclination to make your wishes come true. They're not mommy and daddy, you're not a child, and they're not responsible for your satisfaction as long as they keep what their sales pitch promised. In the case of Linux, it's exactly nothing. In the case of nvidia, it's a graphics card with a driver with some time of maintenance effort.
                      Regarding "bad design", a kernel is not your typical business logic that can easily keep stable interfaces and keep a fast pace of improvement and respond to changing demands. So stable interfaces were defined to not be a priority by those sending patches and paying for development.

                      Originally posted by CSDofNM View Post

                      BTW, I have a MS in Computer Science and Engineering and worked on Unix boxes before Linux was even born.
                      Who cares? If you need to post your credentials your argument is probably weak :shrug:

                      Originally posted by CSDofNM View Post
                      If you want to experment, do it in something like OpenSuse's Tumbleweed, and don't inflict it on the rest of us. But the day you force replaced my CUDA drivers with Nouveau in a DNF software update you sinned, and you need to come to terms with that. You have users. You have an entire world community of open source users downstream who could care less what is in the kernel, or where they get their (still free from Nvidia) drivers. You can make up a war, just like the Russians have. You can say your carpet bombing of innocent applications is just as justified as what the Russians are doing in Ukraine. But that doesn't make it true.
                      Nobody forces anything on you, that's where you're wrong. You want to get a free meal and such thing doesn't exist. Have a problem? Use an old version, fork, switch distros, do whatever you want. Build your own distro for all I care. Fedora devs are free to do what they want with their project and their time.
                      Asking and criticizing is OK to a degree. Demanding is totally wrong.
                      And trivializing war like you do is totally out of place.

                      Comment

                      Working...
                      X