anv: turn off non zero fast clears for CCS_E

This helps fix a performance regression on games such as F1 22 and RDR2.
Turning on non zero fast clears causes additional partial resolves for
these games that degrades performance. Let's turn off non zero fast
clears till we can eliminate the partial resolves.

Signed-off-by: Rohan Garg <rohan.garg@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25863>
This commit is contained in:
Rohan Garg
2023-10-11 12:30:58 +02:00
committed by Marge Bot
parent 2179cd129f
commit 25a232238f

View File

@@ -361,6 +361,15 @@ can_fast_clear_with_non_zero_color(const struct intel_device_info *devinfo,
if (image->planes[plane].aux_usage == ISL_AUX_USAGE_FCV_CCS_E)
return false;
/* Turning on non zero fast clears for CCS_E introduces a performance
* regression for games such as F1 22 and RDR2 by introducing additional
* partial resolves. Let's turn non zero fast clears back off till we can
* fix performance.
*/
if (image->planes[plane].aux_usage == ISL_AUX_USAGE_CCS_E &&
devinfo->ver >= 12)
return false;
/* Non mutable image, we can fast clear with any color supported by HW.
*/
if (!(image->vk.create_flags & VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT))