Slashdot Mirror


NVIDIA Engineers On The Realities Of Linux Drivers

linuxquestions writes "LinuxQuestions.org recently interviewed members of the NVIDIA Linux team. The interview covers the internal use of Linux at NVIDIA, the current demand NVIDIA is seeing for Linux drivers, the biggest perceived obstacle in Linux becoming a mainstream gaming platform and the decision to maintain both an Open Source and closed source Linux driver."

21 comments

  1. cool by Lith+Maethor · · Score: 0, Redundant

    oh yeah, first post and since more games come penguin supported,the future looks bright

  2. Unified Driver Infrastructure by crow · · Score: 5, Interesting

    Much of the interview is the standard optimistic corporate smiley-face stuff you would expect. What I found interesting is the reference to a unified driver infrastructure. Apparently the bulk of their driver code is identical across platforms, so mostly what they need to maintain for Linux is a compatibility layer.

    This is what they cite in not open sourcing the driver--too much of the unified code is licensed by them from third parties. (Now why don't they ask their sources about a dual GPL/proprietary license?)

    The followup question that this raises is: Given that the base driver code is the same across platforms, are there any particular aspects of X or Linux that reduce performance?

    1. Re:Unified Driver Infrastructure by Stevyn · · Score: 2, Interesting

      "Now why don't they ask their sources about a dual GPL/proprietary license?"

      You think this never crossed their mind?

    2. Re:Unified Driver Infrastructure by Espectr0 · · Score: 1

      If the driver is so unified, i wonder why mac users don't get the same linux-x86 nvidia drivers.

    3. Re:Unified Driver Infrastructure by abdulla · · Score: 1

      Because they're not x86? Or Linux. Mac's driver infrastructure is quite different from what I've read, and is infact embeded C++ based.

    4. Re:Unified Driver Infrastructure by Creepy+Crawler · · Score: 2, Informative

      WHat? Third party stuff? I call bullshit. Nvidia just didnt want their stuff to be GPL'ed.. Source..(cannot find original MS article)

      http://news.zdnet.co.uk/software/0,39020381,210103 7,00.htm

      (QUOTE) An OEM is required to sort through a potential legal morass of licensing issues around the GPL if it wants to protect its intellectual property rights. This creates extra costs from both a development and legal perspective. An example of this risk can be taken from nVidia. An nVidia programmer, in the course of developing a driver for one of its products, used a portion of code from a freely available video driver. The developer failed to realise the code was licensed under the GPL and would therefore require nVidia to release the source code for its entire driver. Because nVidia did not want to release the source code to its commercial software, the company incurred substantial costs to develop a new driver that did not contain the GPL code. (/QUOTE)

      --
    5. Re:Unified Driver Infrastructure by Gogo+Dodo · · Score: 2, Insightful
      You didn't read the article carefully. The nVidia programmer added GPL code to the driver, however doing so triggered the GPL clause where the entire driver needed to be released. Since third party licensed code is included in the driver that could not be released, the GPL code had to be removed.

      The only people that can truly comment on why the nVidia driver can or can not be released are internal to nVidia. So you have to take whatever nVidia says at face value. If they say there is licensed code in their drivers that they can't release, then you have to accept that, as you are in no position to say "Bullshit! There is no licensed code." You don't have access to the source, so you wouldn't know.

    6. Re:Unified Driver Infrastructure by 4of12 · · Score: 4, Interesting

      are there any particular aspects of X or Linux that reduce performance?

      Probably more so for X11, given its age.

      I'd be interested in having Someone That Really Knows tell me

      "Given the current trends in GPU speed, memory, system bus increases, 3D, scalable graphics and fonts, a clean sheet of paper, would it be possible to create a high-performance graphics subsystem that would last as long as X11 has?"

      "Could X11 be layered over the of the Y.NOT graphics system to speed its adoption?"
      --
      "Provided by the management for your protection."
    7. Re:Unified Driver Infrastructure by Creepy+Crawler · · Score: 1

      """Because nVidia did not want to release the source code to its commercial software"""

      "Did not want to" implies that they CAN. Can not would infer third party reasons why they cant.

      SO.. YOu just didnt read it carefully enough. I know what Im talking about.

      --
    8. Re:Unified Driver Infrastructure by cronius · · Score: 0

      Given that the base driver code is the same across platforms, are there any particular aspects of X or Linux that reduce performance?

      I'm not thinking this at all, NVIDIA has previously stated that creating drivers for Linux is easier than for Windows, so I'm thinking their Linux code is simply not up to par. Everyone knows drivers are everything when it comes to performance, they're simply not spending enough resources on the linux version.

      --
      Life is Reality
    9. Re:Unified Driver Infrastructure by Smallpond · · Score: 2, Insightful

      From the nVidia license agreement:

      "All title and copyrights in and to the SOFTWARE ... are owned by NVIDIA, or its suppliers."

      This might be standard legalese, but it certanly states that code isn't necessarily all nVidia's.

      By the way, "yum update" is not a good idea on Fedora Core 2 if you have the nVidia driver installed.

    10. Re:Unified Driver Infrastructure by boots@work · · Score: 1

      I suggest you go to Keith Packard's talk at the upcoming linux.conf.au: The (re)architecture of the X Window System, etc.

      The X.org people seem to be making good progress on updating X11 to suit modern hardware, while maintaining backward compatibility. If we threw out all our software every time the hardware changed we'd never get anywhere.

    11. Re:Unified Driver Infrastructure by c0p0n · · Score: 1

      I think that it was the driver itself. Recently, nvidia got out their new linux driver and, man, they got a perfomance boost so awesome that I cannot yet believe it. I am getting like 7fps more on Doom3 (from 21avg->28avg on demo1, 640x480), UT2004 goes way smooth and some IO hogging by the card was resolved (noticeable by clippy sound when playing games on certain versions of the kernel).

      In fact they're so awesome that I began to wonder if the previous driver releases were a bit fucked up. Still dunno, but the perfomance gain has been brutal.

      --

      Your head a splode
  3. Article text incase of slashdotting by irc.goatse.cx+troll · · Score: -1, Redundant

    LQ) Can you tell me a little bit about what went into the original decision to release an NVIDIA driver for Linux?
    NV) NVIDIA received several requests from our end users for giving the same quality Linux drivers that we provide on other platforms. In addition, our workstation customers were moving more and more of their development to Linux. NVIDIA recognized early on the demand for Linux drivers from the community as well as from significant commercial customers such as the film studios, national labs, geosciences, life sciences, etc and knew that this was to become a trend in professional graphics as customers started migrating from proprietary UNIX workstations to open platforms.

    LQ) Does NVIDIA use Linux for anything internally?
    NV) Yes, we use it for many things internally from developing drivers to designing and verifying our chip design. We use Linux substantially for software development, testing, as well as having the largest Linux data center for chip simulation in the industry!

    LQ) Can you tell us a little bit about the current demand you are seeing for Linux drivers? What has the recent trend been?
    NV) Demand has continues to grow for high quality Linux drivers with each new generation of GPUs. Around 15-20% of our workstation users ship with Linux. Some industries in the workstation business are 100% Linux. We have users using our Linux OpenGL drivers for things like designing automobiles, operating medical equipment, broadcasting television, and creating the latest special effects in movies.

    LQ) From a technical perspective, which drivers do your engineers like working on? Why?
    NV) I think its fair to say that our engineers like working on great GPUs. We have some folks on our team that like working on Linux, others on Windows, and others on Apple. Driver developers can be bigots too. We have too many developers to make such a generalization. Due to the unified driver infrastructure, we share a common driver base between multiple operating systems (like Linux, Windows, Linux64, Win64, MacOS, Solaris).

    LQ) At times, NVIDIA has taken a bit of flak for the Linux drivers not being Open Source. Can you tell us a little bit about why they aren't? Do you have any plans for a full open source driver, or is the long term plan to stick with one Open Source driver (nv) and one closed source driver (nvidia).
    NV) We have lots of IP in our supported closed source Linux driver some of which is licensed and cannot be open sourced. While we did our best to ensure that there was open source driver (nv) for our chips available, we got lots of feedback from our professional partners as well as end users that wanted a driver that had the same quality and performance characteristics of our supported drivers for platforms such as Windows and Apple. By taking on the commitment to providing great Linux drivers for our GPUs, networking adapters/storage/audio devices we have given our end users the same Compatibility, Reliability & Stability that NVIDIA Software has become known for. We will maintain the strategy of providing both. Due to the UDA architecture, there is too much IP in the driver source to make open sourcing the driver a practicality.

    LQ) Is there anything the Linux community could do to help enable the release of an Open Source driver?
    NV) Not at this time.

    LQ) Has NVIDIA considered putting a "Compatible with Linux" type logo (similar to the Windows logo) on any of its products?
    NV) We do use the Linux (Penguin) logo when appropriate on our software etc, but this is more of a question for our OEM's and channel partners who place these types of stickers on their boxes.

    LQ) What do you see as the biggest obstacle for Linux becoming a mainstream gaming platform?
    NV) Having better game developer tools for Linux, more installed base of consumer users for Linux and the horrible ATI drivers for people that were stupid enough to buy radeons.

    LQ) Any comment on the recent X.org fork? Do you anticipate it impacting NVIDIA in any way?

    --
    Pain lasts, kid. Its how you know you're alive. Sometimes I think this growing up thing is just pain management-TheMaxx
    1. Re:Article text incase of slashdotting by Anonymous Coward · · Score: 0

      Who modded this up? Look at the user who posted it, then think about how unlikely LQ is to get slashdotted. Don't feed the trolls karma.

  4. already /.ed :( by Anonymous Coward · · Score: 0

    new record?

  5. I ALREADY FIRST POST AT +2, YOU WANNABE AC. by irc.goatse.cx+troll · · Score: -1, Offtopic


    --
    Pain lasts, kid. Its how you know you're alive. Sometimes I think this growing up thing is just pain management-TheMaxx
  6. The obvious follow-up question by ArmorFiend · · Score: 1

    To me the obvious follow up question is: Okay, so you can't free the driver software. So be it. Can you at least open up the hardware specs, so that open-source people like the DRI boys can have a shot to compete with you?

    1. Re:The obvious follow-up question by Anonymous Coward · · Score: 0

      A couple follow up questions, including this one, have been posted.

  7. You'll get the same idiot reply out of all of them by leonbrooks · · Score: 2, Interesting
    They'll claim that their competitors will get a leg-up from it. My answer?
    "Said competitors have the labs, people and equipment to do stuff like electron microscopy if they feel the urge, and probably know more about how your product actually works than you do. Competitors can't steal ideas that are patented anyway. Not that unstable drivers are such a patentable idea. Your suppliers would probably be delighted if a competitor started licencing their technology, so they also have positive motivation to publish, which conflicts with yours. The only people you're really hurting are your customers, and consequently your own sales."
    They'll ignore that too, but the first one to go truly open (XGI did that, but only with their 2D stuff, ATI did too but only with limited amounts of their older stuff) will see people doing useful tricks and performance enhancements with their cards that they didn't think was possible. Once that becomes common knowledge, the people with the wallets will follow too. By that time, the damage will be done and the other manufacturers will be chasing tail-lights.
    --
    Got time? Spend some of it coding or testing
  8. Re:You'll get the same idiot reply out of all of t by Anonymous Coward · · Score: 0

    I would be suprised if the different manufacturers cards are so similar that they could copy parts of the design and splice it into their cards.

    Even though they generally do the same thing they must do it in ways that aren't 100% compatible, otherwise each card wouldn't have different drivers.

    The cards being designed today will be more advanced than those out now, so I don't see how opening the details would give the competitors much useful information, they would still have a lot of development to catch up - even if they completely copied one of today's cards.

    Hopefully the opensource graphics card mentioned on Kerneltrap will see the light of day and prove that the arguments given are just excuses.