Slashdot Mirror


Open Source 3D Nvidia Driver Is Ready For Fedora 13

An anonymous reader writes "Red Hat has already been using the Nouveau X.Org driver in Fedora for providing display and 2D support, but with their next release (Fedora 13) they will be making open-source 3D acceleration readily available to those using Nvidia graphics cards. Red Hat has packaged the Nouveau 3D driver in Fedora 13 and what makes it interesting — besides being an open source 3D driver that was written by the community by reverse engineering Nvidia's closed-source driver — is that it's one of the first drivers to use the Gallium3D driver interface. Phoronix has tested out this Gallium3D driver for Nvidia GPUs in a Fedora 13 daily build and found it to run with a variety of OpenGL games, with benchmarks being included that compare it to Nvidia's official driver. The performance is far from being on the same stage as Nvidia's official Unix driver."

37 of 160 comments (clear)

  1. Benchmarks by revengebomber · · Score: 2, Insightful

    I know it's not a professional project, nor built on any real technical documentation, but I hardly think that an OS should be distributed with a driver that gets 32fps running Quake 3 on a Geforce 9. Can anyone tell me: better or worse performance than using a 3dfx card under Linux?

    --
    09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
    45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    1. Re:Benchmarks by Hatta · · Score: 4, Insightful

      If you have to choose between shipping an open source driver that only does 2d, and an open source driver that does 2d well and 3d poorly which would you choose? People still have the choice to install the official Nvidia driver that they've always had. So this is a good step forward. If it's enough for Compiz, and can do kernel mode setting (which Nvidia's driver won't do), then it'll please a lot of people.

      --
      Give me Classic Slashdot or give me death!
    2. Re:Benchmarks by serviscope_minor · · Score: 2, Informative

      So? The NVidia driver doesn't support xrandr. I know it's only a professional project, but I hardly thing that a company should distribute a driver which can't even change screen resolution using the standard tools.

      --
      SJW n. One who posts facts.
    3. Re:Benchmarks by Mad+Merlin · · Score: 3, Insightful

      Would you prefer 0 fps?

    4. Re:Benchmarks by Mad+Merlin · · Score: 2, Informative

      The binary blob supports xrandr, but not xrandr 1.2. xrandr 1.2 adds a lot of nifty things like on the fly display rotation, but I can't say I've ever actually used any of them.

    5. Re:Benchmarks by Anonymous Coward · · Score: 5, Insightful

      I am one of those people and I'm very pleased with nouveau. I don't run games on linux very much (outside of teg and dosbox) but I would like KMS and a bling desktop. I get both of these on my 8800gt with a free driver which is now just a kernel option away! Nouveau FTW!

    6. Re:Benchmarks by Anonymous Coward · · Score: 2, Insightful

      Microsoft doesn't ship with any drivers they created with GForce9 cards. Should they stop shipping today, or should they recall (like Toyota) all the software they made and dont' ship again till all the problems are fixed? Why do people assume that microsoft makes all the software they make (instead of getting all their software made by other people). We won't even start to talk about reverse engineering and an utter derth of technical documentation. You reverse something as technical as a whole family of accelerated graphics cards, and then we will poke at you and ask pointed 'what the hell is wrong with you' questions.

  2. Quick Questions by Monkeedude1212 · · Score: 4, Interesting

    Suppose I wanted to get into writing drivers -

    1) What are the things I'd need to know? Languages, Theory, Techniques

    2) What are the things I'd require? Testing environment, IDE if applicable, Development kits, etc

    3) Any Reading material? A beginners guide, reference material, that kind of stuff.

    1. Re:Quick Questions by mrphoton · · Score: 3, Informative

      clearly your post was a joke, but a serious answer to your question would be Linux Device Drivers: http://lwn.net/Kernel/LDD3/ Understanding the linux kernel: http://oreilly.com/catalog/9780596000028 I found both books fantastic and well worth a read, they will take you from knowing C to developing drivers for the linux kernel.

    2. Re:Quick Questions by PolygamousRanchKid+ · · Score: 5, Funny

      Copy the Ethernet driver code, and use it as a base.

      Seriously, that's what the folks told me before I wrote a device driver for an ATM network adapter.

      Don't even look at the Token Ring driver code, I was told.

      I could imagine the same holds for writing graphics card device drivers.

      That glass of Sake, and a talk from your manager about the Divine Wind will be all that you need to set off about your task.

      Oh, and the headband with the red dot.

      --
      Schroedinger's Brexit: The UK is both in and out of the EU at the same time!
    3. Re:Quick Questions by DeadCatX2 · · Score: 2, Funny

      Copy the Ethernet driver code, and use it as a base.

      Nonono. You're supposed to use the Toaster sample as a base.

      --
      :(){ :|:& };:
    4. Re:Quick Questions by arielCo · · Score: 2, Informative

      clearly your post was a joke

      Not necessarily. Ever said "when I grow up I wanna..." without a clue as to what it would take? You still have that option as a grownup, with perhaps a better chance of making it since you make your own decisions :)

      --
      This post contains no rudeness or derision of any kind. All arguments are friendly. Terms and exclusions may apply.
    5. Re:Quick Questions by MostAwesomeDude · · Score: 4, Interesting

      1) C. You should also be familiar with compiler theory, data structures, bus layouts, and all the various arcane weirdness around arches, especially x86.

      2) Nothing special. Most of the programs we use for testing are games, since they have the best stress tests and because we target real use-cases. The exception is piglit, which is a conformance test.

      3) The code. AMD and Intel have released some docs, but frankly, you will need to read the code.

      Good luck. This is tough stuff.

      --
      ~ C.
  3. Re:How come? by Anonymous Coward · · Score: 5, Informative

    Step 1: Figure things out.
    Step 2: Make them work (correctly)
    Step 3: Make them work (fast)

    its all a part of the process and step 2 is a HUGE achievement especially when most of the information about the chips was reverse engineered.

  4. Re:How come? by h4rr4r · · Score: 4, Informative

    Because NVIDIA has access to the docs and these guys don't? It's hard work to reverse engineer a video card and build a driver.

  5. A better question by ElusiveJoe · · Score: 2, Interesting

    Is it better than using a software 3D stack? Because I have a feeling that nothing is really accelerated.

  6. Factually incorrect troll is factually WRONG. by SanityInAnarchy · · Score: 4, Insightful

    Just for fun:

    Take a look on "Configure Konqueror" option in Konqueror-the default browser for KDE. All those options and not a single NoScript or AdBlock, the shit that counts.

    Konqueror comes, out of the box, with an adblocker which is compatible with (and defaults to) AdBlockPlus' list.

    The rest of it is a matter of mostly uninformed opinion, like this:

    As most of you know KDE uses both Konqueror and Dolphin for file navigation.

    Konqueror is a web browser, it just happens to support Dolphin as a plugin. So nope, no change here. It's other browsers, like Firefox, which insist on making local file browsing look like an autogenerated Apache index.

    In Konqueror if you save password for some website, this 'wallet' password pops up and in order to save the password you have to type another password in the wallet.

    Yes, once per session. Gnome has an equivalent wallet, and you're not required to have a password for it. It's just helpful if you do -- it's this neat little feature called "encryption". Hell, even Firefox supports a Master Password.

    Not really worth going into detail about how wrong you are, since you're already pretty much a troll, but really, you can do better. There are enough things to dislike about KDE that you could effectively troll it without spreading things which are actually wrong.

    --
    Don't thank God, thank a doctor!
    1. Re:Factually incorrect troll is factually WRONG. by GigaplexNZ · · Score: 2, Informative

      As most of you know KDE uses both Konqueror and Dolphin for file navigation.

      Konqueror is a web browser, it just happens to support Dolphin as a plugin. So nope, no change here. It's other browsers, like Firefox, which insist on making local file browsing look like an autogenerated Apache index.

      To be fair to the troll, this wasn't always the case. Konqueror was a web browser and file browser, then Dolphin came along later causing some overlap. This overlap has now been mostly resolved.

  7. Re:How come? by marcansoft · · Score: 5, Insightful

    Because they'd love to be able to work on improving the existing wheel instead, but, unfortunately, they can't.

  8. Re:How come? by h4rr4r · · Score: 4, Insightful

    Because the existing wheel is only a temporary wheel that will be taken away the minute NVIDIA wants to sell new cards.

    I bet you already knew that though.

  9. I think he'd prefer the binary nVidia driver by Sycraft-fu · · Score: 4, Interesting

    Remember that not everyone has an "OSS at any cost!" mentality. Some people use Linux for pragmatic reasons, not for ideological ones.

    1. Re:I think he'd prefer the binary nVidia driver by X0563511 · · Score: 5, Insightful

      Then they are welcome to continue using whatever they want. But fuck anyone who thinks they have the right to determine if someone's work is a waste of time or not.

      --
      For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
    2. Re:I think he'd prefer the binary nVidia driver by MostAwesomeDude · · Score: 3, Funny

      Bush is definitely a waste of time. One of the worst bands I've ever heard.

      --
      ~ C.
    3. Re:I think he'd prefer the binary nVidia driver by Just+Some+Guy · · Score: 2, Interesting

      Remember that not everyone has an "OSS at any cost!" mentality. Some people use Linux for pragmatic reasons, not for ideological ones.

      You're exactly correct. I won't use closed software unless absolutely unavoidable because it's the least pragmatic solution. When you don't "own" the code running on your system, you're at the mercy of someone else.

      I had a FreeBSD desktop with a GeForce 4 AGP card. Just before the buffer overflow vulnerability was found that made it possible to crack a display using the closed NVidia drivers just by displaying an appropriately-formatted image, NVidia dropped support for the GeForce 4 series from their new drivers. They also announced that the vulnerability was fixed in the new drivers but that the old ones were EOLed and unsupported. The old drivers didn't support the currently released version of FreeBSD that I was using, and the new ones didn't support my graphics card. Furthermore, I couldn't find a new AGP card that would work on the motherboard I had at the time, and the rest of my hardware was a couple of years behind the then-modern stuff on Newegg.

      In my opinion, having to choose between living with a known vulnerability that actually affects you and paying to replace your entire system, from graphics card to motherboard to CPU to RAM, is pretty freaking impractical. I would've been happy to have the option of switching to a working FOSS driver, even if the performance was a third of the closed driver's.

      --
      Dewey, what part of this looks like authorities should be involved?
  10. Re:What? by Paradigm_Complex · · Score: 5, Insightful

    Do some people really use markedly inferior software simply because it is open source, even if a better competitor is available at no cost?

    Nvidia's driver may not necessarily be "better," depending on how you define it. Nvidia's driver is clearly better in terms of 3D acceleration, but Nouveau wins in many other areas (largely as an extension of it's F/OSS'ness). There's much less legal worry when distributing it, it doesn't have to be recompiled against the kernel updates, it supports KMS (which is more important than 3D acceleration with many, such as myself), it can be fix/changed/updated without dependence on Nvidia, it's also more likely to have continued support on older hardware - the list gets pretty long. Maybe these things don't matter to you as much as 3D acceleration, but for many they do.

    I use linux because it works perfectly well for me.

    F/OSS isn't just blind idealism - there's practical benefits which result. I expect at least part of the reason why Linux "works perfectly well" for you is a result of the fact it's F/OSS. This carries over to the video drivers, too.

    --
    "A witty saying proves nothing." - Voltaire
  11. Re:mod 0p by X0563511 · · Score: 2, Funny

    Friends don't let friends release bots drunk.

    --
    For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
  12. Re:How come? by codepunk · · Score: 5, Insightful

    So I don't have to waste my time going and hunting down nvidia drivers when I install a new machine....that alone is a good enough reason.

    --


    Got Code?
  13. Xbox support? by drinkypoo · · Score: 3, Funny

    Does Nouveau support the graphics chip in the Xbox yet? I'd really love to be able to run XBMC on Linux on Xbox rather than running it on the Xbox OS on the Xbox.

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  14. Re:How come? by nxtw · · Score: 2, Insightful

    you have no guarantee that nvidia blob will support current cards in 2015

    Not a problem on operating system with stable driver ABIs.

  15. Re:What? by drinkypoo · · Score: 5, Funny

    Excuse me for not being an expert on drivers for hardware I don't own,

    You're excused.

    but does this mean the new driver is better than the official driver, or not nearly as good?

    It's not new, it's been around for a while. But it's not nearly as good in most respects; no VDPAU, poor performance.

    If it is not "on the same stage," meaning not nearly as good, why is Red Hat using it,

    Because it is freely redistributable.

    and why is this news?

    Because it just happened.

    Do some people really use markedly inferior software simply because it is open source, even if a better competitor is available at no cost?

    No, some people use markedly inferior software simply because it is Free Software, which is totally and completely different (The OSI's attempts to convince you to the contrary notwithstanding.)

    This seems silly to me.

    Nobody cares.

    I use linux because it works perfectly well for me.

    Me too. But nobody cares why either of us use Linux. Well, that's not true. I've put some people on to it. Nobody cares why you use Linux.

    If it were a pile of crap in comparison to Windows, I'd use Windows

    In many respects, it is, for example if you are a gamer.

    even though I have a casual dislike for Microsoft.

    So you're wearing slacks?

    (please no Macintosh osx comments here, I don't care)

    Nobody cares if you care, didn't we cover that?

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  16. Re:How come? by rahvin112 · · Score: 2, Insightful

    And what happens if tomorrow Nvidia decides it doesn't want to provide those drivers any more and removes all but the latest cards drivers? You can't distribute their binary drivers without their permission (and they don't give it btw). The problem with not using FOSS software is that if the commercial vendor decides to stop selling it there is nothing you can do about it other than offer them lots of money and hope they change their mind. Take windows XP, the day Microsoft decides to stop selling it you won't be able to purchase a new version of it (once existing stock already purchased is exhausted) and then your only option is to buy the newest version with X bad feature.

    There is nothing at all stupid and irrational about being prepared for the inevitable with commercial software. Although there are likely very few people still using 3dfx cards you can't get drivers for them anymore. Companies go out of business, change management or simply decide it's in their interest to stop providing legacy drivers all the time. The past is no predictor of the future, as the first rule of stock investing applies almost universally and is "Past performance is not an indicator of future performance".

    In fact assuming that nothing will ever change is actually the irrational, stupid and childish behavior.

  17. Awesome by quantaman · · Score: 2, Interesting

    I'm actually pretty impressed, I didn't expect they'd be this successful getting a development community and a working driver going. I'm curious as to the stability, I noticed there was one issue with the fonts in the review. Personally stability would be the big selling point for me, I've had issues with the proprietary drivers in the past and it would be great if there was a highly dependable open source driver I could count on.

    On a related topic does anyone know the state of the open source ATI driver? I saw a phoronix article claiming it was more popular than the proprietary one but other than that I don't know what it has for performance or features. It would be interesting to compare since the ATI made the specs available.

    --
    I stole this Sig
  18. Re:How come? by GigaplexNZ · · Score: 4, Informative

    actually you can get copies of every MS product right back to DOS 3 via technet.

    Technet is not a retail channel for typical consumers to get a single product. Also, the older products aren't supported and generally don't work on the new hardware around today.

    because some FOSS project is FAR FAR more likely to stop producing updates and go offline (because they got a life/job/girlfriend) then a company like MS or nvidia which has actual funding

    NVIDIA has already shown they are willing to drop driver support for their products when they aren't interested anymore. And it's not just about the risk of if they will stop support, you also need to factor in the damage done - we don't have the option to fix the proprietary stuff ourselves even if we wanted to, but we could fix the abandoned FOSS stuff if we considered it worthwhile.

    so you'll need use a better example

    So you'll need [to] use a better excuse.

  19. Re:How come? by walshy007 · · Score: 2, Insightful

    as a fedora user since the redhat days, I can honestly say one of the only retarded things they've done is replace pidgin with empathy, empathy is nowhere near as mature and feature complete and it was only even suggested because of the lack of webcam in pidgin which has now been resolved anyway.

  20. Re:How come? by rahvin112 · · Score: 4, Insightful

    actually you can get copies of every MS product right back to DOS 3 via technet.

    Technet subscriptions allow for testing not use. Personal or commercial use (outside as I said testing) of MSDOS from technet is a violation of your license agreement with Microsoft. Not only that but you obviously don't have a technet subscription (I do) as you would know that MSDOS 6.22 is the only DOS available via technet, in addition windows 95 and 98 aren't available via technet. Regardless of being able to acquire it you can't legally run it unless you can purchase a retail used copy. Those sources rapidly dwindle. In fact many commercial software packages have completely disappeared and software drivers for newer versions of software like windows are frequently not available. HP and Creative are prime examples of companies that simply don't provide drivers and force you to purchase newer hardware. It's not unreasonable to assume that at some future date Nvidia may decide to do the same, in fact something as simple as a change in management could cause it.

    your whole premise is a big fail, because some FOSS project is FAR FAR more likely to stop producing updates and go offline (because they got a life/job/girlfriend) then a company like MS or nvidia which has actual funding. I'll say it again, your assumption is stupid and irrational and you've got nothing to back it up.

    Your belief and assertion that the Linux kernel (after all the entire article is about FOSS drivers for Nvidia cards for the Linux Kernel) is more likely to be abandoned than Nvidia's production of drivers for Legacy hardware is laughably stupid. Such a statement is the height of folly and irrationality and frankly makes you look like an idiot in need of professional help. The Linux Kernel is supported by far more companies with far more resources (apparently the basis of your argument) and in fact was developed even without those resources. It's use in everything from MP3 players to televisions to large mainframe computers and it's nearly 25% market share in all computers guarantees it will survive far longer than Nvidia ever will. Working to develop FOSS drivers for nVidia hardware so future Linux kernels can use such hardware is only logical.

    There is no doubt in my mind that at some point in the future nvidia will abandon production of drivers for legacy hardware. It will likely come in a few short years as then current hardware begins to differ so substantially from the legacy hardware as to make driver production excessively costly. Up until the Fermi architecture, even 10 year old hardware still functioned substantially similar to legacy hardware. That advantage will fade very rapidly as the processors nvidia produces move towards general use and likely in a few short years they will abandon legacy hardware as driver production costs escalate. To do otherwise would likely elicit a shareholder lawsuit.

    I don't expect any of this to convince you of course, in fact I expect a reply with more silly childish aggressiveness probably with some name calling. With that in mind lets deal with the only premise here is your original assertion and give you an avenue to everyone you know anything at all. You premise was that someone is irrational and stupid to believe that Nvidia could some day stop providing drivers. Rather than asking me to prove a negative why don't you simply present evidence that Nvidia drivers will always be available thereby proving your statement.

    So have at it, prove that Nvidia will always provide drivers for every product they have ever made. While your at, show me where I can get (full) 3dfx drivers for windows 7, after all Nvidia owns 3dfx and 3dfx's former products are Nvidias products now. After you prove Nvidia will always produce legacy hardware drivers for the rest of eternity I will happily admit you are right and that there is nothing at all to worry about. Don't worry, I'm not holding my breath. Cheers!

  21. Re:How come? by V!NCENT · · Score: 2, Informative

    A few reasons:

    1) nVidia's drivers are not implemented like standard X.org drivers: the binary drivers replace most stuff.

    2) Not optimised yet.

    3) It's a Gallium3D architecture driver, which is slower (for now) than classic Mesa.

    Gallium3D is a new driver architecture where the driver itself is splitted into three parts:

    1) The Kernel part. Providing memmorty management and kernels based modesetting instead of user mode setting. Every driver could use it so this part is not needed to be implemented into every driver out there to reduce the amount of coding work.

    2) The Gallium3D itself, like this nVidia driver that only needs to expose the bare metal functionality of the graphics card in the form of an API.

    3) Features (called State Trackers) like OpenGL, video acceleration, OpenCL, Direct3D, vector graphics acceleration, etc... This is also something that is the same for all Gallium3D driver supported graphics cards. This also doesn't need to be coded for every Gallium3D driven card like the nVidia cards. BTW these State Trackers are implemented on top of the 'standard' Gallium3D API that is surficed by this nVidia Nouveau driver...

    So the speed of the nVidia cards when driven by this Gallium3D driver is not solely Nouveau's 'fault'. If the Linux kernel and the State Trackers speed up then the nVidia cards will also leverage more FPS.

    These Gallium3D drivers are still young. The entire architecture has not long ago passed the state of rocket science. There is no real world experience and so the fact that the Nouveau developpers could reverse engineer, convert to Gallium3D and make a GeForce 9 run Quake 3 is a realy, realy big achievement.

    Things will speed up soon and the future of graphic card driver is bright for Linux!

    --
    Here be signatures
  22. Re:How come? by TheRaven64 · · Score: 2, Informative

    The binary nVidia drivers had a remotely exploitable kernel-privilege vulnerability that nVidia knew about for two years before fixing. When they did fix it, the fix was only for the latest revision of the driver, which didn't support all of the affected cards. Sure, you could run the old version, but then any web page you visited could inject arbitrary code into your kernel.

    Now, remind me, what was your point?

    --
    I am TheRaven on Soylent News