From db74ad0696d205e0991281bc0e222290ab1addd5 Mon Sep 17 00:00:00 2001 From: Caio Marcelo de Oliveira Filho Date: Fri, 27 Mar 2020 08:29:09 -0700 Subject: [PATCH] intel/compiler: Remove cs_prog_data->threads At this point all drivers are doing this math on their own -- since most of them need to cover the variable group size case, in which at compile time the group size (and number of threads) is not defined. Reviewed-by: Jordan Justen Reviewed-by: Paulo Zanoni Part-of: --- src/intel/compiler/brw_compiler.h | 1 - src/intel/compiler/brw_fs.cpp | 22 +++------------------- src/mesa/drivers/dri/i965/genX_state_upload.c | 3 --- 3 files changed, 3 insertions(+), 23 deletions(-) diff --git a/src/intel/compiler/brw_compiler.h b/src/intel/compiler/brw_compiler.h index 2e34b16..0351247 100644 --- a/src/intel/compiler/brw_compiler.h +++ b/src/intel/compiler/brw_compiler.h @@ -906,7 +906,6 @@ struct brw_cs_prog_data { unsigned local_size[3]; unsigned max_variable_local_size; unsigned simd_size; - unsigned threads; unsigned slm_size; bool uses_barrier; bool uses_num_work_groups; diff --git a/src/intel/compiler/brw_fs.cpp b/src/intel/compiler/brw_fs.cpp index 323fdb5..4e13dcc 100644 --- a/src/intel/compiler/brw_fs.cpp +++ b/src/intel/compiler/brw_fs.cpp @@ -8864,22 +8864,6 @@ cs_fill_push_const_info(const struct gen_device_info *devinfo, prog_data->nr_params); } -static void -cs_set_simd_size(struct brw_cs_prog_data *cs_prog_data, unsigned size) -{ - cs_prog_data->simd_size = size; - - unsigned group_size; - if (cs_prog_data->uses_variable_group_size) { - group_size = cs_prog_data->max_variable_local_size; - } else { - group_size = cs_prog_data->local_size[0] * - cs_prog_data->local_size[1] * - cs_prog_data->local_size[2]; - } - cs_prog_data->threads = DIV_ROUND_UP(group_size, size); -} - static nir_shader * compile_cs_to_nir(const struct brw_compiler *compiler, void *mem_ctx, @@ -8972,7 +8956,7 @@ brw_compile_cs(const struct brw_compiler *compiler, void *log_data, assert(v8->max_dispatch_width >= 32); v = v8; - cs_set_simd_size(prog_data, 8); + prog_data->simd_size = 8; cs_fill_push_const_info(compiler->devinfo, prog_data); } } @@ -9002,7 +8986,7 @@ brw_compile_cs(const struct brw_compiler *compiler, void *log_data, assert(v16->max_dispatch_width >= 32); v = v16; - cs_set_simd_size(prog_data, 16); + prog_data->simd_size = 16; cs_fill_push_const_info(compiler->devinfo, prog_data); } } @@ -9034,7 +9018,7 @@ brw_compile_cs(const struct brw_compiler *compiler, void *log_data, } } else { v = v32; - cs_set_simd_size(prog_data, 32); + prog_data->simd_size = 32; cs_fill_push_const_info(compiler->devinfo, prog_data); } } diff --git a/src/mesa/drivers/dri/i965/genX_state_upload.c b/src/mesa/drivers/dri/i965/genX_state_upload.c index 53c5707..ac83337 100644 --- a/src/mesa/drivers/dri/i965/genX_state_upload.c +++ b/src/mesa/drivers/dri/i965/genX_state_upload.c @@ -4267,9 +4267,6 @@ genX(upload_cs_state)(struct brw_context *brw) const unsigned threads = DIV_ROUND_UP(brw_cs_group_size(brw), cs_prog_data->simd_size); - if (!cs_prog_data->uses_variable_group_size) - assert(cs_prog_data->threads == threads); - if (INTEL_DEBUG & DEBUG_SHADER_TIME) { brw_emit_buffer_surface_state( brw, &stage_state->surf_offset[ -- 2.7.4