The second update in the space of a week, NVIDIA just today put out another NVIDIA Vulkan Beta driver which further expands the Ray Tracing capabilities on Linux.
Wonderful to see NVIDIA continue pushing Linux forward, after the 440.66.07 driver release yesterday which helped DOOM Eternal through Steam Play Proton and added in thread-capable deferred ray tracing pipeline creation amongst other things we have the 440.66.08 driver out now with these changes and improvements:
- New:
- Added beta support for Ray Queries
- VkPhysicalDeviceRayTracingFeaturesKHR.rayQuery is now VK_TRUE
- SPIR-V: SPV_KHR_ray_query
- GLSL: GLSL_EXT_ray_query
- Fixes:
- Improve performance of large host-visible VkDeviceMemory allocations
- Fixed YCbCr copy of multi-plane images
So what are Ray Queries exactly? According to the official spec, "Ray queries can be used to perform ray traversal and get a result back in any shader stage. Other than requiring acceleration structures, ray queries are performed using only a set of new shader instructions.". More info in the links above.
Reminder: you know it's a special Beta driver thanks to the additional two numbers on the end of the version string, with the newest stable version of the NVIDIA driver for Linux at 440.64 which released on February 28. This special Vulkan developer beta driver is where all the shiny new stuff goes in before making its way into the stable release for everyone.
See this update and all previous on the NVIDIA website.
Quoting: TheRiddickIs RTX and DLSS2.0 coming to Linux sometime? that will be a BIG deciding factor come next gen GPU's. Hopeful AMD will offer a DLSS type solution also but we will see. DLSS2.0 is SIGNIFICANTLY better then 1.0.I have no fear of exposing my ignorance if by so doing I may remedy it. What's a DLSS?
For example Control at 4k with RTX on high gives around 39fps but with DLSS2.0 enabled it gives 78fps and actually looks better then native 4k.
PS. You can use any resolution and upscale it to 4k, even 1080p. However it make not look as good as native 4k.
Last edited by TheRiddick on 3 April 2020 at 5:33 am UTC
Quote
- Improve performance of large host-visible VkDeviceMemory allocations
- Fixed YCbCr copy of multi-plane images
One of these fixes seems to have bumped performance in Wreckfest a bit more over the last *.07 Doom specific patch. Getting perhaps half of Windows performance in that game now (where it was about 1/4 before, then maybe 2/5 with the D:E patch)
Quoting: TheRiddickIs RTX and DLSS2.0 coming to Linux sometime?
RTX is just Nvidia's brand name for Ray-Tracing Acceleration. Support for that is already here: that's what all the Vulkan extensions for it - first as a vendor extension, and then as a vendor-neutral Khronos extension - are all about.
If you're thinking of DXR, which is Microsoft's brand name for DirectX With Raytracing, Nvidia have produced a compiler to automatically turn DirectX raytracing shaders into Vulkan raytracing shaders. Philip Rebohle has said that they haven't got their ducks in a row enough to do that translation any time soon in VKD3D ("To be clear, this isn't supported yet, and it'll take quite a while until we get to a point where we can even think about it.") but maybe Feral could use it in their ports: SotTR has raytracing bling in the Windows version but not the Linux version, but it wouldn't work on Macs, and it wouldn't (currently) work on AMD, so they might not feel it's worth the effort just yet.
For the first iteration of DLSS, each supported game had to be run through Nvidia's neural network, and then the results of that machine learning were included in the (huge) Game-Ready Windows drivers so that the Tensor cores could apply it when running the game. The Linux drivers don't include that data. The second iteration seems to be more generalised, so in principle it could possibly be supported if Nvidia / game devs / middleware devs felt it was worth the effort. Nvidia are squeamish about making their proprietary tech widely available, though: see their substitution of pre-rendered animations rather than using Nvidia Flow in Q2RTX.
See more from me