[Mesa-dev] [PATCH 00/18] anv: Remove the HiZ restriction on input attachments

Jason Ekstrand jason at jlekstrand.net
Tue Feb 28 05:36:53 UTC 2017


Did a read-through and, overall, this looks great.  I made a few comments
but they're fairly simple.

One question though:  Am I correct in thinking that we are still disabling
HiZ for rendering when the image is in the general layout?  I think it
should be easy enough to change now but I didn't see it change so I want to
make sure I didn't mid it.  The only reason I care about that is that we
need it if we want to apply the PMA fix in secondary command buffers.

On Feb 27, 2017 5:21 PM, "Nanley Chery" <nanleychery at gmail.com> wrote:

> Allow HiZ for input attachment-capable depth/stencil buffers. Do so
> without requiring sampling operations on such attachments to go through
> the HiZ buffer.
>
> Series sections:
> * Patch 1: Fix a bug.
> * Patch 2: Add a new layout to aux_usage function.
> * Patches 3-6: Refactor.
> * Patches 7-10: Don't sample the depth buffer through HiZ.
> * Patches 11-18: Allow HiZ on input attachment-capable depth/stencil
>                  buffers.
>
> This series increases the average frame rate on a release candidate of a
> proprietary Vulkan benchmark by an average of 9.94% over 3 runs on my
> SKL GT4.
>
> Nanley Chery (18):
>   anv/pass: Avoid accessing attachment array out of bounds
>   anv/image: Add anv_layout_to_aux_usage()
>   anv/cmd_buffer: Replace layout_to_hiz_usage()
>   anv: Update the HiZ sampling helper
>   anv/image: Remove extra dependency on HiZ-specific variable
>   anv/image: Simplify setup of HiZ sampler surface state
>   anv/image: Create an additional surface state for sampling
>   anv/descriptor_set: Store aux usage of sampled image descriptors
>   anv/cmd_buffer: Conditionally choose the sampled image surface state
>   anv/cmd_buffer: Remove extra resolve for certain depth buffers
>   anv: Store the user's VkAttachmentReference
>   anv/pass: Fix size of anv_render_pass:subpass_attachments
>   anv/pass: Store subpass attachment reference list
>   anv/cmd_buffer: Enable render pass awareness
>   anv/blorp: Encapsulate subpass id querying
>   anv/cmd_buffer: Add attachment transitioning functions
>   anv/cmd_buffer: Centralize automatic layout transitions
>   anv/image: Allow HiZ on input attachment-capable depth/stencil images
>
>  src/intel/vulkan/anv_blorp.c          |  33 +++--
>  src/intel/vulkan/anv_cmd_buffer.c     |   4 +-
>  src/intel/vulkan/anv_descriptor_set.c |  10 ++
>  src/intel/vulkan/anv_image.c          | 222 +++++++++++++++++++++++++++---
> --
>  src/intel/vulkan/anv_pass.c           |  50 ++++----
>  src/intel/vulkan/anv_pipeline.c       |   6 +-
>  src/intel/vulkan/anv_private.h        |  58 +++++++--
>  src/intel/vulkan/gen7_cmd_buffer.c    |   4 +-
>  src/intel/vulkan/genX_cmd_buffer.c    | 235
> ++++++++++++++++++----------------
>  src/intel/vulkan/genX_pipeline.c      |   8 +-
>  10 files changed, 427 insertions(+), 203 deletions(-)
>
> --
> 2.11.1
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20170227/c4342db1/attachment-0001.html>


More information about the mesa-dev mailing list