Here’s an interesting one, a developer from NVIDIA noted on the Linux Kernel Mailing List that NVIDIA has been designing some new open source drivers. So I did some digging and got an interesting response.
Here’s what they said that originally caught my attention (source, thanks Luke!):
I got curious, so I popped the NVIDIA developer who said that an email asking if they would mind clarifying it a bit, so they did and they allowed me to share their reply:
This could be something very interesting, but it sounds like it’s still a long ways off right now. It’s interesting to note that NVIDIA are working behind the scenes on more open drivers for Linux, which can only be a good thing for our future. Open drivers are one major reason I keep seeing people switching over to AMD, so perhaps in future with the work from this NVIDIA developer (and others they mentioned) things may change for the better.
They may even go the amdgpu route, where part of it is open and part closed.
Here’s what they said that originally caught my attention (source, thanks Luke!):
Quote[...] when designing some recent new (open-source, yay!) device drivers[...]
I got curious, so I popped the NVIDIA developer who said that an email asking if they would mind clarifying it a bit, so they did and they allowed me to share their reply:
QuoteHi Liam,
Here, I was referring to the UVM (Unified [Virtual] Memory) device driver. That shows up as nvidia-uvm.ko, which in turn depends on another driver (currently nvidia.ko) to handle GPU setup. UVM does page faulting, DMA via our GPU's copy engines (DMA units), and generally figures out what pages belong where.
UVM is about 66,000 lines, it's all open source (MIT licensed, right now), and you can find it by running `NVIDIA*.run -x` and looking at the extracted source code.
Future: naturally, it would be interesting to be able to drop in something else (Nouveau?? Tegra? other?) to optionally take the place of nvidia.ko. However, that may or may not happen--there are a lot of things going on, and despite being in the middle of it all, I still cannot yet predict exactly what module layout we'll end up with in, say, a few years. The interface between nvidia.ko and nvidia-uvm.ko is much messier than I'd like, and it will take some engineering time to clean it up--that's good to do in any case...but I'm digressing.
As for what I think you really care about: there are other open source initiatives in NVIDIA. I and others are actively working on them, but unfortunately, we don't quite have a publicly announceable thing yet.
This could be something very interesting, but it sounds like it’s still a long ways off right now. It’s interesting to note that NVIDIA are working behind the scenes on more open drivers for Linux, which can only be a good thing for our future. Open drivers are one major reason I keep seeing people switching over to AMD, so perhaps in future with the work from this NVIDIA developer (and others they mentioned) things may change for the better.
They may even go the amdgpu route, where part of it is open and part closed.
Some you may have missed, popular articles from the last month:
I'm not entirely sure why they can't just open-source all their drivers? How are they making money or whatever by not open-sourcing them?
0 Likes
Quoting: Ads20000I'm not entirely sure why they can't just open-source all their drivers? How are they making money or whatever by not open-sourcing them?
They might have patents implementations that they have to work around (because they have integrated them under NDA) and specific optimizations for games, basically loads of secret sauces they don't want to open yet...
Last edited by Emazza on 16 March 2017 at 11:41 pm UTC
4 Likes, Who?
Looks like pressure from AMD starts affecting them at last. Good development!
No idea about Nvidia's specifics, but in general, open sourcing a huge codebase that used to be closed isn't an easy process. Which is demonstrated by AMD trying to open up their current Vulkan and OpenCL implementations.
Firstly, some things can be copyrighted by others and not by the company which is trying to open it up. They'd need to replace those if they can't make original owners open it (usually too hard). Then, they need to be ready to increase risk of patent trolling attacks, since once the code is open, trolls can jump on it, and claim they violate some garbage software patent XYZ. Some even explicitly said, they aren't opening their GPU drivers because of that:
https://www.youtube.com/watch?v=dPjSm_98rgo&t=3m20s
Last edited by Shmerl on 17 March 2017 at 12:12 am UTC
Quoting: Ads20000I'm not entirely sure why they can't just open-source all their drivers?
No idea about Nvidia's specifics, but in general, open sourcing a huge codebase that used to be closed isn't an easy process. Which is demonstrated by AMD trying to open up their current Vulkan and OpenCL implementations.
Firstly, some things can be copyrighted by others and not by the company which is trying to open it up. They'd need to replace those if they can't make original owners open it (usually too hard). Then, they need to be ready to increase risk of patent trolling attacks, since once the code is open, trolls can jump on it, and claim they violate some garbage software patent XYZ. Some even explicitly said, they aren't opening their GPU drivers because of that:
https://www.youtube.com/watch?v=dPjSm_98rgo&t=3m20s
Last edited by Shmerl on 17 March 2017 at 12:12 am UTC
9 Likes, Who?
Not to mention, there is potential for code from some other companies in there. Or (as previously mentioned) some things that were added into the drivers long ago that the copyright holders won't re-license. I'm sure even some 3DFx code lives on there, since nVidia bought them oh so long ago.
(on an semi-related note, I've been playing around with my Atari STs, and every time I mention nVidia, I think of NVDI... )
(on an semi-related note, I've been playing around with my Atari STs, and every time I mention nVidia, I think of NVDI... )
0 Likes
Good to hear. I think they will have to start opening things if they want to remain in the lead, otherwise AMD will slowly take over.
2 Likes, Who?
I'll be highly skeptical of this, however. Nvidia just doesn't seem like they're really that open to me. Just look at G-Sync, there's nothing stopping Nvidia from adopting Freesync, rather than trying to sell their overpriced G-Sync tech.
5 Likes, Who?
If Nvidia wants to compete to win me back - open source drivers are the only possibility.
I must have spent about $1,500 on GPUs in the last couple years GTX 290, GTX 460, GTX 650, GTX 750 Ti SC, GTX 970 SSC x 2, RX 480.
Nvidia is going to take a lot of action before I consider them a viable alternative and competitive.
MESA 17 on Polaris is pretty damn good, they're late to the party and behind track.
So @nvidia - you wan't my money? Come get it out of my wallet - get the work done on a fully open source driver and make it outperform AMD in gaming on Linux - that is what it will take to get me and my 15 Linux Workstations back to the green side.
Make no such action and all our Steam Boxes will definitely be AMD. No tricks, just a straight up fact about the future.
(Oh, and also I refuse to ever own another nVidia Laptop until/unless the driver is open source and performs well, I'm looking forward to Polaris APU - I hear it's gonna kick-ass and not only that it'll cost less in laptop form so that's nice too).
Last edited by ElectricPrism on 17 March 2017 at 3:34 am UTC
I must have spent about $1,500 on GPUs in the last couple years GTX 290, GTX 460, GTX 650, GTX 750 Ti SC, GTX 970 SSC x 2, RX 480.
Nvidia is going to take a lot of action before I consider them a viable alternative and competitive.
MESA 17 on Polaris is pretty damn good, they're late to the party and behind track.
So @nvidia - you wan't my money? Come get it out of my wallet - get the work done on a fully open source driver and make it outperform AMD in gaming on Linux - that is what it will take to get me and my 15 Linux Workstations back to the green side.
Make no such action and all our Steam Boxes will definitely be AMD. No tricks, just a straight up fact about the future.
(Oh, and also I refuse to ever own another nVidia Laptop until/unless the driver is open source and performs well, I'm looking forward to Polaris APU - I hear it's gonna kick-ass and not only that it'll cost less in laptop form so that's nice too).
Last edited by ElectricPrism on 17 March 2017 at 3:34 am UTC
4 Likes, Who?
I'll believe it when I see it.
4 Likes, Who?
Quoting: AimelaJust look at G-Sync,
To be fare the new Freesync2 is closed loop just like g-sync also. I don't know if AMD will be able to sell freesync2 with the way they intend to do it (exclusive product selection among other things).
2 Likes, Who?
Quoting: AimelaI'll be highly skeptical of this, however. Nvidia just doesn't seem like they're really that open to me. Just look at G-Sync, there's nothing stopping Nvidia from adopting Freesync, rather than trying to sell their overpriced G-Sync tech.
So far NVidia only went (partly) open-source when they were pressured
by boundary conditions, in particular their bigger customers.
See Tegra for example.
They simply don't have a track record that hints they are a (F)OSS-friendly company.
I'd welcome it, if that changes.
Yet I highly doubt it.
Last edited by sub on 17 March 2017 at 9:01 am UTC
2 Likes, Who?
See more from me