没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
Using perf On Arm platforms
Leo Yan & Daniel Thompson
Linaro Support and Solutions Engineering
Introduction
perf is a performance analysis tools for Linux,
it covers hardware level features and
software features for performance profiling
with the high efficiency.
We will review the fundamental mechanism
for perf, then go through different usages
delivered by perf, mainly for Arm related
hardware features. We will conclude the
session by discussing an examples.
We will finish this material in 50 minutes.
Agenda
● Statistical profiling on Arm platforms
○ Fundamental mechanism (for statistical profiling)
○ Profile with timer
○ Profile with PMU
● Using perf with tracing tools
○ Profile with ftrace
○ Profile with probes
○ Profile with CoreSight
● Debugging stories
perf - a family of useful tools
perf is a powerful profiling tool; primarily it
exploits the CPU performance counters but
can also gather information from other
sources (including hrtimers, static
tracepoints and dynamic probes).
perf is a family of useful tools collected into a
single binary; it is a profiling tool to gather
statistics info and report the result, it can act
as a wrapper for ftrace and eBPF, it also
includes the benchmark suites for memory,
scheduling performance testing, etc.
perf top perf stat perf record
perf probe perf listperf ftrace
perf report
perf annotate
perf data perf diff
perf evlist
perf script
perf bench
Profiling and tracing
Reports
Benchmark suites
perf sched
perf inject
Profiling events
perf supports different kinds profiling events,
especially statistical profiling and
performance monitoring.
At the most basic end, a timer (clock event)
can used to periodically sample the PC,
however profiling can be triggered by other
hardware events such as I$ or D$ miss,
branch instruction, etc. perf also can rely on
hardware breakpoint for profiling.
perf also supports software events for kernel
software event statistics, like context
switches counting, ftrace tracepoints, etc.
perf list command is used to quickly
check what events are supported in your
system:
# perf list
cache-misses [Hardware event]
[...]
cpu-clock [Software event]
context-switches OR cs [Software event]
[...]
mem:<addr>[/len][:access] [Hardware breakpoint]
9p:9p_client_req [Tracepoint event]
[...]
剩余40页未读,继续阅读
资源评论
lunhui2016
- 粉丝: 1909
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功