Statistical Profiling Extension support (SPE) for HWT framework
This depends on hwt patch
Co-authored-by: Andrew Turner <andrew@FreeBSD.org>
Sponsored by: Arm Ltd
Sponsored by: The FreeBSD Foundation (early driver)
Differential D46241
HWT: Arm Statistical Profiling Extension (SPE) support zachary.leaf_arm.com on Aug 7 2024, 2:49 PM. Authored by Tags None Referenced Files
Details Statistical Profiling Extension support (SPE) for HWT framework This depends on hwt patch Co-authored-by: Andrew Turner <andrew@FreeBSD.org> Test with hwt utility
./hwt -c spe -s 0,1,2,3 -b 1048576 -r -w ~/spe_recs Currently only MODE_CPU is supported for profiling all activity on each core specified by -s. By default hwt utility will configure SPE to store the current PID in the context field in the raw SPE records. This means records can be filtered by PID after capture to get a per process view. Building the hwt utility with the ARM_SPE_CTX_CPU_ID flag will instead place the cpu_id into the context field. Minimum buffer size is 8192 bytes, however larger buffer size of 1MiB+ is recommend to minimise the number of buffer full interrupts. See code comment at the top of sys/arm64/spe/arm_spe_backend.c. Currently there is no support for decoding raw SPE records in hwt, however the raw records can be decoded with the spe-parser[1] tool. spe-parser -d ~/spe_recs -t csv 1: https://gitlab.arm.com/telemetry-solution/telemetry-solution/-/tree/main/tools/spe_parser
Diff Detail
|