Linux gamers running NVIDIA hardware are one step closer to using DLSS without the proprietary driver. Code enabling NVIDIA’s Deep Learning Super Sampling on NVK, the open-source Vulkan driver for NVIDIA GPUs, merged into Mesa 26.2-devel today, giving the driver the ability to run DLSS upscaling in modern titles, including games launched through Steam Play.
NVK is the community-built Vulkan implementation for NVIDIA hardware that lives inside the Mesa graphics stack, developed primarily by Collabora alongside contributors from Red Hat, Valve, and the wider open-source graphics community. Unlike NVIDIA’s official driver, it ships as part of the standard Linux graphics stack rather than as a separate proprietary download. DLSS, meanwhile, has long been one of the strongest arguments for sticking with NVIDIA’s proprietary driver on Linux, since the AI-upscaling feature simply hasn’t worked on the open-source side — until now.
A year in the making
Getting DLSS running on NVK has been a multi-stage effort. An early proof of concept surfaced last October, when Valve developer Autumn Ashton got DLSS functioning experimentally after a few days of work, tracing it back to a pair of Vulkan extensions DLSS depends on. The simpler of the two, VK_NVX_image_view_handle, landed in Mesa within weeks. The harder piece, VK_NVX_binary_import, became the subject of a pull request Ashton opened roughly a year ago and which remained unmerged as Ashton’s involvement in Mesa development tapered off in subsequent months.
That changed when developer Thomas Andersen took over the patch about two months ago, untangling merge conflicts and pushing through additional fixes. Andersen’s follow-up work is what finally cleared review and landed in Mesa today.
How the extension works
VK_NVX_binary_import lets an application import and execute NVIDIA’s CuBIN binaries: ELF files containing CUDA code that’s already been compiled to run directly on NVIDIA GPU hardware. Because DLSS is built on top of CUDA kernels rather than being a from-scratch shader implementation, supporting this extension is what allows NVK to load and execute the same upscaling binaries NVIDIA’s own driver uses, instead of requiring an independent open-source reimplementation of DLSS itself.
Still experimental, with a hardware caveat
The feature won’t be on by default. With a number of known bugs still outstanding, DLSS support in NVK ships hidden behind the NVK_EXPERIMENTAL=dlss environment variable, meaning anyone who wants to try it will need to enable it manually.
There’s also a structural limitation tied to how the binaries work. Because DLSS relies on those precompiled CUDA binaries, NVK can only run it where compatible bytecode already exists for the GPU in question. NVIDIA’s proprietary driver works around this by compiling its intermediate PTX format into GPU-specific bytecode on the fly. NVK has no equivalent path yet, since that would require a way to translate NVIDIA’s PTX into NIR, the intermediate representation Mesa’s drivers are built on — a substantial undertaking nobody has tackled so far.
What’s next
The merge arrives well ahead of Mesa 26.2’s stable release, expected in August. It won’t make DLSS a polished, default-on experience overnight, but it closes one of the last major gaps between NVK and NVIDIA’s proprietary driver, and adds to a growing list of NVK milestones that includes full Vulkan 1.4 conformance and broad compatibility with Steam Play’s Proton, DXVK, and VKD3D-Proton layers.
Source: Phoronix
