[Mesa-dev] [PATCH 00/18] anv: Remove the HiZ restriction on input attachments
Nanley Chery
nanleychery at gmail.com
Tue Feb 28 01:20:08 UTC 2017
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
More information about the mesa-dev
mailing list