Running shader-db without INTEL_DEBUG=annotation reduces the runtime from ~90 to ~80 seconds on my machine. It also reduces the disk space consumed by the .out files from 660 MB (676 on disk) to 343 MB (358 on disk). --- src/mesa/drivers/dri/i965/brw_fs_generator.cpp | 6 ++++-- src/mesa/drivers/dri/i965/brw_vec4_generator.cpp | 6 ++++-- src/mesa/drivers/dri/i965/gen8_fs_generator.cpp | 6 ++++-- src/mesa/drivers/dri/i965/gen8_vec4_generator.cpp | 6 ++++-- src/mesa/drivers/dri/i965/intel_debug.c | 1 + src/mesa/drivers/dri/i965/intel_debug.h | 1 + 6 files changed, 18 insertions(+), 8 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp index b0b3b56..872b5a4 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp @@ -1363,8 +1363,10 @@ fs_generator::generate_code(exec_list *instructions, int *num_annotations, } ann[ann_num].offset = p->next_insn_offset; - ann[ann_num].ir = inst->ir; - ann[ann_num].annotation = inst->annotation; + if (INTEL_DEBUG & DEBUG_ANNOTATION) { + ann[ann_num].ir = inst->ir; + ann[ann_num].annotation = inst->annotation; + } if (cfg->blocks[block_num]->start == inst) { ann[ann_num].block_start = cfg->blocks[block_num]; diff --git a/src/mesa/drivers/dri/i965/brw_vec4_generator.cpp b/src/mesa/drivers/dri/i965/brw_vec4_generator.cpp index 2176de4..5980aad 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4_generator.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4_generator.cpp @@ -1296,8 +1296,10 @@ vec4_generator::generate_code(exec_list *instructions, int *num_annotations, } ann[ann_num].offset = p->next_insn_offset; - ann[ann_num].ir = inst->ir; - ann[ann_num].annotation = inst->annotation; + if (INTEL_DEBUG & DEBUG_ANNOTATION) { + ann[ann_num].ir = inst->ir; + ann[ann_num].annotation = inst->annotation; + } if (cfg->blocks[block_num]->start == inst) { ann[ann_num].block_start = cfg->blocks[block_num]; diff --git a/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp b/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp index 7e90ee6..9011bff 100644 --- a/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp +++ b/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp @@ -924,8 +924,10 @@ gen8_fs_generator::generate_code(exec_list *instructions, int *num_annotations, } ann[ann_num].offset = next_inst_offset; - ann[ann_num].ir = ir->ir; - ann[ann_num].annotation = ir->annotation; + if (INTEL_DEBUG & DEBUG_ANNOTATION) { + ann[ann_num].ir = ir->ir; + ann[ann_num].annotation = ir->annotation; + } if (cfg->blocks[block_num]->start == ir) { ann[ann_num].block_start = cfg->blocks[block_num]; diff --git a/src/mesa/drivers/dri/i965/gen8_vec4_generator.cpp b/src/mesa/drivers/dri/i965/gen8_vec4_generator.cpp index 5470f87..4aeaf89 100644 --- a/src/mesa/drivers/dri/i965/gen8_vec4_generator.cpp +++ b/src/mesa/drivers/dri/i965/gen8_vec4_generator.cpp @@ -878,8 +878,10 @@ gen8_vec4_generator::generate_code(exec_list *instructions, } ann[ann_num].offset = next_inst_offset; - ann[ann_num].ir = ir->ir; - ann[ann_num].annotation = ir->annotation; + if (INTEL_DEBUG & DEBUG_ANNOTATION) { + ann[ann_num].ir = ir->ir; + ann[ann_num].annotation = ir->annotation; + } if (cfg->blocks[block_num]->start == ir) { ann[ann_num].block_start = cfg->blocks[block_num]; diff --git a/src/mesa/drivers/dri/i965/intel_debug.c b/src/mesa/drivers/dri/i965/intel_debug.c index 621a571..64d2c61 100644 --- a/src/mesa/drivers/dri/i965/intel_debug.c +++ b/src/mesa/drivers/dri/i965/intel_debug.c @@ -64,6 +64,7 @@ static const struct dri_debug_control debug_control[] = { { "no16", DEBUG_NO16 }, { "blorp", DEBUG_BLORP }, { "nodualobj", DEBUG_NO_DUAL_OBJECT_GS }, + { "annotation", DEBUG_ANNOTATION }, { NULL, 0 } }; diff --git a/src/mesa/drivers/dri/i965/intel_debug.h b/src/mesa/drivers/dri/i965/intel_debug.h index 6402cec..49cc584 100644 --- a/src/mesa/drivers/dri/i965/intel_debug.h +++ b/src/mesa/drivers/dri/i965/intel_debug.h @@ -60,6 +60,7 @@ extern uint64_t INTEL_DEBUG; #define DEBUG_NO16 0x20000000 #define DEBUG_VUE 0x40000000 #define DEBUG_NO_DUAL_OBJECT_GS 0x80000000 +#define DEBUG_ANNOTATION 0x100000000 #ifdef HAVE_ANDROID_PLATFORM #define LOG_TAG "INTEL-MESA" -- 1.8.3.2 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev