Slashdot videos: Now with more Slashdot!

View

Discuss

Share

We've improved Slashdot's video section; now you can view our video interviews, product close-ups and site visits with all the usual Slashdot options to comment, share, etc. No more walled garden! It's a work in progress -- we hope you'll check it out (Learn more about the recent updates).

aloniv writes "The reverse-engineered free/libre and open source driver for NVIDIA cards Nouveau has reached another milestone. 'The Nouveau driver in the current Linux 3.8 development branch has recently acquired everything that's necessary to support the 3D acceleration features of any GeForce graphics hardware. Together with a current version of libdrm and the Nouveau 3D driver in Mesa 3D 9.0, this allows Linux applications to use 3D acceleration even with the most recent GeForce graphics cards."

My happy is that now the kernel team can see how the free driver works, and I don't have to patch NVIDIA's driver (eg: with 3.8.0-rc2 --the current beta kernel-- and likewise 3.8.0-rc1 --last weeks beta kernel--) I had to patch the current NVIDIA-Linux-x86_64-310.19 drivers by changing a few lines so that it would build. It tanked on the newest kernels. NVIDIA does a good job with stable kernels (although they sometimes delay getting drivers out for recent stable kernels by a few days to a week or more),

Not really sure what you mean, but there is something weird in your comment. In particular that the driver being free is the only way we can focus on how well it works. The alternative is to sit back and pray someone else fixes it for you.

The alternative is to sit back and pray someone else fixes it for you.

Since most of us obviously don't have the knowledge or time to fix bugs in the video card drivers we use, we are still relying on other people to fix the bugs whether the driver is open source or not. So, sorry, your argument isn't very convincing.

Of course most of us don't have the knowledge, but if we're motivated enough, we can obtain that knowledge. Worst case, we go to someone who does have the knowledge and say "here's $X, fix it". With closed drivers, none of that is even possible. You need $X**N to get noticed by most closed sources.

That's not true in Nvidia's case. I've seen plenty of examples where you can submit a bug to nvidia and they will fix it, regardless of who you are, even if the bug appears only on linux. Many open source projects find and submit bugs to nvidia.

It's a choice between having a single source who can fix bugs, or a significantly larger pool of people who are capable of fixing those bugs. Employees of a single company are beholden to the business goals of that company, goals which are highly likely to differ from your needs as a user.

In short, if the source is open you have a much bigger chance that someone will be both willing and able to fix the bug thats causing you problems, or that you could entice someone to do so if it really matters to you.

It's a choice between having a single source who can fix bugs, or a significantly larger pool of people who are capable of fixing those bugs. Employees of a single company are beholden to the business goals of that company, goals which are highly likely to differ from your needs as a user.

Err, why are my needs likely to differ greatly with the goals of the company? If I buy a product from a company, I'd say the chances are good that my needs jive with their goals. Especially in this case: Nvidia exists to make money, they make money by creating a product people want, and drivers that aren't buggy make their products more valuable. I'd say Nvidia inherently has a much better motivation to fix bugs in their drivers than a couple hundred random people scattered throughout the world.

I'm not arguing that open source isn't good, only that it should be the least of our concerns if we're evaluating driver quality. If Nvidia's own drivers were open source, that would obviously be better than the current situation, but that doesn't mean that open source drivers are always better than proprietary drivers. Reality shows greater evidence than this theoretical discussion: I'm glad people are scratching their itches and working on Nouveau, but those drivers are simply not nearly as good as the proprietary drivers. Not yet. Not in any meaningful or non-religious way. Not by a long shot.

It's a choice between having a single source who can fix bugs, or a significantly larger pool of people who are capable of fixing those bugs. Employees of a single company are beholden to the business goals of that company, goals which are highly likely to differ from your needs as a user.

Err, why are my needs likely to differ greatly with the goals of the company? If I buy a product from a company, I'd say the chances are good that my needs jive with their goals.

Sweet!!! I am going to go download the beta drivers for OSX to try out the new bug fixes.. oh, wait, I can't do that...Nevermind -- when are the chipset fixes coming out for the 780i/790i chipsets that cause SATA to act all funny under Linux? Any day now.. oh, wait, never..Well hell, I am going to go grab the BeOS drivers for my NVidia card so I can hack on that OS... oh wait... no such drivers...

There's the "legacy driver" you can download which I use on a couple of old desktop machines in the office that have AGP Nvidia Geforce cards and one with a PCI card as well (actually newer than the AGP cards, but still getting on a bit). Changelogs show Nvidia still fix bugs in the "legacy driver" or make some sort of change every few months so it's not abandonware.I suspect you've bought new cards the same reason the rest of us do - more shiny features or dying fans

