Perf is a powerful tool for profiling and debugging for Linux kernel. In addition to being the main window into the performance counters, it also provides support for different backends including both software and hardware tracing.

In this session we will offer an introduction for perf support for the Arm platform, with particular focus on the how perf can exploit the PMU hardware counters and Coresight hardware features. We will reinforce this with practical examples of tracing and profiling using the perf tool on 96boards Hikey boards.