Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

perf jevents: Add mesh bandwidth saturation metric for Intel

Memory bandwidth saturation from CBOX/CHA events present in
broadwellde, broadwellx, cascadelakex, haswellx, icelakex, skylakex
and snowridgex.

Signed-off-by: Ian Rogers <irogers@google.com>
Tested-by: Thomas Falcon <thomas.falcon@intel.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Benjamin Gray <bgray@linux.ibm.com>
Cc: Caleb Biggers <caleb.biggers@intel.com>
Cc: Edward Baker <edward.baker@intel.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: James Clark <james.clark@linaro.org>
Cc: Jing Zhang <renyu.zj@linux.alibaba.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: John Garry <john.g.garry@oracle.com>
Cc: Leo Yan <leo.yan@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Perry Taylor <perry.taylor@intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Sandipan Das <sandipan.das@amd.com>
Cc: Weilin Wang <weilin.wang@intel.com>
Cc: Xu Yang <xu.yang_2@nxp.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>

authored by

Ian Rogers and committed by
Arnaldo Carvalho de Melo
e74f72a7 5dc81578

+17
+17
tools/perf/pmu-events/intel_metrics.py
··· 1033 1033 ], description="Memory Bandwidth") 1034 1034 1035 1035 1036 + def UncoreMemSat() -> Optional[Metric]: 1037 + try: 1038 + clocks = Event("UNC_CHA_CLOCKTICKS", "UNC_C_CLOCKTICKS") 1039 + sat = Event("UNC_CHA_DISTRESS_ASSERTED.VERT", "UNC_CHA_FAST_ASSERTED.VERT", 1040 + "UNC_C_FAST_ASSERTED") 1041 + except: 1042 + return None 1043 + 1044 + desc = ("Mesh Bandwidth saturation (% CBOX cycles with FAST signal asserted, " 1045 + "include QPI bandwidth saturation), lower is better") 1046 + if "UNC_CHA_" in sat.name: 1047 + desc = ("Mesh Bandwidth saturation (% CHA cycles with FAST signal asserted, " 1048 + "include UPI bandwidth saturation), lower is better") 1049 + return Metric("lpm_mem_sat", desc, d_ratio(sat, clocks), "100%") 1050 + 1051 + 1036 1052 def UncoreUpiBw() -> Optional[MetricGroup]: 1037 1053 try: 1038 1054 upi_rds = Event("UNC_UPI_RxL_FLITS.ALL_DATA") ··· 1113 1097 UncoreDir(), 1114 1098 UncoreMem(), 1115 1099 UncoreMemBw(), 1100 + UncoreMemSat(), 1116 1101 UncoreUpiBw(), 1117 1102 ]) 1118 1103