NVK: Nvidia's Open-Source Vulkan Driver Gains Experimental DLSS Support

Photo: Tom's Hardware
Quick answer
Nvidia's open-source Vulkan driver NVK now supports DLSS experimentally by importing precompiled CUDA libraries, though functionality is limited to GPUs with compatible bytecode.
The open-source Vulkan driver NVK for Nvidia GPUs has gained experimental support for DLSS technology. The code is now available in the Mesa 26.2-devel development branch, but the implementation comes with several limitations. Instead of fully rewriting the upscaling algorithm, the driver loads precompiled CUDA libraries from Nvidia, enabling DLSS only on GPUs with compatible bytecode.
The technology operates via the Vulkan extension VK_NVX_binary_import, which allows importing and executing precompiled CuBIN binary files. The initial proposal for this feature was introduced in 2023, with final refinements taking several more months. Currently, DLSS support is activated only through the environment variable NVK_EXPERIMENTAL=dlss, as unresolved issues remain in the code.
The primary limitation of NVK is its inability to compile Nvidia's PTX code into the intermediate NIR representation used by Mesa drivers. Nvidia's proprietary driver bypasses this by compiling PTX into GPU bytecode on the fly. As a result, NVK can only run DLSS where prebuilt binary files exist for a specific GPU model.
NVK was launched in 2022 with contributions from developers at Collabora, Red Hat, and other companies. By late 2024, it became the first open-source Vulkan driver for Nvidia GPUs to achieve Khronos certification for Vulkan 1.4 compliance. The driver operates atop the Nouveau kernel module and is not tied to the open-source kernel modules Nvidia provides with its proprietary software stack.
According to Faith Ekstrand, a lead developer on the project, NVK delivers roughly 50% of the performance of Nvidia's proprietary driver in most games. Ray tracing support remains under active development, and the team notes a shortage of resources for accelerated project growth.
Common questions
- What is NVK, and which GPUs does it support?
- NVK is an open-source Vulkan driver for Nvidia GPUs, developed by the community. It supports Turing (RTX 20 and GTX 16 series) and newer architectures, including Ampere and Ada Lovelace.
- How does DLSS work in NVK?
- DLSS in NVK is implemented by loading precompiled CUDA libraries from Nvidia using the Vulkan extension VK_NVX_binary_import. This allows DLSS to run but only on GPUs with available compatible bytecode.
- Why is DLSS support in NVK considered experimental?
- DLSS support in NVK is marked as experimental due to known bugs and limitations: the driver cannot compile PTX code in real-time like Nvidia's proprietary driver, restricting supported devices.
- What are NVK's prospects compared to Nvidia's proprietary driver?
- NVK currently delivers around 50% of Nvidia's proprietary driver performance in most games, while ray tracing support remains under development. The team cites limited resources for accelerated project growth.
Dzen feed: /feed/dzen.xml · RSS: /feed.xml