Hi, This series first refactors the draw codepath to follow the dispatch codepath (ie. using a new structure called radv_draw_info). Then it adds few helpers, and finally it tries to use a better packet order in order to reduce the time where shaders are idle.
This is loosely based on RadeonSI and it should give a little boost. Please review, Thanks! Samuel Pitoiset (9): radv: refactor simple and indexed draws with radv_draw_info radv: refactor indirect draws with radv_draw_info radv: refactor indirect draws (+count buffer) with radv_draw_info radv: add radv_emit_draw_registers() radv: emit primitive restart from radv_emit_draw_registers() radv: rename radv_cmd_buffer_flush_state() to radv_draw() radv: add radv_emit_shader_prefetch() radv: add radv_emit_shaders_prefetch() radv: use optimal packet order for draws src/amd/vulkan/radv_cmd_buffer.c | 673 +++++++++++++++++++++++---------------- 1 file changed, 404 insertions(+), 269 deletions(-) -- 2.14.2 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev