From: Alyssa Rosenzweig Date: Mon, 23 Dec 2019 16:48:23 +0000 (-0500) Subject: pan/decode: Skip COMPUTE in blobber-db X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ead35f586c0f3ff4eecf35c7c16739c16f8cca53;p=mesa.git pan/decode: Skip COMPUTE in blobber-db The blob uses COMPUTE jobs for some internal purposes. These are essentially free but panfrost doesn't use them, so it messes up the numbering. Just filter them out. Signed-off-by: Alyssa Rosenzweig --- diff --git a/src/panfrost/pandecode/decode.c b/src/panfrost/pandecode/decode.c index 27245e39df4..36f529494c5 100644 --- a/src/panfrost/pandecode/decode.c +++ b/src/panfrost/pandecode/decode.c @@ -1878,20 +1878,25 @@ pandecode_shader_disassemble(mali_ptr shader_ptr, int shader_no, int type, MESA_SHADER_FRAGMENT : MESA_SHADER_VERTEX); } - /* Print shader-db stats */ - - unsigned nr_threads = - (stats.work_count <= 4) ? 4 : - (stats.work_count <= 8) ? 2 : - 1; - - printf("shader%d - %s shader: " - "%u inst, %u bundles, %u quadwords, " - "%u registers, %u threads, 0 loops\n\n\n", - shader_id++, - shader_type_for_job(type), - stats.instruction_count, stats.bundle_count, stats.quadword_count, - stats.work_count, nr_threads); + /* Print shader-db stats. Skip COMPUTE jobs since they are used for + * driver-internal purposes with the blob and interfere */ + + bool should_shaderdb = type != JOB_TYPE_COMPUTE; + + if (should_shaderdb) { + unsigned nr_threads = + (stats.work_count <= 4) ? 4 : + (stats.work_count <= 8) ? 2 : + 1; + + printf("shader%d - %s shader: " + "%u inst, %u bundles, %u quadwords, " + "%u registers, %u threads, 0 loops\n\n\n", + shader_id++, + shader_type_for_job(type), + stats.instruction_count, stats.bundle_count, stats.quadword_count, + stats.work_count, nr_threads); + } return stats;