Nvidia: Difference between revisions

No edit summary
No edit summary
Line 1: Line 1:
There are several drivers that allow Nvidia GPUs to work:
There are several kernel drivers that allow Nvidia GPUs to work:


* Nouveau is the stable 3rd-party open-source driver. You probably have it by default.
* Nouveau is the stable 3rd-party open-source driver. You probably have it by default.
* Nvidia's proprietary kernel module. Better 3D performance than nouveau.
* Nvidia's proprietary kernel module. Better 3D performance than nouveau.
* Nvidia's open-source kernel module, which is beta-quality and x11-only.
* Nvidia's open-source kernel module, which is beta-quality and x11-only.
* Nvidia's mesa-nvk.


This article aims to explain how to use all three of the non-default drivers, and how to disable the Nvidia GPU if you don't want it to make heat.
This article aims to explain how to use all three of the non-default drivers, and how to disable the Nvidia GPU if you don't want it to make heat.
(A GPU driver is not ''purely'' kernel-mode; there are also userspace parts that allow the graphics API to use the kernel part. Mesa, for example, has serspace parts for Nouveau and NVK; they are automatically used when appropriate, so no configuration is needed.<ref>If you insist on checking which driver is in use, try running <code>vulkaninfo | grep -i "deviceName\|driverID"</code>. If you see DRIVER_ID_MESA_NVK, that means you are on the shiny new open-source Vulkan driver.</ref> Nvidia's two kernel drivers also need to be hooked up to X11 using userspace libraries.)


= The proprietary driver =
= The proprietary driver =
Line 384: Line 385:
</syntaxHighlight>
</syntaxHighlight>


= The nvidia-open driver =
= The Nvidia open driver =
The Nvidia open driver is enabled via:
The Nvidia open driver is enabled via:
<pre>
<pre>
Line 391: Line 392:
</pre>
</pre>


Really, just copy over the proprietary config above and toggle the "open" option. A lot of the userspace parts are shared, so you still need to enable unfree.
The Nvidia open driver is ''very'' similar to its proprietary sibling. Most content in the proprietary section above apply; just copy over the proprietary config above and toggle the "open" option, and you are set.
 
Like its proprietary sibling, it also requires some non-free userspace packages that allow X11 to talk to the kernel driver. As a result, you still need to enable unfree packages.


Not everything will work, and it will probably not be as stable as its proprietary sibling. Performance may be lower.
Be warned that the Nvidia open driver is considered "beta quality". Performance may be very slightly lower.


= Disable Nvidia dGPU completely =
= Disable Nvidia dGPU completely =