Performance-Boosting DFSM Support Flipped On & Off For RADV Vulkan Driver
Back in July of last year the RADV Vulkan driver enabled primitive binning and DFSM for this open-source Radeon Vulkan driver. Well, it thought it enabled DFSM support and paired with the binning did yield a minor performance benefit at the time for Raven Ridge APUs. But now it turns out the DFSM support wasn't properly wired up and is now addressed but is currently introducing a performance regression.
RADV developer Bas Nieuwenhuizen added the actual DFSM (Deterministic Finite State Machine) support and mirrors the behavior of the RadeonSI OpenGL driver. With the DFSM support he found that it doubles the fill-rate of one of his test samples from around 16 to 32 pixels/cycles for Raven Ridge.
But then he ended up disabling DFSM by default as it's causing a ~3% performance regression for a real world game, The Talos Principle.
So in Mesa 19.3 the DFSM support is in place for RADV now, but disabled by default. Those wanting to toy with the performance-boosting feature can set the RADV_PERFTEST=dfsm environment variable to force-enable the functionality.
RADV developer Bas Nieuwenhuizen added the actual DFSM (Deterministic Finite State Machine) support and mirrors the behavior of the RadeonSI OpenGL driver. With the DFSM support he found that it doubles the fill-rate of one of his test samples from around 16 to 32 pixels/cycles for Raven Ridge.
But then he ended up disabling DFSM by default as it's causing a ~3% performance regression for a real world game, The Talos Principle.
So in Mesa 19.3 the DFSM support is in place for RADV now, but disabled by default. Those wanting to toy with the performance-boosting feature can set the RADV_PERFTEST=dfsm environment variable to force-enable the functionality.
Add A Comment