Main Page
From Perf Wiki
(Difference between revisions)
(move sections into subpages (to match tutorial subpage)) |
m |
||
Line 1: | Line 1: | ||
− | |||
− | |||
− | |||
== <tt>perf:</tt> Linux profiling with performance counters == | == <tt>perf:</tt> Linux profiling with performance counters == | ||
+ | ''...More than just counters...'' | ||
=== Introduction === | === Introduction === | ||
Line 14: | Line 12: | ||
<tt>perf</tt> provides rich generalized abstractions over hardware specific | <tt>perf</tt> provides rich generalized abstractions over hardware specific | ||
capabilities. Among others, it provides per task, per CPU and per-workload counters, | capabilities. Among others, it provides per task, per CPU and per-workload counters, | ||
− | + | sampling on top of these and source code event annotation. | |
+ | |||
The userspace <tt>perf tools</tt> present a simple to use interface with commands like | The userspace <tt>perf tools</tt> present a simple to use interface with commands like | ||
Line 25: | Line 24: | ||
To learn more, see the examples in the <tt>[[Tutorial]]</tt>. | To learn more, see the examples in the <tt>[[Tutorial]]</tt>. | ||
− | == Wiki Contents == | + | === Wiki Contents === |
* [[Tutorial]] | * [[Tutorial]] | ||
* [[Todo]] | * [[Todo]] | ||
* [[HardwareReference]] | * [[HardwareReference]] |
Revision as of 15:43, 29 June 2011
perf: Linux profiling with performance counters
...More than just counters...
Introduction
This is the wiki page for the perf performance counters subsystem in Linux. Performance counters are CPU hardware registers that count hardware events such as instructions executed, cache-misses suffered, or branches mispredicted. They form a basis for profiling applications to trace dynamic control flow and identify hotspots.
perf provides rich generalized abstractions over hardware specific capabilities. Among others, it provides per task, per CPU and per-workload counters, sampling on top of these and source code event annotation.
The userspace perf tools present a simple to use interface with commands like
- perf stat: obtain event counts
- perf record: record events for later reporting
- perf report: break down events by process, function, etc.
- perf annotate: annotate assembly or source code with event counts
- perf top: see live event count
To learn more, see the examples in the Tutorial.