Nvidia Engineer Asks How the Company Can Improve Linux Support 581
sfcrazy writes "It seems that recent comments made by Linus Torvalds have made the people at NVIDIA take Linux more seriously. Recently Nvidia employee Stephen Warren asked in the Kernel Summit mailing list what could be done differently to make Linux support better. 'In a Google+ comment, Linus noted that we have mainly been contributing patches for Tegra SoC infra-structure details. I'm curious what other areas people might expect me/NVIDIA to contribute to. I assume the issue is mainly the lack of open support for the graphics-related parts of our HW, but perhaps there's some expectation that we'd also start helping out some core area of the kernel too? Would that kind of thing help our image even if we didn't open up our HW?'"
Ugh, this makes me mad. (Score:5, Insightful)
[...] we'd also start helping out some core area of the kernel too? Would that kind of thing help our image even if we didn't open up our HW?
You seem to care more about NVIDIA's image than about what the Linux community actually needs.
I truly don't understand what the big deal is. Just open up your damn specifications already.
Re:Ugh, this makes me mad. (Score:5, Insightful)
Re:Ugh, this makes me mad. (Score:5, Informative)
... Some help is better than none.
Okay, so how about pointing him in the direction of the nouveau project [freedesktop.org]? Even if his company refuses to share the full API, just a few hints here and there could make an enormous difference.
Re:Ugh, this makes me mad. (Score:5, Insightful)
Re:Ugh, this makes me mad. (Score:5, Interesting)
Re:Ugh, this makes me mad. (Score:5, Interesting)
Re:Ugh, this makes me mad. (Score:4, Insightful)
I doubt anyone will even see this, but I think it's great that they took any interest at all.
The owe our tiny market segment exactly nothing, but they're asking anyway. That's certainly something and it seems awfully nasty to get all "fuck you, it's all or nothing" about it.
Just a thought.
Re: (Score:3)
Telling people which versions of Linux they can use the video cards with
or guess what, we could create a stable ABI and then a single blob would work with (gosh) all versions of Linux.
The other benefit is that all other bits of hardware would work with all versions of Linux and could they start to be sold with shrink-wrapped drivers in the shops.
Re: (Score:3)
how often does an ABI of something as mature as Linux need to be changed? Microsoft manages quite well, and only changed their driver model when the big media firms persuaded them to put DRM into it for Vista. I should imagine stabilising the Linux ABI today would not change for the next 20 years.
Comment removed (Score:5, Interesting)
Re:Of course (Score:4, Insightful)
Re:Of course (Score:5, Informative)
Absolutely!
However, AMD/ATI is a PR stunt. The drivers just wrap non-free software and can't be utilised at all on truly free software platforms. Intel is the way to go. While you can't buy an Intel card explicitly you can utilise boards and/or laptops without nVidia/ATI and then use an Intel CPU with integrated graphics.
http://www.thinkpenguin.com/ offers absolutely the best hardware for free software users. There are no proprietary drivers or firmware required and even the free software endorsed Trisquel distribution is supported. That isn't just some hardware. It's everything. An impressive feet given the selection of hardware available.
Actually. ThinkPenguin has the largest catalog of GNU/Linux hardware by far. There really isn't a comparable offering anywhere else.
Re:Of course (Score:5, Informative)
Seriously? What do you think this [x.org] is about? What's the licence on this [freedesktop.org] that makes you think it's non-free? You seriously don't think this licence [freedesktop.org] cuts it?
Re:Of course (Score:5, Interesting)
Re:Of course (Score:4, Insightful)
Oh please, it's firmware whining again
Dear open source zealots, no one is obliged to add more circuits to a computer just because you can't be bothered to give the embedded card some data.
ALL computers depends on some amount of closed source data, deal with it.
There are exceptional cases, where the firmware is OSS, or where the vendor is a real asshole and forbids the blob to be distributed
Absolutely. Dear manufacturers, if you complain about distribution of fw at the same time anyone can download your "windows driver" off your website, You Are An Asshole
Re:Of course (Score:5, Interesting)
you don't quite understand the problem here - the HW manufacturer can offer a single Windows binary (or 2 or 3 at worst). But with Linux, they have to recompile a version for every (well...) version of the kernel that's out there. If the driver system had a stable ABI that never changed, then the HW manufacturers could deliver a single binary built "for linux" and would expect it to work. Currently, they have no such guarantee.
You wonder why Linux on the desktop never took off? There's no business benefit to the manufacturers to support it. Sure, its technically better, but that means diddly squat in the real world especially when the answer is to recompile from source. You're never going to get Nvidia's source code, so accept that and start to deal with it with a technical solution rather than an idealistic one.
Re: (Score:3)
Linux still uses X. Regardless of how far away it's abstracted with dirty ugly hacks, it's still X.
So - for desktop use - no, it's NOT technically better. And it has little to do with the drivers not being open, but rather the religious insistence of nutters to keep the useful, flashy, graphics, you know - desktop, bits out of where they could work.
Re:Of course (Score:5, Funny)
It's everything. An impressive feet given the selection of hardware available.
Must be a Gnome user...
Re: (Score:3)
Re: (Score:3)
It is not nVidia's job to do ANYTHING for X or Y operating system. If they make crappy drivers for a certain OS, they lose market on that OS. Maybe they don't care about that market.
Re:Ugh, this makes me mad. (Score:5, Interesting)
So guys, I prefer your products, I could spend hundreds of thousands, maybe million some day, but I'm nervous enough to choose a lesser option in order to leave myself an escape path - purely because your lack of openness at the interface with the hardware worries me. I don't want the hardware opened, I want its API. The lowest level software interface to it (and preferably the code to your supported drivers). If you opened up I'd know I could always get a driver that worked if I needed to move OS. Or that I could tweek for performance in the area I need it. etc... Open up. Why not? I've given you a bloody good reason to. Haven't I?
Re: (Score:3, Insightful)
I would think that the Nouveau project would prefer to keep nVidia people/developers out of the source - they cannot risk there being any "polution" of intellectual property.
Lawyers should first classify what the company can divulge (and their answer: Nothing), before anyone from nVidia even thinks about looking at the Nouveau source.
Re:Ugh, this makes me mad. (Score:4, Interesting)
I would think that the Nouveau project would prefer to keep nVidia people/developers out of the source - they cannot risk there being any "polution" of intellectual property. ...
Not necessarily. We don't need their source code, just more information about their API. And as was recently ruled in the Oracle vs Google case regarding Java, API's can not be copyrighted [slashdot.org].
Lawyers should first classify what the company can divulge (and their answer: Nothing), before anyone from nVidia even thinks about looking at the Nouveau source.
Not their source code -- just the API for their hardware! Not that I expect that Nvidia's management will allow their engineers to divulge any API information (even just a little), but for us that's what's most important.
Re:Ugh, this makes me mad. (Score:4, Insightful)
NVidia should open their register specs like AMD or else fuck themselves. I believe that is what Linus meant.
Re: (Score:3)
There should be ways to detect the wirings and whether there is a mux and where, but the documentation is not available to the developers (maybe you can help us figure out how to do this, have any ideas? You can also 'petition' nvidia for releasing these specs: nvidia customer help [custhelp.com] ? )
Re: Some help is better than none. (Score:3, Insightful)
Re: (Score:3)
for whatever reason, if their higher ups don't want to be telling the world how their drivers work, and so they won't.
That's nothing a good firing wouldn't fix.
Re:Ugh, this makes me mad. (Score:5, Insightful)
If this engineer knows that will never happen (through no fault of his own, higher-ups would have decided this) then at least he's making an effort. People can get upset all they want, but nothing other than good is going to come out of this, whether it's exactly what would be ideal or not. Some help is better than none.
Right; I'm not getting upset about him. We love him and if he ever gets kicked out by NVIDIA, I'm sure there are lots of us here who will want to hear about it and offer him a job. What upsets us is that NVIDIA clearly has people who understand that we are upset and why we are upset and they still don't do anything. From my point of view this makes things even worse.
NVIDIA; please: even if it's incomplete and misses your latest fastest newest stuff, please provide the Linux developers; both kernel and Noveau; with publishable open documentation which tells them how to set up the rest of the features and at the very least provide good, reliable and colour tunable 2D and low level support for your cards. Preferably provide full, documented access to any feature older than two years.
This can have no possible bad influence on your competitive advantage and will go a long way to making those of us using Linux happier.
Re:Ugh, this makes me mad. (Score:5, Interesting)
I can give them some ideas:
What about starting to properly support XRandR and stop the TwinView crap?
What about continuing giving minimal support to old GPUs? My parent's computer has a GeForce FX Go 5300 which has currently no official driver that supports the latest Xorg. Unfortunately nouveau is not working very well with this graphic card either, being the 2D support buggy.
What about supporting KMS in their drivers?
Not going to happen, that's why my next computers will have Intel GPUs.
Re:Ugh, this makes me mad. (Score:5, Funny)
Good Point. (sorry - lower case "P"s seem to be dead on this keyboard)
It is easy to imagine that Nvidia might make a contribution or more to the kernel, that would helP Performance. I'd much rather see everything oPen sourced, but if that can't be done - let them get their hands dirty, and make the drivers work better for Linux. Even if they never actually contribute kernel Patches, the attemPt to do so can only give them a better understanding of the whole system!
If the engineer knows it will never happen (Score:5, Informative)
and we ought to just accept it, then he should know a better perception will never happen and just accept it and the consequent loss of sales.
The REALLY DUMB thing about both the engineer (and NVidia) and you is that you don't seem to even consider "Hey, lets tell them why it can't ever be done.".
Except that was tried a long time ago, where NVidia said something like "SGI owns some of the stuff we use and they won't let us release it". Well, given specific goals, the FOSS people went to SGI and asked "Can NVidia release the stuff they got from you?" SGI answered "We cannot conceive of anything that NVidia has off us that we wouldn't be happy with them releasing.".
Now, given that, did NVidia release specs?
No.
And, having been caught out in a porkie-pie, they have refused since then to do other than let their fanbois (and I use their cards too) say "Oh, maybe they can't for contract reasons" because, not being party to any secret NDA, the fanbois cannot supply any information on who/what or why and therefore it can't be rectified.
Re:Ugh, this makes me mad. (Score:5, Insightful)
"You seem to care more about NVIDIA's image than about what the Linux community actually needs."
Of course they do. Why in the world would this surprise you? It's a public, for-profit company. The vast majority of contributions to open source by companies are not done out of altruism. They're done out of self-interest.
"I truly don't understand what the big deal is. Just open up your damn specifications already."
There's probably something in how they do things that they think (rightly or wrongly) that gives them an advantage over their competition that either isn't patented or can't be patented (or maybe violates someone else's patents).
Re:Ugh, this makes me mad. (Score:5, Insightful)
Or would give away something about how their hardware, or hardware development works that they don't want anyone to know too much about. Or at least not to wave around in public. I'm sure AMD know, enough staff move back and forth, but some random chinese hardware maker, that I'd be worried about.
Remember nVIDIA sells it's 'first silicon' runs, they don't usually prototype, they do simulations first, and from the simulations that are used to design the hardware they go straight to manufacturing. It's possible some of their driver support would have some hooks (or parts) of their simulation tools in it that they don't really want to be broadcasting around.
But broadly ya, for whatever reason, if their higher ups don't want to be telling the world how their drivers work, and so they won't. Hell for all we know it could be entirely paranoia from an MBA type who just doesn't understand and doesn't want his ass fired if something goes wrong.
Re:Ugh, this makes me mad. (Score:5, Insightful)
We're asking for specs, not driver code. There's no reason they would have to give us any of those simulation hooks, or any information about them.
Re: (Score:3)
So the nouveau guys should just give up and delete everything they have already done?
Re:Ugh, this makes me mad. (Score:5, Interesting)
This is utterly wrong. It's telling that you posted as an AC, and I'm assuming that's because you're not a developer involved in any open source work on this issue, and you don't have the first clue about how these things actually work.
However, you do sound like a user with an incredibly exaggerated sense of entitlement, or perhaps a college freshman with wild-eyed ideas that every line of code on the planet should be forcibly "freed." If the code for something hasn't already been written, I presume you're of the view that companies should be forced to pay developers to write it, and of course they should be sure to call you every day for your personal stamp of approval on the last 24 hours of coding. Naturally, the resulting code, which you didn't pay for and didn't write a single line of, must be licensed in precise accordance with your personal opinions on freedom, right?
Let me be absolutely clear on this: the core developers in the open source community working on this stuff want the specs. Just like anything and everything else that open source code was been written for, even back before the term "open source" was even in common usage, precise hardware specifications allow developers to write software that properly interfaces with the specified hardware.
I will be the first to stand up and strongly advocate for open hardware specifications. That said, the absurdly entitled position you're taking does far more harm than good in the community at large. In short, kindly shut the fuck up and stop ranting about things you have no understand of, and no honest stake in.
Re:Ugh, this makes me mad. (Score:4, Informative)
Re: (Score:3)
I'd be delighted to see you back up any of your assertions with deep insights into my personal history, the histories of other interested parties on this topic, actual refutation of any of the listed points instead of generalized hand waving, demonstrated understanding of how practical open source / free software development works, and additional relevant citations.
Re: (Score:3)
Either NV hands over the goods, or we have nothing
Crawl back into your cesspool, idiot. Like GP said, we need register specs. That's it. NVidia no doubt has a lot of years invested in their driver, but they can keep it. We have way more man years available than they do.
Re: (Score:3)
If Linux had a platform share of 50% of the hardware market, they'd have sufficient grounds for biting the bullet and betting on staying ahead of the competition by being the best at doing the hardware part of their architecture.
The thing is, they could open their specs, wait a couple of months until open-source driver support catches up or even exceeds their closed-source drivers, and take pretty close to 100% of the Linux market.
Now, because Linux has at that point got as good or better accelerated video support than Windows, it will overtake Windows even faster than it's already doing for things like home theatre PCs. Valve will be happy, since their Linux-based console will be able to rock the cheap, powerful NVidia chips, and
Re: (Score:3)
I'd put money on the likelihood that there is a GPL violation in their driver code that they'd have to own up to if they actually released the source.
Re: (Score:3)
"You seem to care more about NVIDIA's image than about what the Linux community actually needs."
Of course they do. Why in the world would this surprise you? It's a public, for-profit company. The vast majority of contributions to open source by companies are not done out of altruism. They're done out of self-interest.
Good engineers dont think like marketing people, they think like engineers. How to do stuff rather than how to manipulate people.
Re: (Score:3, Interesting)
I don't think NVIDIA is doing anything wrong, but I'm sick of hearing the profit motive used as a euphemism for antisocial or greedy behavior. That's not the way capitalism is supposed to work and everybody needs to know this. Any business textbook will tell you that the profit motive is not meant to be synonymous with greed, but in practice that is how most Americans think of it. I don't know how people got tricked or corrupted into this way of thinking but we're all paying the price now as fraud played a
Re:Ugh, this makes me mad. (Score:4, Insightful)
You seem to care more about NVIDIA's image than about what the Linux community actually needs.
I truly don't understand what the big deal is. Just open up your damn specifications already.
AMD did this, and the Linux community still recommends people buy NVIDIA cards. Vote with your wallet, or shut the fuck up. Keep buying from the company with closed specs instead of open ones, and you'll keep getting closed specs instead of open ones. Not a difficult concept, people.
Software patent troll problem (Score:4, Interesting)
That appears to be the "big deal".
Re:Ugh, this makes me mad. (Score:5, Insightful)
not if they plan on complying with the gpl
Re:Ugh, this makes me mad. (Score:4, Interesting)
But it's the kernel license, so if they plan on releasing any useful code, it must be under a GPLv2 compatible license.
I really don't understand why they don't open up already. Their only real competition is ATI, and there's not a single technology that nvidia could expose through their source that ATI doesn't already have ... so, why don't just open up?
The way nvidia gets itself into the kernel is an ugly hack, and we're sick of it and the problems it brings.
Re: (Score:3)
Nvidia's distinguishing technology and products are not its driver software
What? There's at least as much useful (and reproducible) technology in the drivers as in the hardware. I can pretty much guarantee any open-source drivers would be gone though with a fine-tooth comb for useful information in exactly the fashion that companies purchase and disassemble their competitors products for manufacturing information.
In any half-way competitive industry, if you're competition *isn't* using your open source ef
Re: (Score:3)
The choice is yours!
Um, the choice isn't theirs (the engineers) - it's the company's.
Moreover, just about everything you've posted there are reasons to NOT give out the source code!
(I apologize if this is meant to be humorous - if so, I'm missing it.)
when I see a concept in action in actual hardware ..I could figure anything out.
Allowing you to produce better products that will help make the original company's products less attractive.
These people, having gained lots of knowledge and insight from their expe
Re:Ugh, this makes me mad. (Score:5, Interesting)
They could have been a brilliant contributer, if they wanted to, but they don't.
Not to diminish Linus's effort, but there is a backstory to his frustration, and nVidia have been given other incentives to become a better contributor.
NVIDIA was approached by one of the leading Chinese CPU teams to use an NV GPU in a pilot school PC project. Linux would run on the Chinese CPU, while GeForce GPU would provide the graphics power. 'Pilot project' in this case means over 10 million PCs in one order, broken down - 100,000 schools with 100-150 PCs each.
To cut the story short, the NV team appeared there, and in very arrogant manner told the Chinese side that they are a large US corporation, and that recompiling the Linux drivers would cost the Chinese a lot of money.
http://www.brightsideofnews.com/news/2012/6/21/china-nvidia-loses-face-and-a-10-million-pc-order-over-linux-drivers-and-nres.aspx [brightsideofnews.com]
They lost the relationship with the Chinese team, who have since approached AMD. The pilot project was worth an initial 250-350 million dollars, with the potential of much more to follow.
Re: (Score:3)
The story you link to refers to nothing but rumor, and seems to have been copy-edited by a couple of disinterested high school students. It also mentions the idea that China is going to have the world's fastest CPU within a year, mentions the idea of "losing face" like they took "Asian Stuff 101" sometime in the 80s, and refers to the reasonable request for money to make a port as being incredibly unreasonable, some sort of slap in the face to the Chinese.
Additionally, the idea of China making a single ord
Re: (Score:3)
You could say that linux is significantly invested in x86 too, and yet it also has support for mips, arm, etc...
If the driver is even remotely well written, then it should require absolutely minimal effort to support other architectures. There are plenty of drivers for pci and usb devices in the linux kernel that work on other architectures pretty much by accident, try building a sparc or alpha linux box and throwing some random pci cards in.
And let's not forget that until a few years ago, there were nvidia
Re:Ugh, this makes me mad. (Score:5, Insightful)
People always say this, "more work to follow" but it hardly ever works out like that. The Chinese are notorious (as in *consistently and repeatedly*) ask for samples with the promise of more orders and they take it apart and reverse engineer it. They do this with electronics, shoes, ships, MiG and Sukhoi jets, missiles, commercial agricultural strains even Austrian towns. I'm not anti-Sino, just reporting what has been documented as happening and appears to be a sustained, systematic and government condoned effort to make unlicensed copies of technology (that is, 'steal'). Perhaps NVidia were aware of this, even if many Slashdotters are not.
Good news. . . (Score:3)
Hey, good news. China is changing.
Now, they tell you up-front that in order to sell a small number of units in China, you must hand over all your technical documentation [ft.com] so that they can start making and selling them after the initial sale.
Re: (Score:3)
"As for agriculture strains, those are natural (though changed through generations of controlled breeding). Copyright doesn't apply there."
I live in New Zealand (NZ). Millions of taxpayer dollars were spent developing a strain of apples known as New Zealand Rose. It is a delicious apple. However, Chinese tourists were found with cuttings of the apple trees (they're always found with such things) and now the apples are grown in China - destroying some of the export potential of the apple, plus also destro
Re:Ugh, this makes me mad. (Score:4, Informative)
Racist.
How is this racist? The only way you could construe it as racist is if you are ignorant of the origins of the phrase "yellow journalism [wikipedia.org]".
Re: (Score:3)
Re:Ugh, this makes me mad. (Score:5, Insightful)
Truth is soon Intel hardware with the open source driver will be more powerful than the NVidia card with the open source driver.
There's also the problem (from nVidia's perspective) of commoditisation of the market. Most consumers don't want the fastest GPU, they want the cheapest GPU that's fast enough for their needs. As with CPUs, some people don't need the latest and greatest, and this percentage of the market grows over time. As the niche of people needing the high end cards shrinks, so does nVidia's R&D budget and their ability to stay on the leading edge. This is something nVidia should be intimately familiar with, as it was how they killed SGI...
Re:Ugh, this makes me mad. (Score:4, Informative)
I know companies that don't aim at maximizing profits can be sued by their shareholders
Not true. And even if you WERE trying to maximise value to shareholders, there's a distinction between long-term sustainability and short term profit.
The Myth of Profit Maximizing
“It is literally – literally – malfeasance for a corporation not to do everything it legally can to maximize its profits. That’s a corporation’s duty to its shareholders.”
Since this sentiment is so familiar, it may come as a surprise that it is factually incorrect: In reality, there is nothing in any U.S. statute, federal or state, that requires corporations to maximize their profits. More surprising still is that, in this instance, the untruth was not uttered as propaganda by a corporate lobbyist but presented as a fact of life by one of the leading lights of the Democratic Party’s progressive wing, Sen. Al Franken.
http://www.alternet.org/economy/154789/whose_corporations_our_corporations!?page=entire [alternet.org]
Re: (Score:3)
This is a common myth in the geek world: that corporations are not merely incentivised, but actually required, to fuck over whoever they can in the pursuit of whatever arbitrary short-term buck someone on the internet is discussing at any given monent.
This claim is popular but incorrect - under the business judgment rule, directors' decisions cannot be judicially challenged unless they are grossly self-aggrandising or actually provably insane. The second standard is never met unless there is no deliberative
Re: (Score:3, Informative)
The big deal is that different graphics cards with different prices have exactly the same hardware, just different drivers.
There's no way to give the users what they want and maintain this important business practice.
When chips are manufactured, you don't end up with a stack of perfect chips and a stack of scrap. You end up with a stack of good enough chips, a stack of not quite as perfect chips, and a stack of scrap. So a chip designed to run at, let's just throw a number out and say 1ghz, might get 80% of the manufacturing run which performs at 1ghz and maybe 10% which won't handle more than 750mhz without errors but works perfectly fine if you keep it turned down. Or maybe a manufacturing defect in 20% of some auxill
The very thing that they don't want to do. (Score:5, Insightful)
Open up the hardware such that proper drivers can be written for any card (recent or not) and platform w/o the need of binary blobs.
That shouldn't be an impossible task given how much weight NVidia has towards third parties.
Comment removed (Score:5, Insightful)
Re: (Score:3)
Well yeah maybe. There are degrees in these things. AVR outsourced their entire developer toolchain for working on their microprocessors so that you can compile for any of their chips with gcc. Its very convenient and it sells a lot of hardware for them.
Comment removed (Score:5, Insightful)
Re:The very thing that they don't want to do. (Score:5, Interesting)
nVidia is violating somebody's patents. I don't know which ones. They don't know which ones. It's really not possible for them to know which patents they're violating, and it could be that they're actually not violating anything, but it's probably a safe bet that they are. That's how broken our patent system is.
The flip side of this is, whoever holds those patents that nVidia is violating also doesn't know that nVidia is violating their patents. However, if nVidia were to release the specifications and source code that we all want them to, it might become easier for somebody to recognize that nVidia has unknowingly violated their patent, at which point nVidia might be very screwed. Or maybe not, who the hell knows? In any case, a series of patent infringement lawsuits could be very very bad, and could potentially destroy the company. The only defense nVidia has against this is 1) building up a patent warchest of their own, so that if somebody sues them, nVidia can look for patents they own that the other company is violating and work out a trade, and 2) shrouding their hardware in mystery, so nobody knows how it works and therefore nobody can figure out if it's infringing on someone's patent or not. Note that #1 is not possible against a patent troll that doesn't actually produce anything, so #2 is really all they've got.
Re: (Score:3)
nVidia is violating somebody's patents. I don't know which ones. They don't know which ones. It's really not possible for them to know which patents they're violating, and it could be that they're actually not violating anything, but it's probably a safe bet that they are. That's how broken our patent system is.
The flip side of this is, whoever holds those patents that nVidia is violating also doesn't know that nVidia is violating their patents. However, if nVidia were to release the specifications and source code that we all want them to, it might become easier for somebody to recognize that nVidia has unknowingly violated their patent, at which point nVidia might be very screwed. Or maybe not, who the hell knows? In any case, a series of patent infringement lawsuits could be very very bad, and could potentially destroy the company. The only defense nVidia has against this is 1) building up a patent warchest of their own, so that if somebody sues them, nVidia can look for patents they own that the other company is violating and work out a trade, and 2) shrouding their hardware in mystery, so nobody knows how it works and therefore nobody can figure out if it's infringing on someone's patent or not. Note that #1 is not possible against a patent troll that doesn't actually produce anything, so #2 is really all they've got.
Keep in mind that has not stopped AMD from releasing a ton of specs and docs and nobody has come forward over the years to sue AMD over their releases. Nvidia is just being stupid at this point and time.
Nvidia Open Source Policies (Score:4, Interesting)
Eventually given how global markets expand and change, Nvidia will have to change its policies.
After all, they sell a GPU.
Consider how silly it is not to publish register information so you can write software for it. It is silly. Especially if Intel did the same thing with its chipsets because AMD might get some information on how a instruction works and try and copy it therefore making assembly language illegal and silly IP laws.
Eventually this policy is going to cost Nvidia in the pocket book, and they will either come around or sink into nothingness.
The exact same direction Apple is going to be heading to very shortly.
-Hack
Re:Nvidia Open Source Policies (Score:5, Insightful)
And yet, our new deployment of thirty Linux-based image generators I just setup all have GeForce cards in them... Do we live in the same world?
nVidia cards, with nVidia's binary blob driver, are the only way I can get any work done in Linux. That doesn't seem to be changing anytime soon, either.
I wish it would. My home PC has a Radeon card... But the support under Linux just isn't there.
Same thing as always (Score:5, Informative)
It's unnecessary, and likely impossible, for Nvidia to open source its proprietary driver, due to licensed software they don't own (they have stated in the past). All that's needed is for Nvidia to release the documentation on the components they manufacture, as AMD/ATI did in 2008 (and Intel has always done). The existing nouveau driver team will take it from there. Nvidia can also choose to provide funding, salaried developers, or sample cards for the team. That would put them in a parity position with AMD and Intel.
Re:Same thing as always (Score:4, Interesting)
Here are the initial steps that can be taken:
1. Document the hardware. Releasing full specs would go a long way. Intel just released thousands of pages for its new stuff.
2. Have your engineers work on the nouveau project to support all of your cards in 2D.
3. Make nouveau your official linux driver for all 2D stuff. Initially this would be hard, but this is a case of if you bite the bullet, you will see rewards both short and long term.
4. We understand that the 3D stuff is where things are exciting. Move all of the 3D stuff to being a closed module of nouveau, or even to userspace.
5. Work with the virtualization people. You can do it, we know you can.
6. Work towards being able to open all of your cards. Can you work with people to set release dates for older cards? How about the ones you don't really support anymore?
7. Keep talking to the community. It does help.
8. Contribute to an open hardware project. Perhaps by agreeing to manufacture an open video board?
Re:Same thing as always (Score:5, Insightful)
All that's needed is for Nvidia to release the documentation on the components they manufacture, as AMD/ATI did in 2008 (and Intel has always done). The existing nouveau driver team will take it from there.
Yea, how well has that actually worked. Oh yea, it's failed miserably. 4 years later and ATI Linux drivers are still garbage and the only reason Intel drivers work is because of the server market and because chips don't change often. It's not rocket science, writing graphics drivers are HARD and Linus continually poking his pecker into the kernel means they continually break and have to be tinkered with to work again.
The VOIP visitation recorders at work have to have updates turned off because Ubuntu craps itself whenever it tries to update. When the box is 4 hours away that is a big deal. Our windows machines have auto-updates turned on and never have problems. We've tried having a development machine at the office to test the updates, but for whatever reason, the number of VOIP boxes and minor hardware revisions make it impossible to develop a standard update profile for us to reliably push out to all machines. So we have to just lock them down as much as we can and hope for the best. We are working on a Windows based solution so we can eliminate the Linux boxes in the future.
It needs to be repeated so it sinks in, Linux needs a reliable ABI so ATI and others can just slap a Linux driver onto the CD that comes with the card and call it a day.
Re:Same thing as always (Score:4, Informative)
4 years later and ATI Linux drivers are still garbage
Actually, I have an HD6950 in my box. I had been running the proprietary driver basically because it was set up by default and I was too lazy to change, but yesterday I decided to give it a go. In terms of performance, it is not garbage (I haven't looked at the code). There are actually quite a few advantages to the open source driver.
For one, the 2D operations seem to be significantly faster. I had to screw around with Catalyst on the proprietary driver to get good desktop performance, but the open source driver is considerably snappier out of the box. Also, Gnome Shell was crashing on me frequently with the proprietary driver (usually when doing an expose type event), but this seems to have stopped completely with the open source driver (it has also never crashed with my Intel card on my netbook). Finally video playing seems to have been improved. No matter what I did there would always be some situations where I would get tearing with the proprietary driver, but I never get tearing with the open source driver. There is probably a way to fiddle with Catalyst to get everything working well on the proprietary driver, but I could never seem to find the sweet spot in terms of performance and stability
I'm not a big gamer, but I have a few games. Some games work flawlessly. Some have reduced framerate. One game (the World Forge Ember client did not run at all due to driver problems.
Apart from Ember (which is kind of screwy most of the time anyway), every game I've tried is playable at a reasonable framerate and resolution. I suspect that hard core gamers would not be happy playing some of the more modern windows games under wine, but I don't have any of those to test. On the whole, for a casual open source gamer, the open source driver actually has a better user experience for me. Admittedly, I have a fairly high end card, so I don't know what it's like for a cheaper one, but I don't get a dramatic drop off in performance. The improvement in other areas more than makes up for it in my mind.
Quite possibly for a specific application you have in mind, it's not acceptable, but that's a far cry from "garbage".
Re: (Score:3)
Re: (Score:3)
Don't you believe it.
It is quite possible to buy three computers from the same supplier, with the same model number and the same specifications within a month of each other and find that you wind up with three subtly different pieces of hardware.
There are ways to avoid it - most major suppliers will guarantee that certain ranges won't receive a change to the hardware without a corresponding change in the model number - but those ranges are typically quite a bit dearer.
Same thing as always: DRM. (Score:3)
It's unnecessary, and likely impossible, for Nvidia to open source its proprietary driver, due to licensed software they don't own (they have stated in the past).
It also can break DRM.
Re:Same thing as always (Score:5, Informative)
Posting anon because I've already modded this thread - I've clearly been way too far out of the loop for way too long. Is this to say that ATI is now the Linux-friendly manufacturer whereas NVidia is not? I thought that in the past, NVidia had the lead by way of better drivers, better stability, and VDPAU. Did ATI/AMD leapfrog ahead or is NVidia still the better way to go when building a PC with the intention of running Linux on it?
ATI/AMD's New Open-Source Strategy Explained:
http://www.phoronix.com/scan.php?page=article&item=826&num=1 [phoronix.com]
AMD Releases 900+ Pages Of GPU Specs:
http://www.phoronix.com/scan.php?page=news_item&px=NjA1Mw [phoronix.com]
AMD Releases Additional R600 GPU Programming Documentation:
http://www.phoronix.com/scan.php?page=article&item=960&num=1 [phoronix.com]
AMD Releases 3D Programming Documentation:
http://www.phoronix.com/scan.php?page=article&item=amd_tcore_release&num=1 [phoronix.com]
Re:Same thing as always (Score:4, Insightful)
And yet their open source drivers still are unusable...
I don't give 2 shits about "Theoretically" working drivers. I need reliable, stable and fast drivers. The AMD Drivers are none of those things.
Re: (Score:3)
Re: (Score:3)
If you do that, then it will be seen as "good enough" and noone will write drivers to take advantage of new kernels, all drivers will end up limping along.
Easy (Score:5, Interesting)
Firstly, deal with the goddamn shitfucking Optimus hardware that's out there!!!!!!
Optimus (Score:5, Insightful)
Re:Optimus (Score:4)
Better support for the hybrid graphics chips going into laptops would help a lot.
he knows (Score:3, Insightful)
. I assume the issue is mainly the lack of open support for the graphics-related parts of our HW,
He knows exactly what people want. The entire point of the question is to make it look like they are doing something without actually doing something.
Re:he knows (Score:5, Insightful)
He also knows that this is not going to happen, and is looking for a middle ground. Fanatical "open source or GTFO" movement isn't look pretty in this either.
Re:he knows (Score:5, Insightful)
But it's not a middle ground. It's not related.
Let's say I'm trying to get to the bus station. You live in the area and so I ask you how to get to the bus station. You say, "I don't really want to tell you that." I get pissed off and complain loudly that even though you know the way to the bus station, you won't tell me. People start saying, "Boy, that guy's not friendly at all, is he?"
So in order to avoid the bad reputation you say, "Well, I still don't want to tell you where the bus station is, but what if I offered to cut your grass. Would that help matters?"
Of course I would love for you to cut my grass, but it isn't at all related to the issue of the bus station. It's not a middle ground, it's a red herring.
Re: (Score:3)
That's a shitty analogy. Don't feel bad; most people make shitty analogies when a car gets anywhere near the conversation.
Here's a better automotive analogy to the current situation: It's like you're trying to get somewhere on a bus, because you don't own a car, don't want to own a car, you think cars suck. And you ask which bus you need to get on to get where you're going, and the person you're talking to says "Well, I just get in my car and I drive up this way and down that way and I'm there." You don't w
I'm sticking with Radeon (Score:5, Interesting)
Very happy with my Radeon chipsets, don't have to worry about kernel version incompatibility or graphics lockups from some bug we can't even begin to fix. I've had both problems with nVidia hardware.
No PR move from nVidia is going to change my mind beside opening the specs.
Alright, I'll bite... (Score:4, Interesting)
Frankly the GPU support issues are going to be the big key issue no matter what. Whether you think its wrong/stupid/immoral/wasteful/anti-american or whatever to use Linux as a gaming platform or for any other sort of performance-critical real-time 3d rendering *some* Linux users will still disagree with you and do it anyway. Whether flaws in your business plan and/or shady under-the-table anti-competitive agreements made years ago with certain big software vendors preclude you from giving Linux full support or if its really some legitimate logistics problem *some* Linux users will still disbelieve the excuses and not forgive you for it. Some of those Linux users still consider themselves your paying customers. You will never truly live this down, but don't worry; judging by the word on the street these days neither will any of your competitors.
However, if you want to set up a smokescreen that hides the fact that *someone* in the higher end of Nvidia's chain of command is openly prejudiced against open source software (or just made a shit ton of cash on Microsoft stock perhaps and refuses to believe therefore that Linux is anything other than a waste of the company's time) you could at least consider making an attempt at distro-native packages for your driver that show evidence that you are capable of and willing to put at least half as much effort into working within the rules and parameters of various distro's packaging systems and with their tools properly as you've already put into that big self-extracting NVIDIA-Linux-x86-whatever.run bash script monstrosity to make it capable of the far more arduous task of cleaning up after itself enough to get a working GLX after it has fully subverted and broken said packaging system by using very crude non-native tools and methods that are not dependency-aware.
Summary of Previous Discussion (Score:5, Informative)
Here's a summary of some of the most insightful discussions posted on slashdot when this discussion came up last week:
nVidia Issues:
*Proprietary drivers that don’t always survive kernel upgrades. So people who rely on nVidia's proprietary binary drivers can't always update their kernel or they lose their graphics until nVidia puts out an update. (from UnknowingFool) nVidia only provide a binary blob driver which makes bug fixing for it dependent on Nvidia's whims. (from AC)
*open source drivers – nVidia refuses to provide specs and API's for their hardware which make writing open drivers much more difficult and time-consuming because of having to reverse-engineer everything to get a workable driver. (from AC) As a result, open source drivers are unable to use full card functionality like full 3D acceleration (from UnknowingFool)
Summary of graphic chip vendor support (from Lonewolf666):
*AMD provides specifications and a small developer team that actually works on open source drivers.
*Intel provides open source drivers.
*NVIDIA makes good binary drivers, but those have problems when a new kernel version comes out with changed interfaces: Only NVIDIA can adapt them, and until they get around to it, NVIDIA may not work with the latest kernel version.
From rajafarian: If the kernel maintainers have a question about the hardware, they can't ask NVIDIA they have to test and reverse engineer to find the answer whereas with other companies, they may get an answer directly from the manufacturer. Get it? "...NVIDIA just made the damn drivers. Now that is not good enough." Not from a kernel maintainer's or Stallman's point of view, I'm pretty sure.
From jmorris42 : Name another major chip vendor who hasn't figured out that getting into the Linux kernel is a required checkoff for market success. Doubly so for any product used in the enterprise vs the fanboi market. NVidia's CUDA is about the entire list these days, the last major holdout.
From basscomm: Windows users who have SLI and multiple monitors have been able to enable SLI and use both of their monitors at the same time since about 2008. But under Linux, no dice. So if I had two monitors (which I do), and two Nvidia GPUs in SLI mode (which I do), and I wanted to run some 3D app that took advantage of SLI, I would have to: reconfigure X to disable my second monitor and enable SLI, restart X, play the game/use the app I wanted, when I was done I would have to reconfigure X again to enable my second monitor and disable SLI, restart X again, and reopen all my apps. Hardly ideal.
Given all of this discussion, here are a few ways nVidia could work better with the community:
*Open Source drivers - 1) provide specs 2) provide developer team that works on the OS drivers 3) provide rep to interface with the OS community 4) provide enough detail to get 3D working well
*Proprietary drivers - 1) monitor upcoming kernel builds and proactively update drivers before the next kernel release or 2) have a dedicated nVidia contact to work on updating drivers ASAP when notified that an upcoming kernel build breaks them
*Overall - enhannce SLI and multiple monitor support,
Re: (Score:3, Insightful)
Re: (Score:3)
That's not the Linux driver model, though. The model is that drivers are expected to be at least working towards integration into the kernel tree, so that the kernel devs can easily know if they're breaking something and maybe even fix or help fix it. Failure to do this results in long-term pain for everyone, while being in the tree or working towards being in the tree keeps everyone communicating on a regular basis and working together.
In other words, developing hardware for Linux actually requires communi
The Good, the Bad, and the Ugly (Score:5, Insightful)
Years ago I got good support from Nvidia. I had a problem and sent a bug report and got a response late on a Saturday night (West Coast) that involved a kernel patch to fix a bug in the kernel that was causing the problem. I was an Nvidia fanboy for many years after that. I helped dozens of people get things like Twinview working.
In recent years, working with Nivida has been very frustrating and I can no longer recommend them for Linux systems. For example some interaction between closed-source Flash and the closed-source Nvidia drivers turns people blue in Youtube videos but not other sites.
There has also been a heart breaking struggle to remove video "tearing" (vsync problem) when watching dvds and blurays. The last time I checked I needed to use the GL video to remove tearing when watching dvds but I still have some tearing when watching blurays which is kind of heart breaking. At the very least Nvidia should have a sticky post in the Linux forum explaining all the hoops one must jump through to try to get rid of video tearing. Also, having the sticky posts show up on all pages, not just the first page is a big PITA. It wastes my time and attention. It is disrepectful.
I don't understand why video tearing is such a recurring problem. Are these environment variables still needed?
export VDPAU_NVIDIA_SYNC_DISPLAY_DEVICE="DFP-0"
export __VDPAU_NVIDIA_SYNC_DISPLAY_DEVICE="DFP-0"
export GL_SYNC_TO_VBLANK=1
export __GL_SYNC_TO_VBLANK=1
export GL_SYNC_DISPLAY_DEVICE="DFP-0"
export __GL_SYNC_DISPLAY_DEVICE="DFP-0"
When an nvidia driver update causes tearing to start again, or worse, if it causes X (or the entire machine) to crash, it feels like you are telling me "F- you!"
I get it that opening up your drivers is not an option. The problem is that this decision causes a lot of breakage and you do not make it easy to fix this breakage. Please just make it easy for me to get your drivers to work. Is Twinview plus non-tearing video playback really too much to ask for? Also, what about the problem with non-tearing and composite? Has that ever been fixed? If not, maybe that's something you could help with.
Years ago I felt like I was getting support. Nowadays I'm not feeling the love.
Stop developing a closed kernel module... (Score:4, Insightful)
Move everything to userspace, and use an existing driver, or a very small open driver, to access the card. There should be no reason, even if they're crying "trade secrets" for this to happen. If nouveau can do it, and they're not crying trade secrets over it, then nvidia proper can do it too.
Re: (Score:3)
Move everything to userspace, and use an existing driver, or a very small open driver, to access the card. There should be no reason, even if they're crying "trade secrets" for this to happen. If nouveau can do it, and they're not crying trade secrets over it, then nvidia proper can do it too.
Everyone is free to keep secrets, even you. If you have a problem with their actions then use other chipsets.
Well, they lost me. (Score:5, Interesting)
It's funny, when I used to buy graphics cards, I bought nVidia because the driver was that much better - TwinView meant good multi-monitor support, etc... Now all that has changed. I replaced two nVidia cards with an AMD card, because AMD support their Eyefinity tech even on low-end cards, and my triple monitor setup works perfectly with 3D acceleration on the open drivers, which means I get KMS and no binary blobs. By comparison, I had to use xinerama to get triple monitors with the nVidia driver, no KMS, no 3D acceleration.
It's obvious what we want, open source drivers. If they can't handle that, documentation, but we all know they'll spout the same stuff about NDAs and 3rd party stuff they are licensing and can't reveal, and tell us binary blobs are the only way - well, I don't buy it. Intel manage it well, and AMD are definitely getting there. Binary blobs just don't give the experience any more, that's the reality.
Asking for the empty set? (Score:4, Insightful)
From TFE (email): "Within the constraints I have, what should I and perhaps other NVIDIA employees be contributing to in the kernel?"
I suspect those constraints essentially preclude what would really be useful, so what's the point?
Wayland? (Score:4, Interesting)
Retrofit your monolithic binary blob into a wayland capable architecture and you'll have addressed many concerns such as KMS, EGL, etc.
Supporting it on Tegra would be a step towards running standard accelerated Linux on an ARM phone or tablet and you'll be the slashdot nerd's platform of choice ahead of Adreno, Mali, PowerVR, VideoCore etc.
No more nvidia for me (Score:3)
Re: (Score:3)