Revision: 1009
Author: tim.bunce
Date: Tue Jan 5 09:39:16 2010
Log: Added docs section on making NYTProf faster.
Added links re clock_gettime clone for OS X into HACKING.
http://code.google.com/p/perl-devel-nytprof/source/detail?r=1009
Modified:
/trunk/Changes
/trunk/HACKING
/trunk/lib/Devel/NYTProf.pm
=======================================
--- /trunk/Changes Mon Jan 4 13:42:33 2010
+++ /trunk/Changes Tue Jan 5 09:39:16 2010
@@ -15,9 +15,11 @@
=head2 Changes in Devel::NYTProf 3.02
- Updated NYTProf docs to include a note about timing on Windows.
Changed some tests to be more informative on failure.
+ Updated docs to include a note about timing on Windows.
+ Updated docs to include a section about making NYTProf faster.
+
=head2 Changes in Devel::NYTProf 3.01 (svn r1005) 28th Dec 2009
Fixed (removed) use of vfscanf() which broke on Windows.
=======================================
--- /trunk/HACKING Mon Jan 4 12:33:17 2010
+++ /trunk/HACKING Tue Jan 5 09:39:16 2010
@@ -336,7 +336,8 @@
Add (very) basic nytprofhtml test (ie it runs and produces output) so we
check the VERSION has been updated.
-called by list: "by $subname line $line of $file" make the file not
include the inc portion
+In the called by list in html: "by $subname line $line of $file"
+make the file not include the @INC portion
Monitor and report when method cache is invalidated. Watch generation
number
and output a tag when it changes. Report locations of changes. Highlight
those
@@ -359,7 +360,7 @@
Check if pp_leavegiven and pp_leavewhen need handling in init_profiler().
Copy the nytprof.out file into the output report dir, so a report is more
-'self-contained' and can be archives and thrown around as a tarball/zip and
+'self-contained' and can be archived and thrown around as a tarball/zip and
still used for further analysis.
The pseudo-sub "main::BEGIN" doesn't appear to be 'called' in NYTProf data.
@@ -385,3 +386,7 @@
Use gethrtime() on platforms that support it.
http://developers.sun.com/solaris/articles/time_stamp.html
http://www.informit.com/guides/content.aspx?g=cplusplus&seqNum=332
+
+Use clock_gettime clone on OS X?
+http://developer.apple.com/mac/library/qa/qa2004/qa1398.html
+http://le-depotoir.googlecode.com/svn/trunk/misc/clock_gettime_stub.c
=======================================
--- /trunk/lib/Devel/NYTProf.pm Mon Jan 4 13:42:33 2010
+++ /trunk/lib/Devel/NYTProf.pm Tue Jan 5 09:39:16 2010
@@ -421,7 +421,7 @@
and the C<-x> file test is C<fteexec>. This may change in future.
Opcodes that call subroutines, perhaps by triggering a FETCH from a tied
-variable, currently appear in the call tree as the call of the sub. This is
+variable, currently appear in the call tree as the caller of the sub. This
is
likely to change in future.
=head2 usecputime=1
@@ -599,6 +599,23 @@
=for comment
No doubt more odd cases will be added here over time.
+=head1 MAKING NYTPROF FASTER
+
+You can reduce the cost of profiling by adjusting some options. The
trade-off
+is reduced detail and/or accuracy in reports.
+
+If you don't need statement-level profiling then you can disable it via
L</stmts=0>.
+If you do need it but don't mind loosing block-level timings then set
L</blocks=0>.
+If you want need still more speed then set L</leave=0> to disable the
+adjustments made for statements that 'leave' the current control flow
(doing
+this I<will> make timings for some kinds of statements less accurate).
+
+If you don't need subroutine profiling then you can disable it via
L</subs=0>.
+If you do need it but don't need timings for perl opcodes then set
L</slowops=0>.
+
+Another approach is to only enable NYTProf in the sections of code that
+interest you. See L</RUN-TIME CONTROL OF PROFILING> for more details.
+
=head1 REPORTS
The L<Devel::NYTProf::Data> module provides a low-level interface for
loading
--
You've received this message because you are subscribed to
the Devel::NYTProf Development User group.
Group hosted at: http://groups.google.com/group/develnytprof-dev
Project hosted at: http://perl-devel-nytprof.googlecode.com
CPAN distribution: http://search.cpan.org/dist/Devel-NYTProf
To post, email: [email protected]
To unsubscribe, email: [email protected]