[PATCH v2 0/5] perf: arm_spe: Add format option for discard mode
From: James Clark
Date: Tue Dec 24 2024 - 05:47:43 EST
Discard mode (Armv8.6) is a way to enable SPE related PMU events without
the overhead of recording any data. Add a format option, tests and docs
for it.
In theory we could make the driver drop calls to allocate the aux buffer
when discard mode is enabled. This would give a small memory saving,
but I think there is potential to interfere with any tools that don't
expect this so I left the aux allocation untouched. Even old tools that
don't know about discard mode will be able to use it because we publish
the format option. Not allocating the aux buffer will have to be added
to tools which I've done in Perf.
Tested on the FVP with SAMPLE_FEED_OP (0x812D):
$ perf stat -e armv8_pmuv3/event=0x812D/ -- true
Performance counter stats for 'true':
0 armv8_pmuv3/event=0x812D/
$ perf record -e arm_spe/discard/ -a -N -B --no-bpf-event -o - > /dev/null &
$ perf stat -e armv8_pmuv3/event=0x812D/ -- true
Performance counter stats for 'true':
17350 armv8_pmuv3/event=0x812D/
Changes since v1:
* Add a new section and some clarifications about the PMU events to
the docs. (Ian)
James Clark (5):
perf: arm_spe: Add format option for discard mode
perf tool: arm-spe: Pull out functions for aux buffer and tracking
setup
perf tool: arm-spe: Don't allocate buffer or tracking event in discard
mode
perf test: arm_spe: Add test for discard mode
perf docs: arm_spe: Document new discard mode
drivers/perf/arm_spe_pmu.c | 23 ++++++
tools/perf/Documentation/perf-arm-spe.txt | 26 +++++++
tools/perf/arch/arm64/util/arm-spe.c | 90 +++++++++++++++--------
tools/perf/tests/shell/test_arm_spe.sh | 30 ++++++++
4 files changed, 137 insertions(+), 32 deletions(-)
--
2.34.1