From: Gisle Aas Date: Tue, 28 Mar 2006 11:18:52 +0000 (+0000) Subject: Improved description of the tmon.out format. X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=a1bbeb14a7db6e20495fcc951bfd8664b8f99c58;p=p5sagit%2Fp5-mst-13.2.git Improved description of the tmon.out format. The / lines where undocumented. p4raw-id: //depot/perl@27620 --- diff --git a/ext/Devel/DProf/DProf.pm b/ext/Devel/DProf/DProf.pm index 49ba6bc..7094af6 100644 --- a/ext/Devel/DProf/DProf.pm +++ b/ext/Devel/DProf/DProf.pm @@ -111,14 +111,39 @@ New C<$over_*> values show the measured overhead of making $over_tests calls to the profiler These values are used by the profiler to subtract the overhead from the runtimes. -The lines starting with C<@> mark time passed from the previous C<@> -line. The lines starting with C<&> introduce new subroutine I and -show the package and the subroutine name of this id. Lines starting -with C<+>, C<-> and C<*> mark entering and exit of subroutines by -Is, and C. - -The I C<+>- and C<->-lines are used to mark the overhead -related to writing to profiler-output file. +Lines starting with C<@> mark the amount of time passed since the +previous C<@> line. The numbers following the C<@> are integer tick +counts representing user, system, and real time. Divide these numbers +by the $hz value in the header to get seconds. + +Lines starting with C<&> map subroutine identifiers (an integer) to +subroutine packages and names. These should only occur once per +subroutine. + +Lines starting with C<+> or C<-> mark normal entering and exit of +subroutines. The number following is a reference to a subroutine +identifier. + +Lines starting with C<*> mark where subroutines are entered by C, but note that the return will still be marked as coming from +the original sub. The sequence might look like this: + + + 5 + * 6 + - 5 + +Lines starting with C is like C<-> but mark where subroutines are +exited by dying. Example: + + + 5 + + 6 + / 6 + / 5 + +Finally you might find C<@> time stamp marks surrounded by C<+ & +Devel::DProf::write> and C<- & Devel::DProf::write> lines. These 3 +lines are outputted when printing of the mark above actually consumed +measurable time. =head1 AUTOLOAD