https://perf.wiki.kernel.org/api.php?action=feedcontributions&user=Sukadevb&feedformat=atomPerf Wiki - User contributions [en]2024-03-29T09:48:22ZUser contributionsMediaWiki 1.19.24https://perf.wiki.kernel.org/index.php/Main_PageMain Page2013-02-20T05:52:09Z<p>Sukadevb: /* References/Useful links */</p>
<hr />
<div>== <tt>perf:</tt> Linux profiling with performance counters ==<br />
''...More than just counters...''<br />
<br />
=== Introduction ===<br />
<br />
This is the wiki page for the <tt>perf</tt> performance counters subsystem in Linux.<br />
Performance counters are CPU hardware registers that <br />
count hardware events such <br />
as instructions executed, cache-misses suffered, or branches mispredicted. They form<br />
a basis for profiling applications to trace dynamic control flow and identify hotspots. <br />
<br />
<tt>perf</tt> provides rich generalized abstractions over hardware specific<br />
capabilities. Among others, it provides per task, per CPU and per-workload counters,<br />
sampling on top of these and source code event annotation.<br />
<br />
The userspace <tt>perf tools</tt> present a simple to use interface with commands like<br />
<br />
* <tt>[[Tutorial#Counting_with_perf_stat| perf stat</tt>]]: obtain event counts<br />
* <tt>[[Tutorial#Sampling_with_perf_record | perf record</tt>]]: record events for later reporting<br />
* <tt>[[Tutorial#Sample_analysis_with_perf_report | perf report</tt>]]: break down events by process, function, etc.<br />
* <tt>[[Tutorial#Source_level_analysis_with_perf_annotate | perf annotate</tt>]]: annotate assembly or source code with event counts<br />
* <tt>[[Tutorial#Live_analysis_with_perf_top | perf top</tt>]]: see live event count <br />
<br />
To learn more, see the examples in the <tt>[[Tutorial]]</tt>.<br />
<br />
=== Wiki Contents ===<br />
<br />
* [[Tutorial]]<br />
* [[Todo]]<br />
* [[HardwareReference]]<br />
* [[perf_events kernel ABI]]<br />
<br />
=== References/Useful links ===<br />
* <tt>[http://indico.cern.ch/materialDisplay.py?contribId=20&sessionId=4&materialId=slides&confId=141309 Roberto Vitillo's presentation on Perf events]</div>Sukadevbhttps://perf.wiki.kernel.org/index.php/Main_PageMain Page2013-02-20T05:51:00Z<p>Sukadevb: /* References/Useful links */</p>
<hr />
<div>== <tt>perf:</tt> Linux profiling with performance counters ==<br />
''...More than just counters...''<br />
<br />
=== Introduction ===<br />
<br />
This is the wiki page for the <tt>perf</tt> performance counters subsystem in Linux.<br />
Performance counters are CPU hardware registers that <br />
count hardware events such <br />
as instructions executed, cache-misses suffered, or branches mispredicted. They form<br />
a basis for profiling applications to trace dynamic control flow and identify hotspots. <br />
<br />
<tt>perf</tt> provides rich generalized abstractions over hardware specific<br />
capabilities. Among others, it provides per task, per CPU and per-workload counters,<br />
sampling on top of these and source code event annotation.<br />
<br />
The userspace <tt>perf tools</tt> present a simple to use interface with commands like<br />
<br />
* <tt>[[Tutorial#Counting_with_perf_stat| perf stat</tt>]]: obtain event counts<br />
* <tt>[[Tutorial#Sampling_with_perf_record | perf record</tt>]]: record events for later reporting<br />
* <tt>[[Tutorial#Sample_analysis_with_perf_report | perf report</tt>]]: break down events by process, function, etc.<br />
* <tt>[[Tutorial#Source_level_analysis_with_perf_annotate | perf annotate</tt>]]: annotate assembly or source code with event counts<br />
* <tt>[[Tutorial#Live_analysis_with_perf_top | perf top</tt>]]: see live event count <br />
<br />
To learn more, see the examples in the <tt>[[Tutorial]]</tt>.<br />
<br />
=== Wiki Contents ===<br />
<br />
* [[Tutorial]]<br />
* [[Todo]]<br />
* [[HardwareReference]]<br />
* [[perf_events kernel ABI]]<br />
<br />
=== References/Useful links ===<br />
* <tt>[[http://indico.cern.ch/materialDisplay.py?contribId=20&sessionId=4&materialId=slides&confId=141309 Roberto Vitillo's presentation on Perf events]]</div>Sukadevbhttps://perf.wiki.kernel.org/index.php/Main_PageMain Page2013-02-20T05:50:12Z<p>Sukadevb: </p>
<hr />
<div>== <tt>perf:</tt> Linux profiling with performance counters ==<br />
''...More than just counters...''<br />
<br />
=== Introduction ===<br />
<br />
This is the wiki page for the <tt>perf</tt> performance counters subsystem in Linux.<br />
Performance counters are CPU hardware registers that <br />
count hardware events such <br />
as instructions executed, cache-misses suffered, or branches mispredicted. They form<br />
a basis for profiling applications to trace dynamic control flow and identify hotspots. <br />
<br />
<tt>perf</tt> provides rich generalized abstractions over hardware specific<br />
capabilities. Among others, it provides per task, per CPU and per-workload counters,<br />
sampling on top of these and source code event annotation.<br />
<br />
The userspace <tt>perf tools</tt> present a simple to use interface with commands like<br />
<br />
* <tt>[[Tutorial#Counting_with_perf_stat| perf stat</tt>]]: obtain event counts<br />
* <tt>[[Tutorial#Sampling_with_perf_record | perf record</tt>]]: record events for later reporting<br />
* <tt>[[Tutorial#Sample_analysis_with_perf_report | perf report</tt>]]: break down events by process, function, etc.<br />
* <tt>[[Tutorial#Source_level_analysis_with_perf_annotate | perf annotate</tt>]]: annotate assembly or source code with event counts<br />
* <tt>[[Tutorial#Live_analysis_with_perf_top | perf top</tt>]]: see live event count <br />
<br />
To learn more, see the examples in the <tt>[[Tutorial]]</tt>.<br />
<br />
=== Wiki Contents ===<br />
<br />
* [[Tutorial]]<br />
* [[Todo]]<br />
* [[HardwareReference]]<br />
* [[perf_events kernel ABI]]<br />
<br />
=== References/Useful links ===<br />
* <tt>[[http://indico.cern.ch/materialDisplay.py?contribId=20&sessionId=4&materialId=slides&confId=141309 | Roberto Vitillo's presentation on Perf events]]</div>Sukadevbhttps://perf.wiki.kernel.org/index.php/Main_PageMain Page2013-02-20T05:44:31Z<p>Sukadevb: </p>
<hr />
<div>== <tt>perf:</tt> Linux profiling with performance counters ==<br />
''...More than just counters...''<br />
<br />
=== Introduction ===<br />
<br />
This is the wiki page for the <tt>perf</tt> performance counters subsystem in Linux.<br />
Performance counters are CPU hardware registers that <br />
count hardware events such <br />
as instructions executed, cache-misses suffered, or branches mispredicted. They form<br />
a basis for profiling applications to trace dynamic control flow and identify hotspots. <br />
<br />
<tt>perf</tt> provides rich generalized abstractions over hardware specific<br />
capabilities. Among others, it provides per task, per CPU and per-workload counters,<br />
sampling on top of these and source code event annotation.<br />
<br />
The userspace <tt>perf tools</tt> present a simple to use interface with commands like<br />
<br />
* <tt>[[Tutorial#Counting_with_perf_stat| perf stat</tt>]]: obtain event counts<br />
* <tt>[[Tutorial#Sampling_with_perf_record | perf record</tt>]]: record events for later reporting<br />
* <tt>[[Tutorial#Sample_analysis_with_perf_report | perf report</tt>]]: break down events by process, function, etc.<br />
* <tt>[[Tutorial#Source_level_analysis_with_perf_annotate | perf annotate</tt>]]: annotate assembly or source code with event counts<br />
* <tt>[[Tutorial#Live_analysis_with_perf_top | perf top</tt>]]: see live event count <br />
<br />
To learn more, see the examples in the <tt>[[Tutorial]]</tt>.<br />
<br />
=== Wiki Contents ===<br />
<br />
* [[Tutorial]]<br />
* [[Todo]]<br />
* [[HardwareReference]]<br />
* [[perf_events kernel ABI]]<br />
<br />
=== References/Useful links ===<br />
* <tt>[[http://indico.cern.ch/materialDisplay.py?contribId=20&sessionId=4&materialId=slides&confId=141309]] Perf presentation from CERN</div>Sukadevb