AMDVLK 2022.Q3.4 Driver Finally Adds Ray-Tracing Support For RDNA2
AMD's official closed-source Vulkan driver for Windows and Linux has long supported ray-tracing. Mesa's RADV driver has experimentally supported Vulkan ray-tracing too for sometime. Meanwhile AMDVLK as AMD's official open-source Vulkan Linux driver has lacked any RT support.
With today's AMDVLK 2022.Q3.4 release things have finally changed with 64-bit ray-tracing being exposed for Radeon RX 6000 "RDNA2" (Navi 2x) GPUs.
This builds off work we reported back in June of AMD starting a "GPURT" project. The initial GPURT code has now been made public and we have more insight into it. GPURT is:
The GPU Ray Tracing (GPURT) library is a static library (source deliverable) that provides ray tracing related functionalities for AMD drivers supporting DXR (DirectX 12®) and the Vulkan® RT API. The GPURT library is built on top of AMD's Platform Abstraction Library (PAL). Refer to PAL documentation for information regarding interfaces used by GPURT for various operations including command generation, memory allocation etc.
GPURT uses a C++ interface. The public interface is defined in .../gpurt/gpurt, and clients must only include headers from that directory. The interface is divided into multiple header files based on their dependencies and usage.
The PAL abstraction layer is used by AMD's closed-source/official drivers as well as AMDVLK but is not used by the RADV driver, so GPURT will likely have little help for Mesa's RADV driver besides any other tricks that developers may learn from looking at the code.
Meanwhile published today is AMDVLK 2022.Q3.4 and it notes "add 64bit raytracing support for Navi2x" while not noting any limitations or any other details on this AMDVLK ray-tracing support in its initial form.
The AMDVLK 2022.Q3.4 driver also brings performance tuning for the games World War Z and Ashes of the Singularity running on Steam Play. There are also a number of bug fixes with this update, including for Firefox web browser corruption when running on Ubuntu 22.04. There are also some Vulkan conformance test suite (CTS) failures.
I'll be benchmarking this new AMDVLK release shortly for checking out the ray-tracing capabilities and how this open-source driver is performing in general compared to the more commonly used RADV driver by Linux gamers and desktop enthusiasts.