mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   GPU Computing (https://www.mersenneforum.org/forumdisplay.php?f=92)
-   -   Nvidia transitioning to open source Linux GPU kernel driver (https://www.mersenneforum.org/showthread.php?t=27792)

M344587487 2022-05-11 21:08

Nvidia transitioning to open source Linux GPU kernel driver
 
[URL]https://www.phoronix.com/scan.php?page=article&item=nvidia-open-kernel[/URL]

[URL]https://www.youtube.com/watch?v=uccdgoU47MQ[/URL]

[URL]https://developer.nvidia.com/blog/nvidia-releases-open-source-gpu-kernel-modules/[/URL]


[quote]NVIDIA's open kernel modules is already considered "production ready, opt-in" for data center GPUs. For GeForce and workstation GPUs, the open kernel module code is considered "alpha quality" but will be ramped up moving forward with future releases.[/quote][quote]Only Turing and newer GPUs will be supported by this open-source kernel driver. Pre-Turing GPUs are left to using the existing proprietary kernel drivers or the Nouveau DRM driver for that matter. Turing and newer is a hard requirement due to being dependent upon the GPU System Processor (GSP).[/quote][quote]The GSP is binary-only firmware loaded at run-time. The open-source kernel driver explicitly depends upon the GSP-supported graphics processors.[/quote][quote]Mainline ambitions for NVIDIA's Linux kernel driver - It won't go upstream though near-term / in its current form. At this point the API/ABI is not stabilized and the open kernel driver code will be tied to particular driver releases. NVIDIA is ultimately working to stabilize its API/ABI as well as the GSP firmware interface. Once they work through all these technicalities, the driver (or whatever form of it in the future) may then look at being upstreamed into the kernel.[/quote]This is a positive move I definitely didn't expect them to make. Consumer being considered alpha probably means it's not really usable or stable, consumer seems like an afterthought so who knows how quickly they'll work on bringing geforce up to snuff. How positive the move actually is for consumers remains to be seen, it will take continued heavy resources poured in from nvidia and it's not clear how invested they are in getting the consumer-side shored up in a timely fashion. Open sourcing is probably at least partially in response to intel getting into the game server-side, and things like userspace are not currently being open sourced.

Maybe many years down the line there'll be a usable geforce driver in the mainline kernel, that would be wild.

ixfd64 2022-05-12 01:39

I assume there will be no changes on the Windows side?

M344587487 2022-05-12 11:02

That's my assumption, a Linux kernel module would/should be tied quite heavily into existing components of the Linux kernel which wouldn't translate well to another kernel and also I don't see why they'd try to replace the proprietary windows driver. Because these open kernel drivers are dual MIT/GPL it's likely that parts of the windows proprietary driver will be transitioned to using the open plumbing under the hood where appropriate, but I wouldn't expect the proprietary driver on windows to ever be replaced. Note that only the kernel driver is talked about, all the other components are still closed. If in the future some of the other components get replaced with open source versions, it's those components that are most likely to be cross-platform IMO. I wouldn't expect CUDA drivers to ever be open sourced but then I never expected this move either.

Because Nvidia have used blobs for so long they've had to bring their own components, a big part of the benefit of open sourcing is that they can directly use GPL'd components in the kernel, features and backend. Nvidia hasn't committed to directly contributing to the mainline kernel which would be a huge undertaking, it seems likely that this is in part because they've focused on plumbing the features but not necessarily transitioning much of the backend (maybe they will/have or maybe they'll continue to use their own components which you'd assume are cross-platform and already exist). It took AMD many years to have anything to show for their open source efforts, and many years after that of whipping into good enough shape to be included in the mainline kernel. Nvidia might not be interested in officially maintaining mainline at all, current efforts are a good first step but it does seem a tentative step towards open source with few commitments attached. Maybe down the road they'll sponsor nouveau or spin up a team to translate this module work into a form suitable for the mainline kernel, if that's phase 2 we still appear to be firmly in phase 1.

Also note that consumer may mostly be in an alpha state because of the display drivers, the server cards are supposedly in a production ready state. This might mean that we can use this open module for prime hunting now(compile own kernel)/soon(the module will be available for the kernels shipped with ubuntu/fedora/etc "soon"), it might have to be headless or where an nvidia card isn't the primary display driver but there's a chance it can work. Good luck to anyone that tries, expect pain.

AwesomeMachine 2022-05-24 21:02

Prevent reverse engineering and cover up patent violations
 
NVidia has 2 major obstacles to actually being open source. On the one hand, they want to prevent reverse engineering of the silicon. On the other, they want to hide what needs to be hidden, for any of a number of reasons, not the least of which is infringement of patents owned by others!



It would be great if the firmware and kernel module were open source, but that will never happen. The latest move is just one in a shell game, moving proprietary code from one place to another.

xilman 2022-05-25 09:32

[QUOTE=AwesomeMachine;606430]NVidia has 2 major obstacles to actually being open source. On the one hand, they want to prevent reverse engineering of the silicon. On the other, they want to hide what needs to be hidden, for any of a number of reasons, not the least of which is infringement of patents owned by others!



It would be great if the firmware and kernel module were open source, but that will never happen. The latest move is just one in a shell game, moving proprietary code from one place to another.[/QUOTE]Not sure the reverse engineering argument holds up.

Anyone capable of designing and building competitive hardware is almost certainly capable of disassembly of the firmware.

There is a long history of this happening, perhaps the most famous being Compaq's BIOS for IBM-PC compatible machines.


All times are UTC. The time now is 15:07.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2023, Jelsoft Enterprises Ltd.