Slashdot Mirror


NVIDIA's Andy Ritger On Linux Drivers

tykev writes "The Director of Unix Software at NVIDIA talks about Linux drivers, planned features, development cycle, and the open source Nouveau driver. (The interview is in English but all the comments are in Czech.) Quoting: 'NVIDIA's stance is to neither help nor hinder Nouveau. We are committed to supporting Linux through a) an open source 2d "nv" X driver which NVIDIA engineers actively maintain and improve, and b) our fully featured proprietary Linux driver which leverages common code with the other platforms that NVIDIA supports.'"

9 of 269 comments (clear)

  1. Re:Nouveau by babbling · · Score: 5, Insightful

    Nouveau probably won't ever be "complete" since there's always new cards to add support for and that sort of thing. If Nouveau gets good enough and is the default driver they will probably start contributing to it. They would save money on driver development, and continuing their proprietary driver would be a bit pointless since everyone would be using Nouveau.

    Until Nouveau gets good, I imagine they'll keep pushing the proprietary driver, though.

  2. Considering by Z00L00K · · Score: 5, Insightful
    the fact that the "nv" driver is buggy there is a lot of room left to improve on here.

    I experienced a problem with the "nv" driver on my computer with dual 7600GS cards and three displays. It wasn't possible to run all three displays at all with the "nv" driver, but the binary driver from nvidia works. The part that I'm not satisfied with is the need for an alternate driver.

    I haven't tried the Nouveau driver, but somebody else may. As I see it, Nvidia should release all information needed to allow others to write suitable drivers. (should apply to all HW manufacturers).

    --
    If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
  3. Re:A question by Whiney+Mac+Fanboy · · Score: 5, Insightful

    seems to me demanding that a company release their drivers in open source

    I read & re-read the parent comment, but couldn't see them demanding anything. WTF are you talking about?

    I mean, to the exclusion of actually using the software which could make their computer experience better.

    Some people have quite pragmatic reasons for preferring open software - particularly kernel software. Driver crashes were one of the things that made windows (particularly in the late 90's / early 2000s) such a mess.

    If you're making a hardware purchasing decision and want to run linux, of course you should try to buy from a company that supports FOSS.

    Surely we haven't got that many mini-RMSes?

    Finish the troll with a flourish. Nice work.

    --
    There are shills on slashdot. Apparently, I'm one of them.
  4. Re:A question by Aladrin · · Score: 4, Insightful

    Because it works! There's a saying, 'The squeaky wheel gets the grease.' If Linux users are very vocal about how they expect companies to do business, those companies -will- feel pressured to move more towards that way of doing business.

    It's the exact same reason that lobbying a congressman (without money) works. Once they hear it enough, they know it's important to the people that are most important to them: Their customers. (Or voters, as the case may be.)

    When people don't tell a company how to behave, you end up with companies like Walmart. Walmart used to be about the country, the consumer, and the profit, in that order. They gave up on the whole 'made in the USA' thing quite a while back. They gave up on customer service even longer ago. They only care about the profit now. They do it by having cheap goods and cheap wages. For people who only care that the goods are cheap, it's a great store. For the rest of us it sucks.

    nVidia has the choice of only catering to the mainstream Windows-based gamers, or also adding on a rabidly-loyal group of fanatics that are willing to work for free to make their business better. All nVidia has to do is LISTEN TO THEM and release their drivers open-source.

    Yes, there was a great amount of R&D involved in their drivers, but most of the stuff that makes their drivers 'great' on windows just doesn't apply to Linux, like that massive control panel. That doesn't even exist in the binary Linux driver.

    The code doesn't have to be GPL or any such. They could release it under their own license that specifically states the code can only be used for a driver for nVidia cards. The only thing necessary is the ability to improve the code at will. (I think they would find it advantageous to go to GPL later, but that's another discussion.)

    nVidia really has little reason not to open their source code to the public, unless they are doing something illegal or extremely unethical in their drivers. (Cheating at benchmarks, etc.)

    --
    "If you make people think they're thinking, they'll love you; But if you really make them think, they'll hate you." - DM
  5. Re:A question by mrcgran · · Score: 5, Interesting

    One big problem in not releasing the source code is that they actually are not making our computer experience better: their drivers have bugs, and we will be locked to whatever features and bugs THEY want to make available to us -- so, basically we become hostages of their will, they can do whatever they want, because whithout THEIR driver, your nvidia card isn't worth its weight.

    In the future, when new versions and extensions of OpenGL are released, we won't have any guarantee that they will properly update the drivers. So, you'll probably won't be able to use their proprietary drivers in 5 years for new applications (shining new wobbling effects), because these apps will need new extensions, but the driver for your specific nvidia card is arbitrarily not supported anymore by them (they want to force you to throw the old one away). Too bad for you.

    On the other side, if we have access to the source code (or at least the hardware specification), we don't even need nvidia's help: we can do the updates/bug-squatting ourselves, much better than a small team at nvidia. This is something that these companies don't get: the whole world is willing to write their drivers for free and maintain them to the end of times, but they refuse the consumer this right (or maybe they get, they just want you to throw away your old card and buy a new one). We don't want a huge amount of work from them, quite the contrary! It's *way* cheaper for them to release an open-source driver: it costs nada/zero, we can build one with the bare bones of a reasonable hardware specification, a little pdf file -- how much does it cost to post a pdf file on the Internet?

    There's no RMS ideology in that, only the absolute minimum someone would expect in terms of support for something you bought. Nowadays, the choice is clear: go Intel X3000/X3500, which supports open source and you can be sure will always be up-to-date. Ignore nvidia and ati, until at least one day (I hope so) nouveau arrives.

  6. Linux-certified hardware by athloi · · Score: 4, Interesting

    Windows certifies hardware, and Apple makes it clear what they support. Could it be useful for an agency of Linux developers to certify hardware that is open (standards released so drivers can be written) and well-designed enough to support the rigors of a "UNIX-like" OS?

    I do not know the answer to this one. My inner four-year-old anarchist is leery of certification in anything, but even something as simple as a list of supported hardware like BSD does, with the requirement that its standards be open so drivers can be developed, might help companies market to Linux users (1 in 10 users, by my estimate) and help Linux users get their market share behind a few quality products so they can stand up and be counted.

    Just an idea. Feel free to mod -1, this guy's an idealistic moron.

  7. Re:NDAs and Patents Suck Life. by mikael · · Score: 5, Informative

    What you say is confusing and has the smell of a well crafted lie. Can you set me straight so I can understand why Nvidia is unable to do like Intel and fully co-operate with the free software community?

    Have a look at NVidia's OpenGL specifications web-page

    Every extensions comes with an IP Status field. For example ARB_color_buffer_float has the following:

    IP Status

            SGI owns US Patent #6,650,327, issued November 18, 2003. SGI
            believes this patent contains necessary IP for graphics systems
            implementing floating point (FP) rasterization and FP framebuffer
            capabilities.

            SGI will not grant the ARB royalty-free use of this IP for use in
            OpenGL, but will discuss licensing on RAND terms, on an individual
            basis with companies wishing to use this IP in the context of
            conformant OpenGL implementations. SGI does not plan to make any
            special exemption for open source implementations.

            Contact Doug Crisman at SGI Legal for the complete IP disclosure.

    --
    Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
  8. Re:Nouveau by MoxFulder · · Score: 4, Informative

    There is no way that an open-source GPU driver can ever achieve same quality (in terms of performance and compatibility at a given timeframe) as an actively developed proprietary driver. GPUs are very complex devices, and drivers make a huge difference on performance. In order to make a fast driver you really need to know how the target GPU works on a very low level.

    This is the same tired, fallacious argument NVidia has been trotting out for years: "Developing GPU drivers is much too complex. Why don't you Linux kids go run along and play with your toys, and let us write the GPU drivers?"

    Well, it's just wrong. I have used many reverse-engineered drivers for complex pieces of hardware, and nearly all of them work as well as or better than the original vendor's drivers. Most recently, I had the pleasure of trying out the Broadcom 43xx wireless driver, which was painstakingly reverse engineered in the face of an INCREDIBLY recalcitrant vendor that won't release a shred of documentation on their devices to open source developers, even under NDA! And, surprise, the card works better under Linux with the reverse-engineered driver than it does with the Windows driver, which seems to lose the signal quite often. The bcm43xx developer Michael Buesch has even got some evidence that certain parts of their code are implemented more efficiently and elegantly than the original driver.

    Naturally, NVidia will not disclose this low level stuff about their GPUs to outsiders.

    Why is this "natural"? Intel releases documentation on the low level stuff about their GPUs, Realtek goes out of its way to help the Linux community with Ethernet and wireless IC documentation, and Linksys has released the complete code for its Linux-based routers. If a business is based on continual innovation--rather than maintaining an entrenched monopoly--it is entirely possible to be successful and open at the same time.

    You can compare GPU drivers to compilers. There is no way that open-source compiler (GCC) will ever produce as good code for new Intel's CPUs as Intel's own compiler (ICC) as long as ICC is actively developed.

    Again, this is only true if Intel holds back some of the documentation necessary to make a good compiler. If they publish complete instruction set information, with accurate timing, cache, and pipeline data (which they have done, for the most part), then making a better compiler is "merely" a question of developer resources and talent.

    I suspect that, to the extent that GCC code doesn't run quite as fast as ICC, it's because GCC has higher priorities for its code base, especially ensuring support for an incredible breadth of platforms. GCC has essentially become the reference compiler for a lot of embedded development in particular. Even companies like Broadcom that won't lift a finger to help open source out rely on GCC to build the firmware for their own devices.
  9. Re:Nouveau by jdschulteis · · Score: 5, Funny

    No open source is ever "complete", for good and for worse :) Even a dead open source project is only "temporary dead"! (whatever that means...) It just so happens that your open source project here is only MOSTLY dead. There's a big difference between mostly dead and all dead. Mostly dead is slightly alive.