Announcing new Vulkan® ray tracing extension support in our latest driver

Following a brief spell in our beta driver, we’re delighted to announce that support for the following new Vulkan® ray tracing extensions is now available in our main Radeon™ Adrenalin driver 20.11.3 onwards:

  • VK_KHR_acceleration_structure
    • This extension provides acceleration structures for representing geometry that is spatially sorted. Acceleration structures are the most common way for quickly identifying potential ray intersections by ray tracing techniques.
  • VK_KHR_ray_tracing_pipeline
    • This extension introduces ray tracing pipelines along with new shader domains and an indirection table to link shader groups with acceleration structures.
  • VK_KHR_ray_query
    • This extension introduces ray queries, which can be used by any shader type outside of the optional dedicated ray tracing pipeline to return traversal results to the calling shader.
  • VK_KHR_deferred_host_operations
    • This extension defines the infrastructure and usage patterns for deferrable commands, which allows dependent extensions to defer their own operations. The VK_KHR_deferred_host_operations extension itself does not specify any commands as deferrable.
  • VK_KHR_pipeline_library
    • This extension introduces pipeline libraries. A pipeline library is a new special pipeline type that defines a set of pipeline states. It cannot be bound, rather it can be linked into other pipelines.

In addition to the ray tracing extensions above, there’s also now support for:

  • VK_KHR_shader_terminate_invocation
    • This extension indicates support for the SPV_KHR_terminate_invocation SPIR-V extension. The SPIR-V extension introduces a new instruction OpTerminateInvocation that allows a shader invocation to immediately terminate, which provides the behavior required by the GLSL discard statement.

Our Vulkan® Memory Allocator library is already compatible, as VkAccelerationStructures are created on top of VkBuffers.

More GPUOpen Vulkan® content

Vulkan® Memory Allocator

The Vulkan Memory Allocator (VMA) library provides a simple and easy to integrate API to help you allocate memory for Vulkan buffer and image storage.

Vulkan®

Vulkan® gives software developers control over the performance, efficiency, and capabilities of AMD Radeon™ GPUs and multi-core CPUs.

You may also like...

Some light reading to take away with you. Our ISAs, manuals, whitepapers, and many more.

Explore our huge collection of detailed tutorials and sample code to find your answers to your graphics development questions.

Browse all our useful samples. Perfect for when you’re needing to get started, want to integrate one of our libraries, and much more.

Browse all our fantastic tutorials, including programming techniques, performance improvements, guest blogs, and how to use our tools.