intel/perf: Update perf scripts to get additional performance counters
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run

There are a number of metrics that are of interest for compute workloads
analysis which were missing in the initial PTL OA support (MR: 35298).
Updated oa_ptl.xml file provides these metrics.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13663
Tested-by: Arselan Alvi <arselan.alvi@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37072>
This commit is contained in:
Sushma Venkatesh Reddy 2025-08-12 01:20:26 +00:00 committed by Marge Bot
parent 44c1dcd0ed
commit 69dc01405d
4 changed files with 1701 additions and 7 deletions

View file

@ -217,6 +217,7 @@ exp_ops = {}
# (n operands, splicer)
exp_ops["AND"] = (2, splice_bitwise_and)
exp_ops["OR"] = (2, splice_bitwise_or)
exp_ops["UGT"] = (2, splice_ugt)
exp_ops["UGTE"] = (2, splice_ugte)
exp_ops["ULT"] = (2, splice_ult)
exp_ops["&&"] = (2, splice_logical_and)
@ -253,6 +254,9 @@ hw_vars["$L3BankTotalCount"] = "perf->sys_vars.n_l3_banks"
hw_vars["$L3BankMaxCount"] = "perf->sys_vars.n_l3_banks"
hw_vars["$L3NodeTotalCount"] = "perf->sys_vars.n_l3_nodes"
hw_vars["$SqidiTotalCount"] = "perf->sys_vars.n_sq_idis"
hw_vars["$DepthPipeTotalCount"] = "perf->sys_vars.n_depth_pipes"
hw_vars["$GeometryPipeTotalCount"] = "perf->sys_vars.n_geom_pipes"
hw_vars["$ColorPipeTotalCount"] = "perf->sys_vars.n_color_pipes"
def resolve_variable(name, set, allow_counters):
if name in hw_vars:

View file

@ -325,6 +325,9 @@ compute_topology_builtins(struct intel_perf_config *perf)
perf->sys_vars.n_l3_banks = devinfo->l3_banks;
perf->sys_vars.n_l3_nodes = devinfo->l3_banks / 4;
perf->sys_vars.n_sq_idis = devinfo->num_slices;
perf->sys_vars.n_depth_pipes = devinfo->num_depth_pipes;
perf->sys_vars.n_geom_pipes = devinfo->num_geom_pipes;
perf->sys_vars.n_color_pipes = devinfo->num_color_pipes;
perf->sys_vars.n_eu_slice0123 = 0;
for (int s = 0; s < MIN2(4, devinfo->max_slices); s++) {

View file

@ -479,6 +479,9 @@ struct intel_perf_config {
uint64_t n_l3_banks; /** $L3BankTotalCount */
uint64_t n_l3_nodes; /** $L3NodeTotalCount */
uint64_t n_sq_idis; /** $SqidiTotalCount */
uint64_t n_depth_pipes; /** $DepthPipeTotalCount */
uint64_t n_geom_pipes; /** $GeometryPipeTotalCount */
uint64_t n_color_pipes; /** $ColorPipeTotalCount */
uint64_t slice_mask; /** $SliceMask */
uint64_t subslice_mask; /** $SubsliceMask */
uint64_t gt_min_freq; /** $GpuMinFrequency */

File diff suppressed because it is too large Load diff