From 5fe001267096718e92633a9c53b2b0f0d53377f6 Mon Sep 17 00:00:00 2001 From: Rhys Perry Date: Tue, 28 Jan 2025 16:41:35 +0000 Subject: [PATCH] radv: DCE before nir_opt_shrink_vectors fossil-db (navi31): Totals from 941 (1.19% of 79377) affected shaders: MaxWaves: 28422 -> 28502 (+0.28%) Instrs: 645374 -> 642031 (-0.52%); split: -0.55%, +0.03% CodeSize: 3264460 -> 3244488 (-0.61%); split: -0.63%, +0.02% VGPRs: 48392 -> 48044 (-0.72%) SpillVGPRs: 7 -> 0 (-inf%) Scratch: 1792 -> 0 (-inf%) Latency: 2596896 -> 2536952 (-2.31%); split: -2.33%, +0.02% InvThroughput: 528726 -> 500139 (-5.41%); split: -5.42%, +0.01% VClause: 14566 -> 14539 (-0.19%) Copies: 53022 -> 51296 (-3.26%); split: -3.37%, +0.12% PreSGPRs: 29369 -> 29367 (-0.01%) PreVGPRs: 29710 -> 29694 (-0.05%) VALU: 366134 -> 364245 (-0.52%); split: -0.53%, +0.02% SALU: 74017 -> 73891 (-0.17%) VMEM: 25240 -> 25208 (-0.13%) fossil-db (navi21): Totals from 941 (1.19% of 79377) affected shaders: MaxWaves: 22018 -> 22058 (+0.18%); split: +0.28%, -0.10% Instrs: 521053 -> 518898 (-0.41%); split: -0.43%, +0.02% CodeSize: 2750628 -> 2734996 (-0.57%); split: -0.58%, +0.01% VGPRs: 41152 -> 41024 (-0.31%); split: -0.41%, +0.10% SpillVGPRs: 5 -> 0 (-inf%) Scratch: 2048 -> 0 (-inf%) Latency: 2655941 -> 2607022 (-1.84%); split: -1.86%, +0.02% InvThroughput: 711733 -> 690032 (-3.05%); split: -3.07%, +0.02% VClause: 16388 -> 16363 (-0.15%) Copies: 35152 -> 33485 (-4.74%); split: -4.98%, +0.24% PreSGPRs: 28486 -> 28484 (-0.01%) PreVGPRs: 30317 -> 30301 (-0.05%) VALU: 348423 -> 346614 (-0.52%); split: -0.54%, +0.02% SALU: 44020 -> 43869 (-0.34%) VMEM: 25216 -> 25195 (-0.08%) fossil-db (vega10): Totals from 416 (0.66% of 62962) affected shaders: MaxWaves: 2687 -> 2696 (+0.33%); split: +0.37%, -0.04% Instrs: 245634 -> 243501 (-0.87%); split: -0.88%, +0.01% CodeSize: 1312836 -> 1297248 (-1.19%); split: -1.19%, +0.01% VGPRs: 17684 -> 17692 (+0.05%); split: -0.43%, +0.48% SpillVGPRs: 5 -> 0 (-inf%) Scratch: 2048 -> 0 (-inf%) Latency: 1928393 -> 1881346 (-2.44%); split: -2.44%, +0.00% InvThroughput: 1163915 -> 1117096 (-4.02%); split: -4.03%, +0.00% VClause: 7070 -> 7053 (-0.24%) Copies: 22577 -> 20834 (-7.72%); split: -7.78%, +0.06% Branches: 4328 -> 4320 (-0.18%) PreSGPRs: 13993 -> 13991 (-0.01%) PreVGPRs: 13452 -> 13436 (-0.12%) VALU: 165253 -> 163366 (-1.14%); split: -1.15%, +0.01% SALU: 26258 -> 26111 (-0.56%) VMEM: 11736 -> 11715 (-0.18%) fossil-db (polaris10): Totals from 355 (0.57% of 61794) affected shaders: Instrs: 108639 -> 108682 (+0.04%); split: -0.03%, +0.07% CodeSize: 583804 -> 583936 (+0.02%); split: -0.03%, +0.06% SGPRs: 17712 -> 17728 (+0.09%) Latency: 735332 -> 734777 (-0.08%); split: -0.08%, +0.01% InvThroughput: 443975 -> 444045 (+0.02%); split: -0.03%, +0.04% VClause: 2552 -> 2558 (+0.24%) SClause: 2394 -> 2393 (-0.04%) Copies: 11433 -> 11464 (+0.27%); split: -0.15%, +0.42% PreVGPRs: 7365 -> 7364 (-0.01%) VALU: 69385 -> 69416 (+0.04%); split: -0.02%, +0.07% Signed-off-by: Rhys Perry Reviewed-by: Georg Lehmann Part-of: --- src/amd/vulkan/radv_pipeline.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/amd/vulkan/radv_pipeline.c b/src/amd/vulkan/radv_pipeline.c index 2afefc56ee8..a15d2562d6d 100644 --- a/src/amd/vulkan/radv_pipeline.c +++ b/src/amd/vulkan/radv_pipeline.c @@ -515,6 +515,7 @@ radv_postprocess_nir(struct radv_device *device, const struct radv_graphics_stat NIR_PASS_V(stage->nir, radv_nir_lower_abi, gfx_level, stage, gfx_state, pdev->info.address32_hi); if (!stage->key.optimisations_disabled) { + NIR_PASS(_, stage->nir, nir_opt_dce); NIR_PASS(_, stage->nir, nir_opt_shrink_vectors, true); }