aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlyssa Rosenzweig <[email protected]>2019-07-09 11:16:57 -0700
committerAlyssa Rosenzweig <[email protected]>2019-07-10 06:45:20 -0700
commit2d739f6b59f5ee515c27a64a6a12d00dbb4bc715 (patch)
tree6b596f7d44e3d8dd5951d21f673ee4eae63a2db0
parent7ad6516f3b70e46683bedbe2dc22623d87e13525 (diff)
panfrost/midgard: Include shader size for shader-db
It's easy to forget about, but shader size does matter for things like i-cache, so let's include it in the analysis. Signed-off-by: Alyssa Rosenzweig <[email protected]>
-rw-r--r--src/gallium/drivers/panfrost/midgard/midgard_compile.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
index 1e09e46218c..a06318a5d93 100644
--- a/src/gallium/drivers/panfrost/midgard/midgard_compile.c
+++ b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
@@ -2859,7 +2859,7 @@ midgard_compile_shader_nir(nir_shader *nir, midgard_program *program, bool is_bl
disassemble_midgard(program->compiled.data, program->compiled.size);
if (midgard_debug & MIDGARD_DBG_SHADERDB) {
- unsigned nr_bundles = 0, nr_ins = 0;
+ unsigned nr_bundles = 0, nr_ins = 0, nr_quadwords = 0;
/* Count instructions and bundles */
@@ -2870,6 +2870,8 @@ midgard_compile_shader_nir(nir_shader *nir, midgard_program *program, bool is_bl
mir_foreach_block(ctx, block) {
nr_bundles += util_dynarray_num_elements(
&block->bundles, midgard_bundle);
+
+ nr_quadwords += block->quadword_count;
}
/* Calculate thread count. There are certain cutoffs by
@@ -2885,11 +2887,11 @@ midgard_compile_shader_nir(nir_shader *nir, midgard_program *program, bool is_bl
/* Dump stats */
fprintf(stderr, "shader%d - %s shader: "
- "%u inst, %u bundles, "
+ "%u inst, %u bundles, %u quadwords, "
"%u registers, %u threads, %u loops\n",
SHADER_DB_COUNT++,
gl_shader_stage_name(ctx->stage),
- nr_ins, nr_bundles,
+ nr_ins, nr_bundles, nr_quadwords,
nr_registers, nr_threads,
ctx->loop_count);
}