Detail a bit more about profilers

This commit is contained in:
Théophile Bastian 2018-08-07 11:29:21 +02:00
parent b685351dd2
commit ee09bc2b4b

View file

@ -822,16 +822,17 @@ Listing~\ref{lst:ex1_dw}, etc.
\subsection{Presentation of \prog{perf}}
\prog{Perf} is a \emph{profiler} that comes with the Linux ecosystem (actually,
\prog{perf} is developed within the Linux kernel source tree). A profiler is a
program that analyzes the performance of programs by recording the time spent
in each function, including within nested calls.
\prog{perf} is developed within the Linux kernel source tree). A profiler is an
important tool from the developer's toolbox that analyzes the performance of
programs by recording the time spent in each function, including within nested
calls. This analysis often enables programmers to optimize critical paths and
functions in their programs, while leaving unoptimized functions that are
seldom traversed.
For this purpose, the basic idea is to stop the traced program at regular
intervals, unwind its stack, write down the current nested function calls, and
integrate the sampled data in the end.
\todo{Is it necessary to write more about \prog{perf} here?}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Benchmarking with \prog{perf}}\label{ssec:bench_perf}