From: Kan Liang <kan.li...@linux.intel.com> Intel Sapphire Rapids server is the successor of the Intel Ice Lake server. There are several user-visible features introduced. - Two new data source fields, data block & address block, are added in the PEBS Memory Info Record for the load latency event. Improve the c2c and mem tools to display the reasons of a memory load block. - Support the new instruction latency in perf mem. Support the new sample type, PERF_SAMPLE_WEIGHT_STRUCT. - Support TMA method level 2 metrics with the perf stat --topdown option. Update the topdown documentation accordingly.
The full description for the SPR features can be found at Intel Architecture Instruction Set Extensions and Future Features Programming Reference, 319433-041 (and later). The kernel patches has been merged into the tip:perf/core branch. Kan Liang (9): tools headers uapi: Update tools's copy of linux/perf_event.h perf tools: Support the auxiliary event perf tools: Support data block and addr block perf c2c: Support data block and addr block perf tools: Support PERF_SAMPLE_WEIGHT_STRUCT perf report: Support instruction latency perf test: Support PERF_SAMPLE_WEIGHT_STRUCT perf stat: Support L2 Topdown events perf, tools: Update topdown documentation for Sapphire Rapids tools/include/uapi/linux/perf_event.h | 54 ++++++++++++++++-- tools/perf/Documentation/perf-report.txt | 9 ++- tools/perf/Documentation/perf-stat.txt | 14 ++++- tools/perf/Documentation/topdown.txt | 78 ++++++++++++++++++++++++-- tools/perf/arch/x86/util/Build | 2 + tools/perf/arch/x86/util/evsel.c | 8 +++ tools/perf/arch/x86/util/mem-events.c | 44 +++++++++++++++ tools/perf/builtin-c2c.c | 3 + tools/perf/builtin-mem.c | 2 +- tools/perf/builtin-stat.c | 34 +++++++++++- tools/perf/tests/sample-parsing.c | 14 ++++- tools/perf/util/event.h | 1 + tools/perf/util/evsel.c | 33 +++++++++-- tools/perf/util/evsel.h | 3 + tools/perf/util/hist.c | 13 ++++- tools/perf/util/hist.h | 3 + tools/perf/util/intel-pt.c | 23 +++++++- tools/perf/util/mem-events.c | 36 ++++++++++++ tools/perf/util/mem-events.h | 5 ++ tools/perf/util/parse-events.l | 1 + tools/perf/util/perf_event_attr_fprintf.c | 2 +- tools/perf/util/record.c | 5 +- tools/perf/util/session.c | 8 ++- tools/perf/util/sort.c | 83 +++++++++++++++++++++++++++- tools/perf/util/sort.h | 4 ++ tools/perf/util/stat-shadow.c | 92 +++++++++++++++++++++++++++++++ tools/perf/util/stat.c | 4 ++ tools/perf/util/stat.h | 9 +++ tools/perf/util/synthetic-events.c | 8 ++- 29 files changed, 560 insertions(+), 35 deletions(-) create mode 100644 tools/perf/arch/x86/util/evsel.c create mode 100644 tools/perf/arch/x86/util/mem-events.c -- 2.7.4