Nvidia Engineer Asks How the Company Can Improve Linux Support
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?'"
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.
Can You Say Linux? I Knew That You Could.
... Some help is better than none.
Okay, so how about pointing him in the direction of the nouveau project? Even if his company refuses to share the full API, just a few hints here and there could make an enormous difference.
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,
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.
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".
#DeleteChrome
Seriously? What do you think this is about? What's the licence on this that makes you think it's non-free? You seriously don't think this licence cuts it?
Laissez lire, et laissez danser; ces deux amusements ne feront jamais de mal au monde. - Voltaire
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
"I've got more toys than Teruhisa Kitahara."
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 auxillary chip prevents just those chips from being able to fully support some type of function. So you throw the semi-rejects into lower-price point models and disable some of the features in the BIOS so it doesn't overdrive the actual capability.
It's actually very rare for all the boards in the same model and version line to all have the same exact chips... and even when they do they are not usually all capable of the same performance. It's not done to gouge the customers who pay more or to make the lower-end models suffer, it's done to maximize the amount of money you can get out of a manufacturing run. Just because they didn't tell you specifically why board A is cheaper with less functions than board B when they appear identical doesn't mean they're playing a shell game, it just means you aren't privy to all the information.
I've worked on GPU drivers, and while much of what you say is correct, you seem to be conflating 'open source developer' with 'some guy working in his spare time'. When I was hacking on GPU drivers, it was for a company that sold a compiler targeting them for HPC. There are other companies with a vested interest in improving GPU drivers, for example those selling big GPU clusters, and they can employ competent people to hack on the drivers. There are also a few small companies that specialise in writing graphics drivers who are happy to take on contracts to write drivers for new cards (GPU makers often subcontract out some of this work, especially in the embedded space).
I am TheRaven on Soylent News
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.