Mesa (main): radeonsi: clean up compute_wave_size use in si_compute_blit.c

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Nov 26 11:57:31 UTC 2021


Module: Mesa
Branch: main
Commit: 913e1b9138cd6d5b5bda02a2fdbba321aa6d65e0
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=913e1b9138cd6d5b5bda02a2fdbba321aa6d65e0

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Fri Nov 19 04:31:54 2021 -0500

radeonsi: clean up compute_wave_size use in si_compute_blit.c

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer at amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13878>

---

 src/gallium/drivers/radeonsi/si_compute_blit.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_compute_blit.c b/src/gallium/drivers/radeonsi/si_compute_blit.c
index cfd1b8263cd..42f293fafca 100644
--- a/src/gallium/drivers/radeonsi/si_compute_blit.c
+++ b/src/gallium/drivers/radeonsi/si_compute_blit.c
@@ -220,14 +220,14 @@ void si_compute_clear_buffer_rmw(struct si_context *sctx, struct pipe_resource *
 
    /* Use buffer_load_dwordx4 and buffer_store_dwordx4 per thread. */
    unsigned dwords_per_instruction = 4;
-   unsigned wave_size = sctx->screen->compute_wave_size;
-   unsigned dwords_per_wave = dwords_per_instruction * wave_size;
+   unsigned block_size = 64; /* it's always 64x1x1 */
+   unsigned dwords_per_wave = dwords_per_instruction * block_size;
 
    unsigned num_dwords = size / 4;
    unsigned num_instructions = DIV_ROUND_UP(num_dwords, dwords_per_instruction);
 
    struct pipe_grid_info info = {};
-   info.block[0] = MIN2(wave_size, num_instructions);
+   info.block[0] = MIN2(block_size, num_instructions);
    info.block[1] = 1;
    info.block[2] = 1;
    info.grid[0] = DIV_ROUND_UP(num_dwords, dwords_per_wave);
@@ -305,14 +305,14 @@ static void si_compute_do_clear_or_copy(struct si_context *sctx, struct pipe_res
       src ? SI_COMPUTE_COPY_DW_PER_THREAD : SI_COMPUTE_CLEAR_DW_PER_THREAD;
    unsigned instructions_per_thread = MAX2(1, dwords_per_thread / 4);
    unsigned dwords_per_instruction = dwords_per_thread / instructions_per_thread;
-   unsigned wave_size = sctx->screen->compute_wave_size;
-   unsigned dwords_per_wave = dwords_per_thread * wave_size;
+   unsigned block_size = sctx->screen->compute_wave_size;
+   unsigned dwords_per_wave = dwords_per_thread * block_size;
 
    unsigned num_dwords = size / 4;
    unsigned num_instructions = DIV_ROUND_UP(num_dwords, dwords_per_instruction);
 
    struct pipe_grid_info info = {};
-   info.block[0] = MIN2(wave_size, num_instructions);
+   info.block[0] = MIN2(block_size, num_instructions);
    info.block[1] = 1;
    info.block[2] = 1;
    info.grid[0] = DIV_ROUND_UP(num_dwords, dwords_per_wave);



More information about the mesa-commit mailing list