Timur Kristóf's Work on Shaders
-
Timur Kristóf: What is shader linking?
Shader linking is one of the more complicated topics in graphics driver development. It is both a never ending effort in the pursuit of performance and a black hole in which driver developers disappear. In this post, I intend to give an introduction to what shader linking is and why it’s worth spending our time working on it in general.
-
Timur Kristóf: AMD RDNA3 mesh shading with RADV
This is a long-awaited update to the previous mesh shading related posts. RDNA3 brings many interesting improvements to the hardware which simplify how mesh shaders work.
Reminder: main limitation of mesh shading on RDNA2
RDNA2 already supported mesh and task shaders, but mesh shaders had a big caveat regarding how outputs work: each shader invocation could only really write up to 1 vertex and 1 primitive, which meant that the shader compiler had to work around that to implement the programming model of the mesh shading API.
On RDNA2 the shader compiler had to: [...]