[igt-dev] [PATCH i-g-t 17/31] i915/perf: Choose OAM format for media metrics
Kamil Konieczny
kamil.konieczny at linux.intel.com
Mon Mar 13 15:52:11 UTC 2023
Hi Umesh,
add 'lib/' before i915 in subject.
With that
Acked-by: Kamil Konieczny <kamil.konieczny at linux.intel.com>
Regards,
Kamil
On 2023-02-14 at 16:46:34 -0800, Umesh Nerlige Ramappa wrote:
> If the metric set has OAM format defined, update the generated metrics
> accordingly.
>
> Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa at intel.com>
> ---
> lib/i915/perf-configs/codegen.py | 4 +++
> lib/i915/perf-configs/mdapi-xml-convert.py | 1 +
> .../perf-configs/perf-metricset-codegen.py | 36 ++++++++++++-------
> 3 files changed, 29 insertions(+), 12 deletions(-)
>
> diff --git a/lib/i915/perf-configs/codegen.py b/lib/i915/perf-configs/codegen.py
> index 755142cc..020e76ef 100644
> --- a/lib/i915/perf-configs/codegen.py
> +++ b/lib/i915/perf-configs/codegen.py
> @@ -117,6 +117,10 @@ class Set:
> def underscore_name(self):
> return self.xml.get('underscore_name')
>
> + @property
> + def oa_format(self):
> + return self.xml.get('oa_format')
> +
> def findall(self, path):
> return self.xml.findall(path)
>
> diff --git a/lib/i915/perf-configs/mdapi-xml-convert.py b/lib/i915/perf-configs/mdapi-xml-convert.py
> index 5c784643..3b7d0663 100755
> --- a/lib/i915/perf-configs/mdapi-xml-convert.py
> +++ b/lib/i915/perf-configs/mdapi-xml-convert.py
> @@ -659,6 +659,7 @@ for arg in args.xml:
> set.set('symbol_name', set_symbol_name)
> set.set('underscore_name', underscore(mdapi_set.get('SymbolName')))
> set.set('mdapi_supported_apis', strip_dx_apis(mdapi_set.get('SupportedAPI')))
> + set.set('oa_format', oa_format)
>
>
> # Look at the hardware register config before looking at the counters.
> diff --git a/lib/i915/perf-configs/perf-metricset-codegen.py b/lib/i915/perf-configs/perf-metricset-codegen.py
> index 08351309..8b2c5d7b 100644
> --- a/lib/i915/perf-configs/perf-metricset-codegen.py
> +++ b/lib/i915/perf-configs/perf-metricset-codegen.py
> @@ -128,18 +128,30 @@ def generate_metric_sets(args, gen):
>
> """))
> elif gen.chipset.startswith("acm") or gen.chipset.startswith("mtl"):
> - c(textwrap.dedent("""\
> - metric_set->perf_oa_format = I915_OA_FORMAT_A24u40_A14u32_B8_C8;
> -
> - metric_set->perf_raw_size = 256;
> - metric_set->gpu_time_offset = 0;
> - metric_set->gpu_clock_offset = 1;
> - metric_set->a_offset = 2;
> - metric_set->b_offset = metric_set->a_offset + 38;
> - metric_set->c_offset = metric_set->b_offset + 8;
> - metric_set->perfcnt_offset = metric_set->c_offset + 8;
> -
> - """))
> + if set.oa_format == "128B_MPEC8_NOA16":
> + c(textwrap.dedent("""\
> + metric_set->perf_oa_format = I915_OAM_FORMAT_MPEC8u32_B8_C8;
> +
> + metric_set->perf_raw_size = 128;
> + metric_set->gpu_time_offset = 0;
> + metric_set->gpu_clock_offset = 1;
> + metric_set->a_offset = 2;
> + metric_set->b_offset = metric_set->a_offset + 8;
> + metric_set->c_offset = metric_set->b_offset + 8;
> + metric_set->perfcnt_offset = metric_set->c_offset + 8;
> + """))
> + else:
> + c(textwrap.dedent("""\
> + metric_set->perf_oa_format = I915_OA_FORMAT_A24u40_A14u32_B8_C8;
> +
> + metric_set->perf_raw_size = 256;
> + metric_set->gpu_time_offset = 0;
> + metric_set->gpu_clock_offset = 1;
> + metric_set->a_offset = 2;
> + metric_set->b_offset = metric_set->a_offset + 38;
> + metric_set->c_offset = metric_set->b_offset + 8;
> + metric_set->perfcnt_offset = metric_set->c_offset + 8;
> + """))
> else:
> c(textwrap.dedent("""\
> metric_set->perf_oa_format = I915_OA_FORMAT_A32u40_A4u32_B8_C8;
> --
> 2.36.1
>
More information about the igt-dev
mailing list