[Mesa-dev] [PATCH 00/17] anv: Rework state tracking to better separate
Pohjolainen, Topi
topi.pohjolainen at gmail.com
Mon Jan 15 15:25:14 UTC 2018
On Fri, Dec 15, 2017 at 05:08:58PM -0800, Jason Ekstrand wrote:
> This series is intended to address a bug filed in September:
>
> https://bugs.freedesktop.org/show_bug.cgi?id=102897
>
> Unfortunately, the fix is either a lot of patches or very messy. This
> series (as is common for me) takes the lots of patches approach. The
> general idea is to break out a large chunk of anv_cmd_state into sub-
> structs for graphics and compute. This way, it's very clear when you're
> accessing any bit of state that you're pulling from one or the other. By
> giving these a base struct, we can also make clear that a certain set of
> states are are per-pipeline-bind-point. In order to reduce churn in the
> patches which actually move state from one struct to another, there are
> several patches which just make us make better use of helper functions and
> temporary variables.
I had a small nit in patch 11 but otherwise I couldn't find anything amiss:
Reviewed-by: Topi Pohjolainen <topi.pohjolainen at intel.com>
>
> Jason Ekstrand (17):
> anv/pipeline: Don't assert on more than 32 samplers
> anv/cmd_state: Drop the scratch_size field
> anv/cmd_buffer: Get rid of the meta query workaround
> anv/cmd_buffer: Rework anv_cmd_state_reset
> anv/cmd_buffer: Use some pre-existing pipeline temporaries
> anv/cmd_buffer: Add substructs to anv_cmd_state for graphics and
> compute
> anv: Remove semicolons from vk_error[f] definitions
> anv/cmd_buffer: Refactor ensure_push_descriptor_set
> anv/cmd_buffer: Add a helper for binding descriptor sets
> anv/cmd_buffer: Use anv_descriptor_for_binding for samplers
> anv: Separate compute and graphics descriptor sets
> anv/cmd_buffer: Move dirty bits into anv_cmd_*_state
> anv/cmd_buffer: Move vb_dirty bits into anv_cmd_graphics_state
> anv/cmd_buffer: Use a temporary variable for dynamic state
> anv/cmd_buffer: Move dynamic state to graphics state
> anv/cmd_buffer: Move num_workgroups to compute state
> anv/cmd_buffer: Move gen7 index buffer state to graphics state
>
> src/intel/vulkan/anv_cmd_buffer.c | 274 +++++++++++++++++++---------------
> src/intel/vulkan/anv_descriptor_set.c | 2 +
> src/intel/vulkan/anv_private.h | 85 ++++++++---
> src/intel/vulkan/gen7_cmd_buffer.c | 67 ++++-----
> src/intel/vulkan/gen8_cmd_buffer.c | 91 ++++++-----
> src/intel/vulkan/genX_blorp_exec.c | 4 +-
> src/intel/vulkan/genX_cmd_buffer.c | 121 ++++++++-------
> src/intel/vulkan/genX_gpu_memcpy.c | 2 +-
> src/intel/vulkan/genX_pipeline.c | 8 +-
> src/intel/vulkan/genX_query.c | 14 --
> 10 files changed, 369 insertions(+), 299 deletions(-)
>
> --
> 2.5.0.400.gff86faf
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list