anv/gfx12: Enable non-zero fast clears for non-FCV CCS_E
Anvil disables fast color clears for non-zero colors for ISL_AUX_USAGE_CCS_E
on gfx12.
Naively enabling it increases a benchmark score by 1.16x (24075 / 20768): Gfxbench TRex 5.1 Offscreen, Raptorlake, zink, 1920x1080.
It's disabled by this code:
@@file anv_image.c
@@func can_fast_clear_with_non_zero_color
/* 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;
When re-enabling, we must take care to not hit the perf regression in the code comment.