Mesa NVK Lands Support For VK_NVX_image_view_handle - Needed For NVIDIA DLSS
([Nouveau] 4 Hours Ago
VK_NVX_image_view_handle)
- Reference: 0001584937
- News link: https://www.phoronix.com/news/Mesa-NVK-NVK-Image-Handle
- Source link:
Just days ago Valve developer Autumn Ashton announced [1]initial NVIDIA DLSS upscaling for the open-source Mesa NVK driver . One of those needed Vulkan extensions, VK_NVX_image_view_handle, is already merged to Mesa Git.
Yesterday prior to the [2]Mesa 25.3 code branching / feature freeze , Ashton landed the VK_NVX_image_view_handle implementation for the Mesa open-source NVIDIA "NVK" driver. This is one of two extensions needed for Deep Learning Super Sampling support: the other VK_NVX_binary_import extension did not land in time for Mesa 25.3.
VK_NVX_image_view_handle allows applications/games to query an opaque handle from an image view for use as a sampled image or storage image. With [3]this commit amounting to just a few dozen lines of code, this NVIDIA experimental vendor extension is now wired up for NVK. This is also the first Mesa Vulkan driver implementing this NVIDIA extension.
The other extension, VK_NVX_binary_import, as of yesterday is also now under review via [4]this merge request for the NVK driver. The implementation of this NVIDIA binary import extension is enough to satisfy DLSS at least. Ashton explained there:
"Right now, this will only work where there is compatible bytecode available for the current physical device and will return an error in vkCreateCuModuleNVX if none is present.
DXVK-NVAPI and DLSS handle this error gracefully and will disable the affected features.
The NVIDIA driver would do PTX -> bytecode on the fly to handle this, but we don't have PTX->NIR yet, and that is a very large undertaking not done by this MR."
It's very intriguing that if/when they do a NVIDIA PTX to NIR pass for being able to go from that common NVIDIA representation to the NIR intermediate representation used by different Mesa drivers. That could open many other interesting doors depending upon how verbose and reliable their PTX to NIR implementation becomes.
Exciting times thanks to Valve.
[1] https://www.phoronix.com/news/NVIDIA-DLSS-NVK-Experimental
[2] https://www.phoronix.com/news/Mesa-26.0-Starts-Development
[3] https://cgit.freedesktop.org/mesa/mesa/commit/?id=15d375dc6ea7376b3d44192dc23297a44c95f472
[4] https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37898
Yesterday prior to the [2]Mesa 25.3 code branching / feature freeze , Ashton landed the VK_NVX_image_view_handle implementation for the Mesa open-source NVIDIA "NVK" driver. This is one of two extensions needed for Deep Learning Super Sampling support: the other VK_NVX_binary_import extension did not land in time for Mesa 25.3.
VK_NVX_image_view_handle allows applications/games to query an opaque handle from an image view for use as a sampled image or storage image. With [3]this commit amounting to just a few dozen lines of code, this NVIDIA experimental vendor extension is now wired up for NVK. This is also the first Mesa Vulkan driver implementing this NVIDIA extension.
The other extension, VK_NVX_binary_import, as of yesterday is also now under review via [4]this merge request for the NVK driver. The implementation of this NVIDIA binary import extension is enough to satisfy DLSS at least. Ashton explained there:
"Right now, this will only work where there is compatible bytecode available for the current physical device and will return an error in vkCreateCuModuleNVX if none is present.
DXVK-NVAPI and DLSS handle this error gracefully and will disable the affected features.
The NVIDIA driver would do PTX -> bytecode on the fly to handle this, but we don't have PTX->NIR yet, and that is a very large undertaking not done by this MR."
It's very intriguing that if/when they do a NVIDIA PTX to NIR pass for being able to go from that common NVIDIA representation to the NIR intermediate representation used by different Mesa drivers. That could open many other interesting doors depending upon how verbose and reliable their PTX to NIR implementation becomes.
Exciting times thanks to Valve.
[1] https://www.phoronix.com/news/NVIDIA-DLSS-NVK-Experimental
[2] https://www.phoronix.com/news/Mesa-26.0-Starts-Development
[3] https://cgit.freedesktop.org/mesa/mesa/commit/?id=15d375dc6ea7376b3d44192dc23297a44c95f472
[4] https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37898