Mesa (master): radv: add multisample Z optimisation from amdvlk

Dave Airlie airlied at kemper.freedesktop.org
Wed Jan 24 20:48:36 UTC 2018


Module: Mesa
Branch: master
Commit: d2414e64e443700b764dcd1bd7ee46bbf7a9401a
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d2414e64e443700b764dcd1bd7ee46bbf7a9401a

Author: Dave Airlie <airlied at redhat.com>
Date:   Wed Jan 24 13:13:49 2018 +1000

radv: add multisample Z optimisation from amdvlk

This was just found while reading for other stuff,
src/core/hw/gfxip/gfx6/gfx6DepthStencilView.cpp.

Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Signed-off-by: Dave Airlie <airlied at redhat.com>

---

 src/amd/vulkan/radv_pipeline.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/amd/vulkan/radv_pipeline.c b/src/amd/vulkan/radv_pipeline.c
index 41a206a634..62faa3e473 100644
--- a/src/amd/vulkan/radv_pipeline.c
+++ b/src/amd/vulkan/radv_pipeline.c
@@ -714,6 +714,9 @@ radv_pipeline_init_depth_stencil_state(struct radv_pipeline *pipeline,
 		                       S_028800_Z_WRITE_ENABLE(vkds->depthWriteEnable ? 1 : 0) |
 		                       S_028800_ZFUNC(vkds->depthCompareOp) |
 		                       S_028800_DEPTH_BOUNDS_ENABLE(vkds->depthBoundsTestEnable ? 1 : 0);
+
+		/* from amdvlk: For 4xAA and 8xAA need to decompress on flush for better performance */
+		ds->db_render_override2 |= S_028010_DECOMPRESS_Z_ON_FLUSH(attachment->samples > 2);
 	}
 
 	if (has_stencil_attachment && vkds->stencilTestEnable) {




More information about the mesa-commit mailing list