[Mesa-dev] [PATCH 00/14] anv: Rework subpass resolves and clears

Nanley Chery nanleychery at gmail.com
Wed Feb 7 23:36:07 UTC 2018


On Mon, Feb 05, 2018 at 02:34:49PM -0800, Jason Ekstrand wrote:
> This little series just shuffles code around to make things a bit more
> clear.  (At least I think it does!)  The basic idea is to split set_subpass
> into begin_subpass and end_subpass and then move all of resolve and clear
> code into those two helpers.  This means that we no longer have 3 or 4
> different functions that all loop over attachments which we have to call in
> just the right order.
> 
> The last patch in this series takes advantage of this new structure by
> allowing us to avoid the transition from UNDEFINED when LOAD_OP_CLEAR is
> specified.  I highly doubt the performance impact of this will be noticable
> but it's nice to be able to do.
> 
> Jason Ekstrand (14):
>   anv/cmd_buffer: Apply subpass flushes before set_subpass
>   anv/cmd_buffer: Add begin/end_subpass helpers
>   anv/cmd_buffer: Pass a subpass id into begin_subpass
>   anv/cmd_buffer: Move the color portion of clear_subpass into
>     begin_subpass
>   intel/blorp: Add a blorp_hiz_clear_depth_stencil helper

Patches 1-5 are:
Reviewed-by: Nanley Chery <nanley.g.chery at intel.com>

>   anv/cmd_buffer: Move the rest of clear_subpass into begin_subpass
>   anv/cmd_buffer: Decide whether or not to HiZ clear up-front
>   anv/cmd_buffer: Iterate all subpass attachments when clearing
>   anv/cmd_buffer: Add a concept of pending load aspects
>   anv/pass: Store usage in each subpass attachment
>   anv/cmd_buffer: Sync clear values in begin_subpass
>   anv/cmd_buffer: Mark depth/stencil surfaces written in begin_subpass
>   anv/cmd_buffer: Do subpass image transitions in begin/end_subpass
>   anv/cmd_buffer: Avoid unnecessary transitions before fast clears
> 
>  src/intel/blorp/blorp.h            |  11 +
>  src/intel/blorp/blorp_clear.c      |  50 ++++
>  src/intel/vulkan/anv_blorp.c       | 367 ++++++++++--------------
>  src/intel/vulkan/anv_pass.c        |  35 ++-
>  src/intel/vulkan/anv_private.h     |  42 ++-
>  src/intel/vulkan/genX_cmd_buffer.c | 555 ++++++++++++++++++++-----------------
>  6 files changed, 563 insertions(+), 497 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