AMD is not any better (taking the quality of the binary into consideration, they are far worse); but before AMD drops support for a card they provide documentation to support the open source driver (they also used to provide developer hours, but I dunno if they still do).

AMD is not any better (taking the quality of the binary into consideration, they are far worse); but before AMD drops support for a card they provide documentation to support the open source driver (they also used to provide developer hours, but I dunno if they still do).

Get back to me when Athlon 64 L110 power management works right, or when R690M graphics work at all. It's been less than a year since I tried them last and both were still fucked, as in utterly unusable. I used to be a diehard consumer of AMD processors but I have only occasionally been stupid enough to buy an ATI GPU and every time it has been a bad decision even at a tiny fraction of retail price. Now that AMD no longer has a competitive processor it is more than likely that they will have no place in my

And who provides all of these magical OSS drivers? Because at the end of the day my nVidia HTPC plays 1080P movies no problem and my AMD rig does nothing. (Well, I put an nvidia card in it now).

Nvidia takes the money that I give them and makes drivers, binary, closed source, what ever. But drivers. AMD takes the money I give them. squanders it and then goes "Hey, hey, look. Here's all the documentation for everything! You may not have a working machine, but you got all the documentation!"

The legacy driver hasn't made the jump to the new xorg that Ubuntu included in their latest system. My FX5200 is no longer supported under Ubuntu without back-loading xorg. Pity, since the driver supports it fine. I've put off the switch to UBU 12.10 because of that. If the driver were open source, it could probably be easily adapted to work with the xorg update - but nVidia doesn't feel like it, so no dice.

If Nvidia's own drivers were open source, that would obviously be better than the current situation

I don't see that happening until software patents for the utterly obvious (or software patents in general) are disposed of. Some of the SGI people that were hassled by a patent troll ended up at Nvidia.

Graphics software patents are so tangled that John Carmack even had to pay royalties to a patent troll for an algorithm that is named after him.

Err, why are my needs likely to differ greatly with the goals of the company? If I buy a product from a company, I'd say the chances are good that my needs jive with their goals....

Sit back and let me tell you a little story.

A few years ago, I bought a laptop, the first one I'd ever owned that had a 64-bit CPU. I set it up as a dual-boot system, with 64-bit versions of Windows XP Pro and whatever OpenSUSE that was current at the time (10.2 or 10.3, I'm guessing).

There were no 64-bit Windows drivers for the wifi card. None.

There were no binaries of 64-bit Linux drivers. But, there was source. While I took C++ in school way back when, and have worked with other people's code quite a lot in the last few years, I am in no way an expert coder. Nonetheless, it took me only about 20 minutes to figure out that I needed to change 1 line in one header file, and then I was only a configure; make && make install away from having a working wifi card.

That model card is still being used in new laptops today, and there are still no 64-bit Windows drivers for it. Every one of those laptops is sold with 32-bit Windows, even if it has a 64-bt CPU.

Meanwhile, the particular card discussed above is being used at this very moment to transmit this post from that very same laptop (running a 64-bit OS) to you.

Once you buy a product from a company, their goal is then to sell you another product... They only care about your satisfaction with the existing product to the extent that you will buy their next product.

The end customer on the other hand might want to continue using the product for many years, long after several generations of replacement product have been released and doing so with software that may not have existed when the original product was released.

LOL. You sound like someone who's never come in contact with a real open source project before. Let me fix this for you: "Volunteers of a single open source project are beholden to the goals of the open source community, goals which are highly likely to differ from your needs as a user." That's far more realistic. Throw in some rudeness and you've got it. At least with the business you can complain to someone.

I disagree because I've actually done this before numerous times and it actually had the opposite effect every single time. What I mean by that is that the programmer in question lost interest in developing the program or library further and became more distant. One of the people I have donated to has finally began working on the library again after 2 years from never hearing from them.

decent fan control support is still in preparation and will initially only cover older GeForce chips......Furthermore, the driver can't switch between the various graphics chip and memory speeds with many current cards and often causes the graphics hardware to run at the slowest operating speed – the 3D performance that is achievable this way is usually sufficient for 3D composited desktops such as Unity or the Gnome shell but stays well behind what NVIDIA's proprietary driver can tickle out of the same graphics hardware.

nouveau1. since its free software it can co-exist with other drivers, and lets x auto detect. your only option on live cds2. feature complete 2d and 3d rendering3. rock solid stable. Its actually more stable than the proprietary driver

