WhitePaper

From Perf Wiki
(Difference between revisions)
Jump to: navigation, search
 
(7 intermediate revisions by one user not shown)
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_Event| events</tt>]]
 +
* <tt>[[jolsa_Docs_Counting| counting explained</tt>]]
 +
* <tt>[[jolsa_Docs_Sampling| sampling explained</tt>]]
 +
* <tt>[[jolsa_Docs_Sampling| diff explained</tt>]]
 +
* <tt>[[jolsa_Docs_Annotations| annotations explained</tt>]]
 +
* <tt>[[jolsa_Docs_FileFormat| file format description</tt>]]
 +
* <tt>[[jolsa_Docs_Developing| join perf developement</tt>]]
 +
 
 +
=== Commands ===
 +
* <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_Install| install perf package</tt>]]
 +
* <tt>[[jolsa_Howto_Install_Sources| install perf from sources</tt>]]
 +
* <tt>[[jolsa_Howto_Measure_Child_Functions_Cycles| measure child functions cycles</tt>]] - measure child functions cycles by parent
  
 
== Features ==
 
== Features ==
  
 +
=== Merged ===
 +
* <tt>[[jolsa_Features_Post_DWARF_Unwind| post DWARF unwind </tt>]] - callchains DWARF unwind
 +
* <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_Multiple_File_Storage| multiple file storage</tt>]] - allow to store record data into multiple files
 
* <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_Top_Data_File| top data file </tt>]] - store top data into data file
 
* <tt>[[jolsa_Features_Record_Top_Data_File| top data file </tt>]] - store top data into data file
 
* <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
 +
 +
== Contact ==
 +
Jiri Olsa <jolsa at redhat dot com>

Latest revision as of 14:48, 16 August 2013

Contents

[edit] Introduction

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

[edit] 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

[edit] Docs

[edit] Commands

[edit] Tests

[edit] Howtos

[edit] Features

[edit] Merged

[edit] To be done

[edit] Contact

Jiri Olsa <jolsa at redhat dot com>

Personal tools