Another Optimization Comes For Radeon RADV Ray-Tracing In Mesa 24.1

Written by Michael Larabel in Mesa on 5 February 2024 at 05:07 PM EST. 37 Comments
MESA
Valve contractor Friedrich Vock who is part of the team working on the open-source Linux graphics drivers has merged another RADV ray-tracing optimization for this open-source AMD Vulkan driver with this improvement in next quarter's Mesa 24.1 release.

Vock's optimization is around the vector general purpose register (VGPR) usage during ray-tracing and nets around half the VGPR vector register use as needed previously. Vock explained in the merge request:
"Brings VGPR allocation down from 72 (absolutely insane) to 32.

We can now reach the theoretical maximum occupancy of 16 waves per SIMD (effectively double what it was before). We now have a weird-looking store+reload pattern for calculating root node bounds. However, it only gets executed once per dispatch anyway, so it should be meaningless in terms of perf (and carrying either child node bounds or root node bounds in live state around would've reduced occupancy).

One very quick benchmark run seemed to indicate something like -0.5ms in Control on my 6700XT."

It's great seeing the near-constant flow of open-source Linux graphics driver enhancements from Valve's team to better the support not only for the Valve Steam Deck but AMD Radeon graphics at large.

Lower VGPR use for RADV RT


This optimization is in Mesa Git as of this evening.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week