From d53682e1a966ae98ec2df0af1c771d1cb6a7e487 Mon Sep 17 00:00:00 2001 From: Lionel Landwerlin Date: Fri, 1 Jul 2022 10:52:45 +0300 Subject: [PATCH] intel/utrace: make blorp tracepoints more readable With the operation name and some formats. Signed-off-by: Lionel Landwerlin Reviewed-by: Ivan Briano Part-of: --- src/gallium/drivers/iris/iris_blorp.c | 9 +++++---- src/intel/ds/intel_tracepoints.py | 12 +++++++----- src/intel/isl/isl.h | 6 ++++++ src/intel/vulkan/genX_blorp_exec.c | 9 +++++---- src/intel/vulkan_hasvk/genX_blorp_exec.c | 9 +++++---- 5 files changed, 28 insertions(+), 17 deletions(-) diff --git a/src/gallium/drivers/iris/iris_blorp.c b/src/gallium/drivers/iris/iris_blorp.c index 774cad83fcb..4cfcad00561 100644 --- a/src/gallium/drivers/iris/iris_blorp.c +++ b/src/gallium/drivers/iris/iris_blorp.c @@ -478,12 +478,13 @@ blorp_measure_end(struct blorp_batch *blorp_batch, struct iris_batch *batch = blorp_batch->driver_batch; trace_intel_end_blorp(&batch->trace, + params->op, params->x1 - params->x0, params->y1 - params->y0, - params->hiz_op, - params->fast_clear_op, - params->shader_type, - params->shader_pipeline); + params->num_samples, + params->shader_pipeline, + params->dst.view.format, + params->src.view.format); } void diff --git a/src/intel/ds/intel_tracepoints.py b/src/intel/ds/intel_tracepoints.py index 9085cc3de89..882d91d3e39 100644 --- a/src/intel/ds/intel_tracepoints.py +++ b/src/intel/ds/intel_tracepoints.py @@ -72,12 +72,14 @@ def define_tracepoints(args): Arg(type='uint8_t', var='resume', c_format='%hhu'),]) begin_end_tp('blorp', - tp_args=[Arg(type='uint32_t', name='width', var='width', c_format='%u'), + tp_args=[Arg(type='enum blorp_op', name='op', var='op', c_format='%s', to_prim_type='blorp_op_to_name({})'), + Arg(type='uint32_t', name='width', var='width', c_format='%u'), Arg(type='uint32_t', name='height', var='height', c_format='%u'), - Arg(type='enum isl_aux_op', name='hiz_op', var='hiz_op', c_format='%s', to_prim_type='isl_aux_op_to_name({})'), - Arg(type='enum isl_aux_op', name='fast_clear_op', var='fast_clear_op', c_format='%s', to_prim_type='isl_aux_op_to_name({})'), - Arg(type='enum blorp_shader_type', name='blorp_type', var='shader_type', c_format='%s', to_prim_type='blorp_shader_type_to_name({})'), - Arg(type='enum blorp_shader_pipeline', name='blorp_pipe', var='shader_pipe', c_format='%s', to_prim_type='blorp_shader_pipeline_to_name({})'),]) + Arg(type='uint32_t', name='samples', var='samples', c_format='%u'), + Arg(type='enum blorp_shader_pipeline', name='blorp_pipe', var='shader_pipe', c_format='%s', to_prim_type='blorp_shader_pipeline_to_name({})'), + Arg(type='enum isl_format', name='dst_fmt', var='dst_fmt', c_format='%s', to_prim_type='isl_format_get_short_name({})'), + Arg(type='enum isl_format', name='src_fmt', var='src_fmt', c_format='%s', to_prim_type='isl_format_get_short_name({})'), + ]) begin_end_tp('draw', tp_args=[Arg(type='uint32_t', var='count', c_format='%u')]) diff --git a/src/intel/isl/isl.h b/src/intel/isl/isl.h index 2073c58154a..6c6087230c1 100644 --- a/src/intel/isl/isl.h +++ b/src/intel/isl/isl.h @@ -1841,6 +1841,12 @@ isl_format_get_name(enum isl_format fmt) return isl_format_names + isl_format_name_offsets[fmt]; } +static inline const char * ATTRIBUTE_CONST +isl_format_get_short_name(enum isl_format fmt) +{ + return isl_format_get_name(fmt) + 11 /* ISL_FORMAT_ */; +} + enum isl_format isl_format_for_pipe_format(enum pipe_format pf); bool isl_format_supports_rendering(const struct intel_device_info *devinfo, diff --git a/src/intel/vulkan/genX_blorp_exec.c b/src/intel/vulkan/genX_blorp_exec.c index 9409941e714..140e50f4511 100644 --- a/src/intel/vulkan/genX_blorp_exec.c +++ b/src/intel/vulkan/genX_blorp_exec.c @@ -51,12 +51,13 @@ static void blorp_measure_end(struct blorp_batch *_batch, { struct anv_cmd_buffer *cmd_buffer = _batch->driver_batch; trace_intel_end_blorp(&cmd_buffer->trace, + params->op, params->x1 - params->x0, params->y1 - params->y0, - params->hiz_op, - params->fast_clear_op, - params->shader_type, - params->shader_pipeline); + params->num_samples, + params->shader_pipeline, + params->dst.view.format, + params->src.view.format); } static void * diff --git a/src/intel/vulkan_hasvk/genX_blorp_exec.c b/src/intel/vulkan_hasvk/genX_blorp_exec.c index f86ef9768ff..198edcc83f1 100644 --- a/src/intel/vulkan_hasvk/genX_blorp_exec.c +++ b/src/intel/vulkan_hasvk/genX_blorp_exec.c @@ -51,12 +51,13 @@ static void blorp_measure_end(struct blorp_batch *_batch, { struct anv_cmd_buffer *cmd_buffer = _batch->driver_batch; trace_intel_end_blorp(&cmd_buffer->trace, + params->op, params->x1 - params->x0, params->y1 - params->y0, - params->hiz_op, - params->fast_clear_op, - params->shader_type, - params->shader_pipeline); + params->num_samples, + params->shader_pipeline, + params->dst.view.format, + params->src.view.format); } static void *