nvidia1. fast, perfomance comparable with other OSs2. closed source, doesn't play well with other drivers. But lets face it, if your playing video games, them too are closed source, and if your on a proper normal installed system, you don't need other video drivers.3. 100% feature complete, uses every last feature of the hardware as intented.4. supports OpenCL and vector programming.

There are many advantages of both the proprietary driver and noveau
nouveau
1. since its free software it can co-exist with other drivers, and lets x auto detect. your only option on live cds
2. feature complete 2d and 3d rendering
3. rock solid stable. Its actually more stable than the proprietary driver
nvidia
1. fast, perfomance comparable with other OSs
2. closed source, doesn't play well with other drivers. But lets face it, if your playing video games, them too are closed source, and if your on a proper normal installed system, you don't need other video drivers.
3. 100% feature complete, uses every last feature of the hardware as intented.
4. supports OpenCL and vector programming.

This is the first time I have ever seen a post like this that did not involve religion or name calling. Good Job! Hopefully this behaviour will spread...:)

thanks. I'm a big free software advocate personally, but I think extremism has weakened the "brand name".(like any other religion). I am Free software religious, but I am a moderate. Extremism in any religion, software or otherwise is terrible.while I don't like unfree software, its understood, that unfree drivers are mainly used by people who play unfree games. That said, the vast bulk of the software they use on linux IS free software, and having a bigger install base of free software is what will encoura

nouveau
1. since its free software it can co-exist with other drivers, and lets x auto detect. your only option on live cds
2. feature complete 2d and 3d rendering
3. rock solid stable. Its actually more stable than the proprietary driver

nvidia
1. fast, perfomance comparable with other OSs
2. closed source, doesn't play well with other drivers. But lets face it, if your playing video games, them too are closed source, and if your on a proper normal installed system, you don't need other video drivers.
3. 100% feature complete, uses every last feature of the hardware as intented.
4. supports OpenCL and vector programming.

I don't know. I have an i3 with HD2000 and a discrete GT520 for VDPAU. Watching 1080p television with the Nvidia card puts about 5% usage on the CPU. Taking it out the change is barely noticable. I can't rightly remember but it only jumped to 8-10%. Perhaps if I were re-encoding it would be worthwhile but it hardly seems worth the effort for my use case.

Tangentially, the problem with the Nvidia card is that it is the noisiest part of the system. Also the system will revert to the integrated GPU if I rebo

A comment on the 4. : Nouveau can do OpenCL [phoronix.com]. You may be thinking about CUDA maybe? The situation seems less clear on this one.

I am curious about what you mean by "feature complete 2d and 3d rendering", obviously the main problem with the nouveau driver is that all the features are not available yet. I feel I am missing a point.

IOW they are going to affect few people. The only people who need Nouveau to use their hardware are people with hardware now abandoned by the official Linux driver. (FWIW, Windows users can use the reference driver.) People buying newer cards probably mostly aren't using Nouveau, though I realize there will be some demand out there. People with the very latest cards are probably screwed either way though, the Linux driver tends to lag the Windows driver considerably. Don't forget to check the driver compati

I welcome anything, but all I really care about is Xbox support. I realize that there were many TV chips used with the Xbox and therefore support is nontrivial, but with 3d support the Xbox is still pretty cool and without it the Xbox is uselessly dated and power-hungry, a Raspberry Pi will kick its ass for most purposes and probably draws less power than its HDD.

XBox support with linux? Are you going to run linux on your xbox? Does it use NVidia??

The original Xbox is a pretty boring PC with, basically, an alternate BIOS. It has an NV2A graphics adapter which is unique to the Xbox but which is between NV20 and NV25 in terms of capabilities and hardware. Nouveau already has some support for it, or at least it has in the past, but comprehensive support has always awaited a motivated developer with access to many different revisions of Xbox hardware so that all the various TV-out chips can be implemented. The Xbox already runs Linux but you only get a f

Too bad what is to be the next Debian Stable has already long been frozen... major, groundbreaking improvements always seem to be implemented at a time that guarantees waiting through an entire release and then some.

Too bad what is to be the next Debian Stable has already long been frozen... major, groundbreaking improvements always seem to be implemented at a time that guarantees waiting through an entire release and then some.

How does that stop you from installing it? It doesn't. Just because it won't be prepackaged in your favorite distro doesn't mean you can't use it.

Given that support for this new driver seems to be based on the latest development branch of the Linux kernel, unless there's a backport available eventually, I think it's safe to say that getting it set up will not exactly be a walk in the park.

I have had a hell of a time just trying to get the nVidia drivers installed in current Debian 6.0 (though Debian 5.0, ironically did not give as much trouble). And that didn't even require compiling an updated kernel from source. I ended up just giving up trying t

Fair enough. I generally manage to get what I want working. It's certainly a lot easier now than in the early days in many respects, but then again in those days we didn't even have to worry about 3D acceleration, but still overall I find that it's pretty simple to get whatever I want working on a given distro.

Yeah, I normally don't even run into much trouble getting the nVidia drivers to work... I used to install them in Zenwalk from the official binaries and have also managed it in its parent, Slackware. In general, normally, the only thing that tends to give me trouble universally across distros is wireless cards. Maybe nVidia was just a weird one-time exception for the current Debian Stable.

How does that stop you from installing it? It doesn't. Just because it won't be prepackaged in your favorite distro doesn't mean you can't use it.

The more complex something is the more likely the build is to fail. Many build instructions are maddeningly vague, failing to specify even major versions of dependencies. Try building the latest mapserver with good protocol support sometime, you'll wet your kecks. Or cinelerra, oh the agony of defeat.

Hoe many different major versions of Apache are currently in the mainline Debian? I counted 3 last month

That's because apache can be built and used in different ways. One version may be suitable for development on a local machine whereas another it more beneficial if you have a lot of traffic being served.

I'm not a "must be free" nut however I feel like you're devaluing the work behind this.

There are some good benefits to having an open sourced nvidia driver for example, it can be used to power different experimental graphics layers such as Wayland / Weston, or it has the potential to support optimus chipsets which we haven't seen from Nvidia for 4/5 years now.

You mean you never upgrade your hardware? It's only more expensive if you decide you absolutely must make the switch today, and weren't already using supported hardware. Linux-compatible hardware is rarely notably more expensive than unsupported stuff, you just need to actually pay attention to compatibility when making your purchasing decision.

As long as the cost of replacing (some) HW is less than ~$150 you can go ahead and switch since the license of the "modern" os is something you need to think about too... Next would be what you can get for your old hardware.. If not too old you can get a few bucks for it too...

Main issues are motherboard and gfx-card... new motherboard ~$70-$120 for something that works... Graphics card for between $50-$200 depending on what requirements you have..

Which is in fact what I was thinking of. Other than mail-ordering a laptop sight unseen from a company like System76, what do you recommend doing in order to guarantee that a particular laptop will work under GNU/Linux?

Now people can stop bitching about how "free" a driver is and just concentrate on how well it works.
Or just use an OS that actually works with modern hardware
Or just buy hardware from manufacturers that release open source drivers, so your OS choice isn't limited by your hardware choices.

Or cut off your nose to spite your face. Since essentially that's what it boils down to. While it is highly desirable to have the source to a hardware driver, if the choice is between accepting inferior hardware with source, or superior hardware without source, I'll take the latter every time.

While it is highly desirable to have the source to a hardware driver, if the choice is between accepting inferior hardware with source, or superior hardware without source, I'll take the latter every time.

Well, in most instances the hardware is quite good... The bad thing is usually buggy drivers and with source, *and specifications*, for them it's fixable...

I agree source code and specifications would be really really nice, and ideally should be available. I just wouldn't beat myself up over using a closed driver if that's all there is. It's not bothered me in the Windows world and and I don't see a reason to be bothered about it in the Linux world.

I could care less the heritage of a piece of software, as long as it functions correctly. Im a big fan of using the best tool for the job

Until what used to be the best tool for the job suddenly becomes unusable. If, for example, you have found the best tool for the job to be Windows XP, that'll more likely than not become vulnerable to remote exploits by the end of April 2014, soon after Microsoft pushes out the final Patch Tuesday for that platform. A user of free software, on the other hand, is free to hire anybody to continue maintaining the best tool for the job.

I'd never buy a system with NVIDIA graphics even though I support the nouveau projects efforts. The problem is NVIDIA doesn't cooperate with the nouveau project and has provided little to no support for it. I'm not going the ATI path though. AMD just pulls the cloth over your eyes to what is really going on. Good PR is not good enough for this user. AMD doesn't provide sufficient documentation to produce a completely free solution.

Which means that right now Intel's graphics (except for the PowerVR based stuff which is actually third party) are the only good option. And before you go on about what crap Intel's graphics are they have significantly improved from years past and have some of the best support. The Intel drivers even support features the proprietary graphics drivers are lacking from NVIDIA/ATI. So depending on what you really care about Intel's the best bet. The game developers are even tailing to the code because they can (since the drivers are completely free) which has produced a significant boost in performance for some games.

Right now they're pretty much the only ones that don't support open source. Intel long ago opened things up, and AMD is opening up everything they can legally open. nVidia hasn't shown any evidence of opening up, even though right now that means that they're completely closed off.

As much as I appreciate projects like Nouveau, it seems like the only way that nVidia will change it's mind is if people stop buying their products and go with AMD GPUs.

Every time I see the "Intel is so much better with open source." I think the same thing:

Of course, they are more open that amd and nvidia, they're not serious contenders in graphics. Yes, they're popular, but performance wise, they have no secrets to keep. Amd and nvidia are in heated competition and because of that they want to keep their cards close to their respective chests.

AMD's continuing financial support from building the Xbox 360's GPU doesn't seem to be tainting them unduly. Let's not assume the worst about one and give the other a pass when a bogeyman's involved, OK?

The nouveau driver supports everything from NV04 upwards - NV01 and NV03 (NV02 never made it to production) are very different. In particular, PFIFO (the engine on the card that submits command the GPU) on NV01 doesn't support DMA at all, and NV03 has broken DMA. For that (and other) reasons, if support were desired for these cards, it would be in a separate driver. However such a driver would essentially be of academic interest, since these cards only accelerate simple shapes (like triangles and curves).

That having been said, one of the nouveau developers has done some reverse engineering of the NV01, the finiding of whic hare in the envytools [github.com] notes.

I've got all sorts of older Nvidia hardware that works great with the Nvidia blob and that has never worked with Nouveau.

It's a particular pain in the arse because it's loaded automatically as if it really were a real stable driver during installation these days and it is used to drive the console. Combined with the current trend for 'live-install' discs many modern distro's are nearly impossible to install on older hardware. Ubuntu, I'm looking at you.

Nouveau's expressly stated that NV1 and NV03/NV04 are too fundamentally different to be properly supported by the project, but if the TNT(2) and up will soon be supported, that'd be kinda neat. Granted, we're talking about hardware that's about 15 years old, now...

Let me start by saying this is good news. I don't have an Nvidia card, but I like to have the option of getting one and have it be supported by Free software.

Having said that, the article is light on details. How well do the features work? Does anything that works with the Free drivers for AMD or Intel now also work with Nvidia? How does the feature set compare with the closed-source Nvidia driver? How does performance compare?

This is likely to be perceived as trolling, but I'd honestly like to know: why are free 3D accelerator drivers so important? The OSS community has proven to be utterly incapable of developing or contributing to such projects in any meaningful capacity, so what's the point? The argument I frequently see is that this is the fault of the GPU manufacturers for not supporting OSS devs, but if said devs need their hand held every step of the way, what makes people think they can produce a worthwhile, production d

Its quite simple. I have a very nice Mac Snowball. Updates for OSX PowerPC are not flying in anymore, even Safari crashes on Google.com. So it is a good time to switch to a better maintained operation system. For PowerPC there are not many choices, but lets pick Linux. The motherboard has an onboard NV04, if this was an x86 I might be able to use the nvidia legacy drivers, for PowerPC: architecture not supported. So why is open source important: it can be compiled on your architecture of choice and gives pr

One of the problems with the official binary driver is that it only supports x86. With an open source driver, there's no reason you can't use it on any architecture out there. There might be some people interested in PCI cards on PowerPC, but the big interest here is with ARM-based systems.

Annoyingly, Mint now uses nouveau by default. On all 3 of my nvidia-based PCs Noveau causes a hard lock up within a few seconds of the window manager starting up. One of my PCs has a GTX 580 another has a gt 520, and the 3rd is a laoptop with an older nvidia mbedded chipset, so I've given it a good range of GPU ages/levels to work on but it fails on all 3.

Not all platforms treat graphics drivers as user-installable packages. For example, good luck extracting this binary from a particular version of Android in order to use it with an AOSP build for a given device.

Firmware runs on the device itself, and is generally OS independent.Drivers run on the OS, and therefore require you to be running a specific OS and a specific version of that OS. If a third party is maintaining the drivers, and does not provide you with sourcecode then you have no guarantee that they will continue updating it to work with new OS versions, or fix bugs.

This article's summary pretty much sums up why I still have no interest in Linux as a desktop OS.

The blame isn't on Linux entirely. It's long past time we get past this sort of nonsense and focus on the real problems in computing. Having different types of incompatible drivers for every OS (and often different versions of the OS) is inexcusable.

If the OS vendors can't get their shit together, we need to find a way to package drivers directly into the firmware and bypass the OS entirely. Basically, we nee