mesa/src/intel/vulkan
Jason Ekstrand 9ecc26ff27 anv: Do depth/stencil optimization for dynamic depth/stencil
When we made depth/stencil dynamic, we lost the optimization.  This is
particularly important for cases where the stencil test is enabled but
never writes anything as certain combinations with discard can cause
the stencil write (which doesn't do anything) to get moved late which
can be a measurable perf hit.  According to 028e1137e6 ("anv/pipeline:
Be smarter about depth/stencil state", it was a couple percent for DOTA2
on Broadwell back in the day.  No idea how it affects current titles.

This may also improve the depth/stncil PMA workarounds on Gen8 and Gen9
since they're now looking at optimized depth/stencil state.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17564>
2022-07-19 23:16:45 +00:00
..
tests anv/tests: Free BO cache and device mutex 2022-01-07 13:33:32 +00:00
anv_acceleration_structure.c anv: drop a set but unused variable 2022-01-31 16:10:31 +00:00
anv_allocator.c intel: fix typos found by codespell 2022-06-27 10:20:55 +00:00
anv_android.c anv: use updated tokens from vk.xml 2022-07-12 15:53:11 +00:00
anv_android.h anv: move VkImage object allocation to anv_CreateImage 2021-10-06 02:18:39 +00:00
anv_android_stubs.c anv: move VkImage object allocation to anv_CreateImage 2021-10-06 02:18:39 +00:00
anv_batch_chain.c intel: fix typos found by codespell 2022-06-27 10:20:55 +00:00
anv_blorp.c anv: Use the common image<->buffer copy helper 2022-06-07 17:57:42 +00:00
anv_bo_sync.c anv: Drop anv_sync_create_for_bo 2021-12-17 00:55:31 +00:00
anv_cmd_buffer.c anv: Switch to using common dynamic state tracking 2022-07-19 23:16:45 +00:00
anv_descriptor_set.c anv: simplify dynamic buffer count in pipeline layout 2022-07-19 02:36:09 +00:00
anv_device.c anv: skip flush/invalidate faster 2022-07-13 01:33:27 +00:00
anv_formats.c anv: use updated tokens from vk.xml 2022-07-12 15:53:11 +00:00
anv_gem.c intel/gem: Return length from intel_i915_query_alloc 2022-01-19 00:29:35 +00:00
anv_gem_stubs.c intel/dev: Add gtt_size to devinfo 2021-12-11 05:05:19 +00:00
anv_genX.h anv: Switch to using common dynamic state tracking 2022-07-19 23:16:45 +00:00
anv_image.c anv: validate image view lowered storage formats for storage 2022-07-13 00:45:36 +00:00
anv_measure.c anv: fix performance bug in INTEL_MEASURE 2022-06-16 02:58:08 +00:00
anv_measure.h anv: add a custom AcquireNextImage2KHR func 2022-02-17 22:15:23 +00:00
anv_nir.h anv: make apply_pipeline_layout/compute_push_layout visible to NIR debug 2022-06-24 07:12:18 +00:00
anv_nir_add_base_work_group_id.c anv: use nir_shader_instructions_pass in anv_nir_add_base_work_group_id 2021-10-05 10:02:54 +00:00
anv_nir_apply_pipeline_layout.c anv: use updated tokens from vk.xml 2022-07-12 15:53:11 +00:00
anv_nir_compute_push_layout.c anv: make apply_pipeline_layout/compute_push_layout visible to NIR debug 2022-06-24 07:12:18 +00:00
anv_nir_lower_multiview.c anv: Drop pipeline pass/subpass in favor of rendering_info 2022-03-16 12:51:16 -05:00
anv_nir_lower_ubo_loads.c anv: invalidate all metadata in anv_nir_lower_ubo_loads 2022-04-19 11:43:55 +00:00
anv_nir_lower_ycbcr_textures.c anv: use nir_shader_instructions_pass in anv_nir_lower_ycbcr_textures 2021-10-05 10:02:54 +00:00
anv_perf.c anv: use updated tokens from vk.xml 2022-07-12 15:53:11 +00:00
anv_pipeline.c anv: Switch to using common dynamic state tracking 2022-07-19 23:16:45 +00:00
anv_pipeline_cache.c intel/compiler: Introduce a new brw_isa_info structure 2022-06-30 23:46:35 +00:00
anv_private.h anv: Do depth/stencil optimization for dynamic depth/stencil 2022-07-19 23:16:45 +00:00
anv_queue.c anv: fix INTEL_DEBUG=sync 2022-04-22 21:59:50 +00:00
anv_util.c anv,iris: PSS Stall Sync around color fast clears 2022-01-12 01:30:34 +00:00
anv_utrace.c anv/utrace: use a bo pool for utrace buffers 2022-07-07 18:49:05 +00:00
anv_wsi.c anv/wsi: Stop resetting semaphores 2022-06-10 01:33:12 +00:00
genX_blorp_exec.c anv: Switch to using common dynamic state tracking 2022-07-19 23:16:45 +00:00
genX_cmd_buffer.c anv: Switch to using common dynamic state tracking 2022-07-19 23:16:45 +00:00
genX_gpu_memcpy.c anv: Switch to using common dynamic state tracking 2022-07-19 23:16:45 +00:00
genX_pipeline.c anv: Do depth/stencil optimization for dynamic depth/stencil 2022-07-19 23:16:45 +00:00
genX_query.c anv: use updated tokens from vk.xml 2022-07-12 15:53:11 +00:00
genX_state.c anv: Switch to using common dynamic state tracking 2022-07-19 23:16:45 +00:00
gfx7_cmd_buffer.c anv: Do depth/stencil optimization for dynamic depth/stencil 2022-07-19 23:16:45 +00:00
gfx8_cmd_buffer.c anv: Do depth/stencil optimization for dynamic depth/stencil 2022-07-19 23:16:45 +00:00
meson.build anv: Convert to 100% dynamic rendering 2022-03-16 13:13:36 -05:00
TODO intel: Rename genx keyword to gfxx in source files 2021-04-02 18:33:07 +00:00