Skip to content

radv: Mesh and task shaders on GFX11

Timur Kristóf requested to merge Venemo/mesa:radv_gfx11_mesh into main

This MR implements mesh shading on GFX11.

  • Task shaders
    • No changes required whatsoever.
  • Mesh shaders
    • For this initial implementation, we use the legacy fast launch mode FAST_LAUNCH=1 which works the same way as it did on GFX10.3, the draw packets on GFX11 have a bit that can enable this mode.
    • Per-primitive attributes need different register programming on GFX11.
    • Changes in the I/O lowering code are needed, in order to change mesh shaders to use the attribute ring.

Testing

All supported dEQP-VK.mesh_shader.ext.* pass.

Future work

  • Optimize attribute ring access (write full vec4 if possible)
  • Use new fast launch mode
  • Mesh shader queries
Edited by Timur Kristóf

Merge request reports