Sample Instructions with WindowsPerf and Arm SPE
Introduction
Overview of Arm Statistical Profiling Extension
Setup
WindowsPerf Sample using SPE
WindowsPerf Record using SPE
Summary
Next Steps
Sample Instructions with WindowsPerf and Arm SPE
Review frequently asked questions
These FAQs were drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.
Use the SPE-enabled build included in WindowsPerf release
3.8.0. Download the release asset and select the WindowsPerf build in the SPE/ subdirectory.Yes. The examples use
python_d.exe, which you build from CPython sources in debug mode for Windows on Arm (AArch64).Use
-- to separate wperf options from the arguments passed to python_d.exe. Everything after -- is forwarded to the Python process.Pinning keeps the workload on a known CPU so collected samples map to that core consistently. Pin the process to core 1.
WindowsPerf records SPE load events for the run. Use the
--annotate and --disassemble options to review where sampled instructions map to source code and assembly.