Better Multi Indirect Draw Support Coming To Mesa
Ilia Mirkin has seemingly not taken much time off from his Mesa hacking for the holidays. On Thursday this developer who most frequently works on the Nouveau and Freedreno drivers has published patches for better ARB_multi_draw_indirect handling.
The GL_ARB_multi_draw_indirect extension is mandated by OpenGL 4.3. Core Mesa and all of the key drivers have already handled this extension with the exception of Nouveau NV50. However, Mirkin is hoping to enhance the implementation.
He commented on the mailing list, "The current support in mesa for ARB_multi_draw_indirect is pretty shameful... it just does N separate draws. Instead make it possible for drivers to handle this in a more efficient manner. Also create the backend interfaces necessary to support ARB_indirect_parameters, although the (trivial) frontend bits are not part of this series. Of course right now st/mesa will still break up the multidraw into N draws since no backends actually support this. And there are no piglits (other than one in images) which actually make use of glMultiDraw*Indirect... oh well."
The patches add about 200 lines of new code. If you are not familiar with the Mesa multi indirect draw support, visit the OpenGL.org registry.
The GL_ARB_multi_draw_indirect extension is mandated by OpenGL 4.3. Core Mesa and all of the key drivers have already handled this extension with the exception of Nouveau NV50. However, Mirkin is hoping to enhance the implementation.
He commented on the mailing list, "The current support in mesa for ARB_multi_draw_indirect is pretty shameful... it just does N separate draws. Instead make it possible for drivers to handle this in a more efficient manner. Also create the backend interfaces necessary to support ARB_indirect_parameters, although the (trivial) frontend bits are not part of this series. Of course right now st/mesa will still break up the multidraw into N draws since no backends actually support this. And there are no piglits (other than one in images) which actually make use of glMultiDraw*Indirect... oh well."
The patches add about 200 lines of new code. If you are not familiar with the Mesa multi indirect draw support, visit the OpenGL.org registry.
5 Comments