NVIDIA Transitioning To Official, Open-Source Linux GPU Kernel Driver
The day has finally come: NVIDIA is publishing their Linux GPU kernel modules as open-source! To much excitement and a sign of the times, the embargo has just expired on this super-exciting milestone that many of us have been hoping to see for many years. Over the past two decades NVIDIA has offered great Linux driver support with their proprietary driver stack, but with the success of AMD's open-source driver effort going on for more than a decade, many have been calling for NVIDIA to open up their drivers. Their user-space software is remaining closed-source but as of today they have formally opened up their Linux GPU kernel modules and will be maintaining it moving forward. Here's the scoop on this landmark open-source decision at NVIDIA.
Many have been wondering in recent years what sort of NVIDIA open-source play the company has been working on... Going back to the end of 2019 have been signals of some sort of open-source driver effort and various rumblings have continued since that point. Last month I also pointed out a new open-source kernel driver appearing as part of the NVIDIA Tegra sources. Well, now the embargo has just expired and the lid can be lifted - NVIDIA is providing a fully open-source kernel driver solution for their graphics offerings. This isn't limited to just Tegra or so but spans not only their desktop graphics but is already production-ready for data center GPU usage.
(Score: 1, Insightful) by Anonymous Coward on Friday May 13 2022, @04:52AM (9 children)
Say what? Can you rephrase that in English?
(Score: 2) by turgid on Friday May 13 2022, @07:16AM (6 children)
The GPU side is closed-source. The CPU side is Open Source. The problem with AMD's special driver is it's tied to particular versions of particular distros. No Slackware support.
I refuse to engage in a battle of wits with an unarmed opponent [wikipedia.org].
(Score: 0) by Anonymous Coward on Friday May 13 2022, @08:19AM
What? This only applies to the proprietary driver, which nobody uses. AMD only keeps it around for specific workstation users. That's why it is only for Redhat and Ubuntu. All home users and 99% of professional users use the free driver that works everywhere.
(Score: 2, Informative) by higuita on Friday May 13 2022, @02:17PM (4 children)
what?! where did you get that info?
i use slackware and i DO PLAY a lot in my AMD R480 card, without any problem... and i do use always the latest stable kernel and slackware -current, so not even a problem with upgrades to some random mix of kernel and mesa
(Score: 1) by higuita on Friday May 13 2022, @02:20PM (3 children)
are you talking about the AMD close driver? if yes, unless you have really some reason to run it, you should use the open source drivers, they are better, faster and really plug and play. Even AMD recommends that. The close drivers exist only for some specific reasons (certification needs, brand new hardware, complete opencl support and any new feature not yet ported to the open source drivers)
(Score: 2) by turgid on Friday May 13 2022, @02:58PM (2 children)
Complete OpenCL support. Right, I can understand why, but that restricts me to precisely two Linux distros. At least nVidia's driver will install on almost any distro, including the one that I use, Slackware.
I refuse to engage in a battle of wits with an unarmed opponent [wikipedia.org].
(Score: 0) by Anonymous Coward on Friday May 13 2022, @03:54PM (1 child)
There are many guides for installing the proprietary GPU driver on unsupported distros.
There is also ROCm, which provides open source opencl support for many of AMD's GPUs.
(Score: 2) by turgid on Friday May 13 2022, @07:51PM
That's nice, but evil nVidia provides me with something I can just download and run which compiles the relevant shim layer and writes the config file. Why can't AMD do the same? I suppose they don't want my business. Fair enough. I only buy a modest graphics card every 5 years.
I refuse to engage in a battle of wits with an unarmed opponent [wikipedia.org].
(Score: 1) by higuita on Friday May 13 2022, @02:15PM (1 child)
yes, in AMD, almost everything is fully open source
you have kernel, user space totally open source (opengl, opencl and vulkan, while opengl and vulkan are using the latest standards and good performance, opencl is not yet there, something work, others do not)
so you if you have a modern linux distro, you plug your amd card and boot and everything should work fine without any change or action from the user.
you DO NOT NEED the close source AMD driver, unless you have a just released hardware, or need certified opengl drivers (medical and some CAD usage) or full openCL support or some new feature that opensource drivers (mesa) do not have yet... so even by AMD recommendation, you should use open source drivers and from the previous list, only certification and some parts of opencl (that few people use, so the development is slower) isn't usually solved a few months later if you can wait
The AMD GPU firmware is not opensource, but almost no hardware firmware is open source... bit AMD firmware (and almost all other firmware) are between 2k and 250k, not almost 40MB as this nvidia "firmware"
Just to compare, some wifi and gpu firmware on my current computer:
$ ls -lh /lib/firmware/brcm/brcmfmac4366c-pcie.bin /lib/firmware/nvidia/470.103.01/gsp.bin /lib/firmware/rtw89/rtw8852a_fw.bin /lib/firmware/i915/icl_guc_33.0.0.bin /lib/firmware/radeon/kaveri_uvd.bin
-rw-r--r-- 1 root root 1,1M mar 10 07:05 /lib/firmware/brcm/brcmfmac4366c-pcie.bin
-rw-r--r-- 1 root root 377K mar 10 07:05 /lib/firmware/i915/icl_guc_33.0.0.bin
-rw-r--r-- 1 root root 35M jan 6 12:15 /lib/firmware/nvidia/470.103.01/gsp.bin
-rw-r--r-- 1 root root 228K mar 10 07:05 /lib/firmware/radeon/kaveri_uvd.bin
-rw-r--r-- 1 root root 1,4M mar 10 07:05 /lib/firmware/rtw89/rtw8852a_fw.bin
$ find /lib/firmware/ -size +5M -ls
-rw-r--r-- 1 root root 5652688 mar 10 07:05 /lib/firmware/qcom/sdm845/modem.mbn
-rw-r--r-- 1 root root 10420560 mar 10 07:05 /lib/firmware/qcom/sdm845/adsp.mbn
-rw-r--r-- 1 root root 20434408 mar 10 07:05 /lib/firmware/liquidio/lio_23xx_vsw.bin
-rw-r--r-- 1 root root 6683216 mar 10 07:05 /lib/firmware/netronome/flower/nic_AMDA0058.nffw
-rw-r--r-- 1 root root 36011968 jan 6 12:15 /lib/firmware/nvidia/470.103.01/gsp.bin
So yes, nvidia firmware is by far the largest one
(Score: 0) by Anonymous Coward on Friday May 13 2022, @03:57PM
For the most part you don't need the proprietary driver even for new hardware. Usually the kernel support is released at the same time as the hardware, or even a little earlier.