From d9a8ab0e0148ce485eaa0aa6d9b4944b90c808b3 Mon Sep 17 00:00:00 2001 From: Georg Lehmann Date: Fri, 12 Jan 2024 11:48:18 +0100 Subject: [PATCH] radv: sink alu MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The stats are decent now that aco has an ILP scheduler. Foz-DB Navi31: Totals from 50743 (63.88% of 79439) affected shaders: MaxWaves: 1504722 -> 1506408 (+0.11%); split: +0.12%, -0.01% Instrs: 37550246 -> 37543687 (-0.02%); split: -0.12%, +0.10% CodeSize: 194277496 -> 194253004 (-0.01%); split: -0.11%, +0.10% VGPRs: 2266056 -> 2254320 (-0.52%); split: -0.57%, +0.06% SpillSGPRs: 7893 -> 6861 (-13.07%); split: -14.03%, +0.95% SpillVGPRs: 1359 -> 1124 (-17.29%) Scratch: 7006720 -> 6981632 (-0.36%) Latency: 268082325 -> 267597538 (-0.18%); split: -0.57%, +0.39% InvThroughput: 43592221 -> 43287284 (-0.70%); split: -1.14%, +0.44% VClause: 759701 -> 761164 (+0.19%); split: -0.24%, +0.43% SClause: 1133209 -> 1138406 (+0.46%); split: -0.32%, +0.78% Copies: 2639405 -> 2632081 (-0.28%); split: -0.81%, +0.53% Branches: 830411 -> 831358 (+0.11%); split: -0.02%, +0.13% PreSGPRs: 1802510 -> 1798852 (-0.20%); split: -0.57%, +0.36% PreVGPRs: 1755801 -> 1747642 (-0.46%); split: -0.51%, +0.04% VALU: 20974500 -> 20967009 (-0.04%); split: -0.08%, +0.04% SALU: 3901240 -> 3900098 (-0.03%); split: -0.23%, +0.20% VMEM: 1397890 -> 1397486 (-0.03%) VOPD: 4837 -> 4902 (+1.34%); split: +2.03%, -0.68% Reviewed-by: Timur Kristóf Reviewed-by: Daniel Schürmann Reviewed-by: Alyssa Rosenzweig Part-of: --- src/amd/vulkan/radv_pipeline.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/amd/vulkan/radv_pipeline.c b/src/amd/vulkan/radv_pipeline.c index f9e21c7df19..5e841089385 100644 --- a/src/amd/vulkan/radv_pipeline.c +++ b/src/amd/vulkan/radv_pipeline.c @@ -719,7 +719,7 @@ radv_postprocess_nir(struct radv_device *device, const struct radv_graphics_stat NIR_PASS(_, stage->nir, nir_opt_dce); if (!stage->key.optimisations_disabled) { - sink_opts |= nir_move_comparisons | nir_move_load_ubo | nir_move_load_ssbo; + sink_opts |= nir_move_comparisons | nir_move_load_ubo | nir_move_load_ssbo | nir_move_alu; NIR_PASS(_, stage->nir, nir_opt_sink, sink_opts); nir_move_options move_opts =