|-f, --file <filename>||Specifies the location of the file generated by Devel::NYTProf. Default: ./nytprof.out|
|-o, --out <dir>||The directory in which to place the generated report files. Default: ./nytprof/|
|-d, --delete||Purge any existing contents of the report output directory.|
|-l, --lib <dir>||Add a path to the beginning of @INC to help nytprofhtml find the source files used by the code. Should not be needed in practice.|
Make your web browser visit the report after it has been generated.
If this doesnt work well for you, try installing the Browser::Open module.
|-m, --minimal||Dont generate graphviz .dot files or block/sub-level reports.|
|--no-flame||Disable generation of the flamegraph on the index page. Also disables calculation of distinct call stacks that are used to produce the flamegraph.|
|-h, --help||Print the help message.|
You can see a complete report for a large application (over 200 files and 2000 subroutines) at <https://www.me.com/ix/tim.bunce/Public/perl/nytprof/nytprof-perlcritic-demo/index.html>
The report was generated by profiling perlcritic 1.106 checking its own source code using perl 5.12.1.
The profiled application executed code in a module that used AutoLoader to load the code from a separate .al file. NYTProf automatically recognises this situation and tries to determine the parent module file so it can associate the profile data with it. In order to do that the parent module file must already be known to NYTProf, typically by already having some code profiled.
Youre only likely to see this warning if youre using the start option to start profiling after compile-time. The effect is that times spent in autoloaded subs wont be associated with the parent module file and you wont get annotated reports for them.
You can avoid this by using the default start=begin option, or by ensuring you execute some non-autoloaded code in the parent module, while the profiler is running, before an autoloaded sub is called.
A bit of history and a shameless plug...
NYTProf stands for New York Times Profiler. Indeed, this module was initially developed from Devel::FastProf by The New York Times Co. to help our developers quickly identify bottlenecks in large Perl applications. The NY Times loves Perl and we hope the community will benefit from our work as much as we have from theirs.
Please visit <http://open.nytimes.com>, our open source blog to see what we are up to, <http://code.nytimes.com> to see some of our open projects and then check out <http://nytimes.com> for the latest news!
Devel::DProf | 1995-10-31 | ILYAZ Devel::AutoProfiler | 2002-04-07 | GSLONDON Devel::Profiler | 2002-05-20 | SAMTREGAR Devel::Profile | 2003-04-13 | JAW Devel::DProfLB | 2006-05-11 | JAW Devel::WxProf | 2008-04-14 | MKUTTER
Adam Kaplan took Devel::FastProf and added html report generation (based on Devel::Cover) and a test suite - a tricky thing to do for a profiler. Meanwhile Tim Bunce had been extending Devel::FastProf to add novel per-sub and per-block timing, plus subroutine caller tracking.
When Devel::NYTProf was released Tim switched to working on Devel::NYTProf because the html report would be a good way to show the extra profile data, and the test suite made development much easier and safer.
Then he went a little crazy and added a slew of new features, in addition to per-sub and per-block timing and subroutine caller tracking. These included the opcode interception method of profiling, ultra-fast and robust inclusive subroutine timing, doubling performance, plus major changes to html reporting to display all the extra profile call and timing data in richly annotated and cross-linked reports.
Steve Peters came on board along the way with patches for portability and to keep NYTProf working with the latest development Perl versions.
Mailing list and discussion at <http://groups.google.com/group/develnytprof-dev>
Public SVN Repository and hacking instructions at <http://code.google.com/p/perl-devel-nytprof/>
<B>Adam KaplanB>, <akaplan at nytimes.com>. Tim Bunce, <http://www.tim.bunce.name> and <http://blog.timbunce.org>. <B>Steve PetersB>, <steve at fisharerojo.org>.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.
|perl v5.20.3||NYTPROFHTML (1)||2015-08-03|