From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0FC50A726A for ; Mon, 22 Aug 2022 23:57:09 +0000 (UTC) From: Umesh Nerlige Ramappa To: igt-dev@lists.freedesktop.org Date: Mon, 22 Aug 2022 23:56:57 +0000 Message-Id: <20220822235657.280702-24-umesh.nerlige.ramappa@intel.com> In-Reply-To: <20220822235657.280702-1-umesh.nerlige.ramappa@intel.com> References: <20220822235657.280702-1-umesh.nerlige.ramappa@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [igt-dev] [PATCH i-g-t 23/23] lib/i915/perf: Add DG2 metrics List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" List-ID: From: Lionel Landwerlin Add DG2 metrics XML files for perf OA tests. Signed-off-by: Lionel Landwerlin --- lib/i915/perf-configs/guids.xml | 24 + lib/i915/perf-configs/mdapi-xml-convert.py | 5 +- lib/i915/perf-configs/oa-dg2.xml | 9920 +++++++++++++++++ .../perf-configs/perf-metricset-codegen.py | 13 + lib/i915/perf-configs/update-guids.py | 2 +- lib/i915/perf.c | 3 + lib/meson.build | 2 +- 7 files changed, 9965 insertions(+), 4 deletions(-) create mode 100644 lib/i915/perf-configs/oa-dg2.xml diff --git a/lib/i915/perf-configs/guids.xml b/lib/i915/perf-configs/guids.xml index 95c9d717..61a11542 100644 --- a/lib/i915/perf-configs/guids.xml +++ b/lib/i915/perf-configs/guids.xml @@ -431,4 +431,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/i915/perf-configs/mdapi-xml-convert.py b/lib/i915/perf-configs/mdapi-xml-convert.py index 1d161674..72b52bfd 100755 --- a/lib/i915/perf-configs/mdapi-xml-convert.py +++ b/lib/i915/perf-configs/mdapi-xml-convert.py @@ -141,6 +141,7 @@ chipsets = { 'RKL': gen8_11_chipset_params, 'DG1': gen8_11_chipset_params, 'ADL': gen8_11_chipset_params, + 'DG2': xehpsdv_chipset_params, } register_types = { 'OA', 'NOA', 'FLEX', 'PM' } @@ -214,7 +215,7 @@ def read_token_to_rpn_read(chipset, token, raw_offsets): assert 0 elif offset < b_offset: a_cnt_offset = int((offset - a_offset) / 4) - if chipset == "XEHPSDV": + if chipset == "XEHPSDV" or chipset == "DG2": # Most A counters are in a contiguous array, except # this A37. if a_cnt_offset == 42: @@ -245,7 +246,7 @@ def read_token_to_rpn_read(chipset, token, raw_offsets): return "C " + str(idx - 54) + " READ" else: return "{0} READ".format(read_value(chipset, offset)) - elif chipset == "XEHPSDV": + elif chipset == "XEHPSDV" or chipset == "DG2": # For XEHPSDV the array of accumulated counters is # assumed to start with a GPU_TIME then GPU_CLOCK, # then 38 A counters, then 8 B counters and finally diff --git a/lib/i915/perf-configs/oa-dg2.xml b/lib/i915/perf-configs/oa-dg2.xml new file mode 100644 index 00000000..9d3e2541 --- /dev/null +++ b/lib/i915/perf-configs/oa-dg2.xml @@ -0,0 +1,9920 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/i915/perf-configs/perf-metricset-codegen.py b/lib/i915/perf-configs/perf-metricset-codegen.py index 00528c31..58237c27 100644 --- a/lib/i915/perf-configs/perf-metricset-codegen.py +++ b/lib/i915/perf-configs/perf-metricset-codegen.py @@ -126,6 +126,19 @@ def generate_metric_sets(args, gen): metric_set->c_offset = metric_set->b_offset + 8; metric_set->perfcnt_offset = metric_set->c_offset + 8; + """)) + elif gen.chipset == "dg2": + 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("""\ diff --git a/lib/i915/perf-configs/update-guids.py b/lib/i915/perf-configs/update-guids.py index d38a7a95..3cd06f13 100755 --- a/lib/i915/perf-configs/update-guids.py +++ b/lib/i915/perf-configs/update-guids.py @@ -174,7 +174,7 @@ chipsets = [ 'hsw', 'bxt', 'glk', 'cnl', 'icl', 'ehl', - 'tglgt1', 'tglgt2', 'rkl', 'dg1', 'adl' ] + 'tglgt1', 'tglgt2', 'rkl', 'dg1', 'adl', 'dg2', ] for chipset in chipsets: filename = 'oa-' + chipset + '.xml' diff --git a/lib/i915/perf.c b/lib/i915/perf.c index d004313f..39179546 100644 --- a/lib/i915/perf.c +++ b/lib/i915/perf.c @@ -58,6 +58,7 @@ #include "i915_perf_metrics_rkl.h" #include "i915_perf_metrics_dg1.h" #include "i915_perf_metrics_adl.h" +#include "i915_perf_metrics_dg2.h" static int perf_ioctl(int fd, unsigned long request, void *arg) @@ -280,6 +281,8 @@ intel_perf_for_devinfo(uint32_t device_id, } else if (devinfo->is_alderlake_s || devinfo->is_alderlake_p || devinfo->is_raptorlake_s || devinfo->is_alderlake_n) { intel_perf_load_metrics_adl(perf); + } else if (devinfo->is_dg2) { + intel_perf_load_metrics_dg2(perf); } else { return unsupported_i915_perf_platform(perf); } diff --git a/lib/meson.build b/lib/meson.build index 98c2803b..8dabd64d 100644 --- a/lib/meson.build +++ b/lib/meson.build @@ -254,7 +254,7 @@ i915_perf_hardware = [ 'bxt', 'glk', 'cnl', 'icl', 'ehl', - 'tglgt1', 'tglgt2', 'rkl', 'dg1', 'adl', + 'tglgt1', 'tglgt2', 'rkl', 'dg1', 'adl', 'dg2', ] i915_xml_files = [] -- 2.25.1