RadeonSI Lands Optimization For Uber Shaders
On top of the AMD Zen L3 cache optimizations hitting Mesa 20.3 today, Marek Olšák has also landed his RadeonSI Gallium3D driver code for optimizing OpenGL uber shaders.
Marek added a "inline_uniforms" DriConf option to the RadeonSI driver that implements inlinable uniforms.
The goal with this is to improve the performance for uber shaders, or rather large shaders with lots of possible branches at run-time.
The "inline_uniforms" DriConf option with Mesa 20.3's RadeonSI will optimize shaders by replacing uniforms with literals. Marek explains in the commit, "This improves performance for uber shaders. The driver compiles the specialized shaders in another thread without stalls, same as all other optimizations." No performance numbers were provided as part of the commit or what games with uber shaders he has been evaluating.
Expect a flurry of more activity to continue in the next few days given that Mesa 20.3 is due to be branched around 4 November.
Marek added a "inline_uniforms" DriConf option to the RadeonSI driver that implements inlinable uniforms.
The goal with this is to improve the performance for uber shaders, or rather large shaders with lots of possible branches at run-time.
The "inline_uniforms" DriConf option with Mesa 20.3's RadeonSI will optimize shaders by replacing uniforms with literals. Marek explains in the commit, "This improves performance for uber shaders. The driver compiles the specialized shaders in another thread without stalls, same as all other optimizations." No performance numbers were provided as part of the commit or what games with uber shaders he has been evaluating.
Expect a flurry of more activity to continue in the next few days given that Mesa 20.3 is due to be branched around 4 November.
14 Comments