WhitePaper

From Perf Wiki
(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
 
== Introduction ==
 
== Introduction ==
  
 +
This page provides various documentation for perf tool.
 +
It's under construction forever.
  
== Counting ==
+
=== Code trees ===
 +
If not state otherwise all features code described in here is based on:
  
== Sampling ==
+
<pre>
 +
git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
 +
 
 +
perf/core branch
 +
</pre>
 +
 
 +
which is regularly based/synced on Arnaldo's tree:
 +
 
 +
<pre>
 +
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux (fetch)
 +
 
 +
perf/core branch
 +
</pre>
 +
 
 +
== Docs ==
 +
* <tt>[[jolsa_Docs_Counting| counting explained</tt>]]
 +
* <tt>[[jolsa_Docs_Sampling| sampling explained</tt>]]
 +
* <tt>[[jolsa_Docs_Sampling| diff explained</tt>]]
 +
 
 +
* <tt>[[jolsa_Docs_Perf_Stat| perf stat</tt>]]
 +
* <tt>[[jolsa_Docs_Perf_Stat| perf record</tt>]]
 +
* <tt>[[jolsa_Docs_Perf_Stat| perf report</tt>]]
 +
* <tt>[[jolsa_Docs_Perf_Stat| perf diff</tt>]]
 +
 
 +
== Tests ==
 +
 
 +
* <tt>[[jolsa_Tests_Explained| tests explained </tt>]] - how to run/create tests
 +
* <tt>[[jolsa_Tests_Auto| auto test framework </tt>]] - automatic compile/run test
 +
 
 +
== Howtos ==
 +
 
 +
* <tt>[[jolsa_Howto_Measure_Single_Function_Cycles| measure function cycles</tt>]] - measure single function cycles
  
 
== Features ==
 
== Features ==
  
 +
=== Merged ===
 +
* <tt>[[jolsa_Features_Post_DWARF_Unwind| post DWARF unwind </tt>]] - callchains DWARF unwind
 +
 +
=== To be merged  ===
 +
* <tt>[[jolsa_Features_GroupSampling| group sampling </tt>]] - group leader sampling
 +
* <tt>[[jolsa_Features_MultiDiff| multi diff </tt>]] - diff multiple files
 +
 +
=== To be done  ===
 
* <tt>[[jolsa_Features_CPU_Hotplug| cpu hotplug</tt>]] - follow cpu hotplug in perf record
 
* <tt>[[jolsa_Features_CPU_Hotplug| cpu hotplug</tt>]] - follow cpu hotplug in perf record
 
* <tt>[[jolsa_Features_Stat_Formulas| stat formulas</tt>]] - formulas support over perf stat
 
* <tt>[[jolsa_Features_Stat_Formulas| stat formulas</tt>]] - formulas support over perf stat
 
* <tt>[[jolsa_Features_Precise| precise</tt>]] - precise level detection
 
* <tt>[[jolsa_Features_Precise| precise</tt>]] - precise level detection
 
* <tt>[[jolsa_Features_Kbuild| kbuild</tt>]] - kernel kbuild support
 
* <tt>[[jolsa_Features_Kbuild| kbuild</tt>]] - kernel kbuild support
* <tt>[[jolsa_Features_GroupSampling| group sampling </tt>]] - group leader sampling
 
* <tt>[[jolsa_Features_MultiDiff| multi diff </tt>]] - diff multiple files
 
* <tt>[[jolsa_Features_Post_DWARF_Unwind| post DWARF unwind </tt>]] - callchains DWARF unwind
 
* <tt>[[jolsa_Features_Tests| tests </tt>]] - how to run/create tests
 
 
* <tt>[[jolsa_Features_Mmap| mmap details </tt>]] - report mmap details
 
* <tt>[[jolsa_Features_Mmap| mmap details </tt>]] - report mmap details
 
* <tt>[[jolsa_Features_Record_Multiple_Files| multiple data files </tt>]] - record into multiple data files
 
* <tt>[[jolsa_Features_Record_Multiple_Files| multiple data files </tt>]] - record into multiple data files
Line 21: Line 59:
 
* <tt>[[jolsa_Features_NonArchitectural_Events| nonarchitectural event </tt>]] - nonarchitectural event specification
 
* <tt>[[jolsa_Features_NonArchitectural_Events| nonarchitectural event </tt>]] - nonarchitectural event specification
 
* <tt>[[jolsa_Features_Data_File_Merge| data file merge </tt>]] - merge data files by time
 
* <tt>[[jolsa_Features_Data_File_Merge| data file merge </tt>]] - merge data files by time
 +
* <tt>[[jolsa_Features_Togle_Event| toggle event </tt>]] - run event on another event sample

Revision as of 12:39, 19 June 2013

Contents

Introduction

This page provides various documentation for perf tool. It's under construction forever.

Code trees

If not state otherwise all features code described in here is based on:

git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git

perf/core branch

which is regularly based/synced on Arnaldo's tree:

git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux (fetch)

perf/core branch

Docs

Tests

Howtos

Features

Merged

To be merged

To be done

Personal tools