This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Improved description of the tmon.out format.
authorGisle Aas <gisle@activestate.com>
Tue, 28 Mar 2006 11:18:52 +0000 (11:18 +0000)
committerGisle Aas <gisle@activestate.com>
Tue, 28 Mar 2006 11:18:52 +0000 (11:18 +0000)
The / lines where undocumented.

p4raw-id: //depot/perl@27620

ext/Devel/DProf/DProf.pm

index 49ba6bc..7094af6 100644 (file)
@@ -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.
 
 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<id> 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
-I<id>s, and C<goto &subr>.
-
-The I<old-style> 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<goto
+&subr>, 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
 
 
 =head1 AUTOLOAD