Improved nvidia-bug-report.sh to collect ACPI tables when the acpidump tool is available.

Added Vulkan and OpenGL+GLX support for PRIME render offload. Please see the PRIME Render Offload chapter in the README for system requirements and configuration details.

Added support for changing Digital Vibrance in the display controls section of nvidia-settings on Turing hardware.

Fixed the cuvidParseVideoData API in the NVCUVID driver to correctly propagate errors returned by the PFNVIDSEQUENCECALLBACK callback function to the application.

Fixed a bug that caused the NVIDIA X driver to behave incorrectly or crash when a client queried Xinerama information on X servers with a non-NVIDIA X screen as screen 0.

Fixed the "Image Settings" options in the "OpenGL Settings" page of nvidia-settings for Quadro GPUs. Previously, OpenGL rendering on Quadro would behave as if the "High Quality" option were selected regardless of the selection. Now, the setting will default to "High Quality" for Quadro but selecting a lower option will affect rendering accordingly. (Other GPUs are unchanged: the default remains "Quality", but other options can be selected if desired.)

Fixed a bug that could cause Vulkan applications to generate spurious warning messages about a missing NV-GLX extension.

Removed the non-GLVND OpenGL libraries from the NVIDIA Linux driver installation package. The GLVND OpenGL libraries were introduced in release 361.16, and have been installed by default since release 364.12, with the non-GLVND versions available as an alternative via the "--no-glvnd-glx-client" and "--no-glvnd-egl-client" installer options. As the non-GLVND libraries are no longer included in the installation package, these options will no longer have any effect.

Updated nvidia-installer to make compiler mismatches non-fatal when adding precompiled kernel interfaces to an installer package using the "--add-this-kernel" option, to be more consistent with the behavior when installing without precompiled interfaces.

Fixed the NvEncodeAPI driver to correctly reject the encoding of sequences with resolutions smaller than what the NVENC supports.

Fixed display color range handling on pre-Turing GPUs, such that when limited color range is selected through the display controls page in nvidia-settings, output pixel values will be correctly clamped to Consumer Technology Association (CTA) range.

Known issue:

Vulkan with flipping enabled on Quadro cards can lead to graphic corruption.
If you think you have run into it you can do either of the following as a workaround:

Note that many Linux distributions provide their own packages of the NVIDIA Linux Graphics Driver in the distribution's native package management format. This may interact better with the rest of your distribution's framework, and you may want to use this rather than NVIDIA's official package.

Also note that SuSE users should read the SuSE NVIDIA Installer HOWTO before downloading the driver.

Installation instructions: Once you have downloaded the driver, change to the directory containing the driver package and install the driver by running, as root, sh ./NVIDIA-Linux-x86_64-435.21.run

One of the last installation steps will offer to update your X configuration file. Either accept that offer, edit your X configuration file manually so that the NVIDIA X driver will be used, or run nvidia-xconfig

Note that the list of supported GPU products is provided to indicate which GPUs are supported by a particular driver version. Some designs incorporating supported GPUs may not be compatible with the NVIDIA Linux driver: in particular, notebook and all-in-one desktop designs with switchable (hybrid) or Optimus graphics will not work if means to disable the integrated graphics in hardware are not available. Hardware designs will vary from manufacturer to manufacturer, so please consult with a system's manufacturer to determine whether that particular system is compatible.