anv: remove CS_FLUSH from query regression
authorFelix DeGrood <felix.j.degrood@intel.com>
Tue, 31 Oct 2023 23:15:37 +0000 (23:15 +0000)
committerEric Engestrom <eric@engestrom.ch>
Mon, 6 Nov 2023 09:36:38 +0000 (09:36 +0000)
Fixes performance regression introduced by prior refactoring of
pipe control code that unnecessarily added CS_FLUSH to query start
and end. Issue was diagnosed by Ben L (thank you!)

Confirmed this restores performance on:
* Borderlands3 +2%
* Payday +3%
* Factorio +3%
* HogwartsLegacy +4%
* Ghostrunner +7%

Fixes: 6dc95685 (convert genX_query pipe controls to use pc helper)
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25983>
(cherry picked from commit aa23120e4fc674d7da42c4895aa204f300155105)

.pick_status.json
src/intel/vulkan/genX_query.c

index 401ec80..e9283e2 100644 (file)
         "description": "anv: remove CS_FLUSH from query regression",
         "nominated": true,
         "nomination_type": 1,
-        "resolution": 0,
+        "resolution": 1,
         "main_sha": null,
         "because_sha": "6dc95685f3b1a14b2a0d80bc05ea198de8027f44",
         "notes": null
index f42298f..69c5ac8 100644 (file)
@@ -695,7 +695,7 @@ emit_query_pc_availability(struct anv_cmd_buffer *cmd_buffer,
 
    genx_batch_emit_pipe_control_write
       (&cmd_buffer->batch, cmd_buffer->device->info, WriteImmediateData, addr,
-       available, ANV_PIPE_CS_STALL_BIT);
+       available, 0);
 }
 
 /**