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]

Reply via email to