Ito ang command na nytprofhtmlp na maaaring patakbuhin sa OnWorks na libreng hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator
PROGRAMA:
NAME
nytprofhtml - Bumuo ng mga ulat mula sa Devel::NYTProf data
SINOPSIS
Karaniwang paggamit:
$ perl -d:NYTProf some_perl_app.pl
$ nytprofhtml --bukas
Synopsis ng mga opsyon:
$ nytprofhtml [-h] [-d] [-m] [-o ] [-f ] [--bukas]
DESCRIPTION
Ang Devel::NYTProf ay isang malakas na feature-rich na Perl source code profiler. Tingnan ang Devel::NYTProf
para sa mga detalye.
Ang "nytprofhtml" ay bumubuo ng isang hanay ng mga html na ulat mula sa isang file ng data na binuo ni
Devel::NYTProf. (Kung huminto ang iyong proseso, malamang na magkakaroon ka ng maraming file. Tingnan
Devel::NYTProf at nytprofmerge.)
Kasama sa mga ulat ang dynamic na runtime analysis kung saan sinusuri ang bawat linya at bawat file
batay sa pagganap ng iba pang mga linya at mga file. Bilang resulta, mabilis kang makakahanap
ang pinakamabagal na module at ang pinakamabagal na linya sa isang module. Ang kabagalan ay sinusukat sa tatlong paraan:
kabuuang mga tawag, kabuuang oras, at average na oras bawat tawag.
Ang pangkulay ay batay sa ganap na paglihis mula sa median. Tingnan mo
<http://en.wikipedia.org/wiki/Median_absolute_deviation> para sa karagdagang detalye.
Maaaring mukhang kumplikado iyon, ngunit sa katotohanan ay maaari mo lamang patakbuhin ang utos at magsaya sa iyong
ulat!
COMMAND-LINE Opsyon
-f, --file
Tinutukoy ang lokasyon ng file na nabuo ng Devel::NYTProf. Default:
./nytprof.out
-o, --labas
Ang direktoryo kung saan ilalagay ang nabuong mga file ng ulat. Default: ./nytprof/
-d, --tanggalin
I-purge ang anumang kasalukuyang nilalaman ng direktoryo ng output ng ulat.
-l, --lib
Magdagdag ng landas sa simula ng @INC upang matulungan ang nytprofhtml na mahanap ang mga source file na ginamit ni
ang code. Hindi dapat kailanganin sa pagsasanay.
--bukas
Gawin ang iyong web browser na bisitahin ang ulat pagkatapos na ito ay mabuo.
Kung hindi ito gumana nang maayos para sa iyo, subukang i-install ang Browser::Open module.
-m, --minimal
Huwag bumuo ng mga graphviz .dot file o block/sub-level na mga ulat.
--walang-apoy
Huwag paganahin ang pagbuo ng flamegraph sa pahina ng index. Hindi rin pinapagana ang pagkalkula ng
natatanging mga stack ng tawag na ginagamit upang makagawa ng flamegraph.
-h, --tulong
I-print ang mensahe ng tulong.
SAMPLE oUTPUT
Makakakita ka ng kumpletong ulat para sa isang malaking application (mahigit sa 200 mga file at 2000
subroutine) sa
Ang ulat ay nabuo sa pamamagitan ng pag-profile ng perlcritic 1.106 na sinusuri ang sarili nitong source code gamit
perl 5.12.1.
DIAGNOSTICS
"Hindi kaya sa buksan '... (autosplit sa ...)'"
Ang naka-profile na application ay nagsagawa ng code sa isang module na gumamit ng AutoLoader upang i-load ang code
mula sa isang hiwalay na .al file. Awtomatikong kinikilala ng NYTProf ang sitwasyong ito at sinusubukang gawin
tukuyin ang 'parent' module file upang maiugnay nito ang data ng profile dito. Sa pagkakasunud-sunod
para magawa iyon ang parent module file ay dapat na 'kilala' na sa NYTProf, kadalasan sa pamamagitan na
pagkakaroon ng ilang code na naka-profile.
Malamang na makikita mo lang ang babalang ito kung ginagamit mo ang opsyong "simulan" para magsimula
pag-profile pagkatapos ng compile-time. Ang epekto ay ang mga oras na ginugugol sa mga autoloaded na sub ay hindi magiging
nauugnay sa parent module file at hindi ka makakakuha ng mga annotated na ulat para sa kanila.
Maiiwasan mo ito sa pamamagitan ng paggamit ng default na "start=begin" na opsyon, o sa pamamagitan ng pagtiyak na ipapatupad mo
ilang hindi na-autoload na code sa parent module, habang tumatakbo ang profiler, bago ang isang
autoloaded sub ay tinatawag.
KASAYSAYAN
Isang kaunting kasaysayan at isang walanghiyang plug...
Ang NYTProf ay nangangahulugang 'New York Times Profiler'. Sa katunayan, ang modyul na ito ay unang binuo
mula sa Devel::FastProf ng The New York Times Co. upang matulungan ang aming mga developer na mabilis na matukoy
mga bottleneck sa malalaking Perl application. Gustung-gusto ng NY Times ang Perl at umaasa kami sa komunidad
ay makikinabang sa ating trabaho gaya ng mayroon tayo sa kanila.
Mangyaring bisitahinhttp://open.nytimes.com>, ang aming open source na blog upang makita kung ano ang aming ginagawa,
<http://code.nytimes.com> para makita ang ilan sa aming mga bukas na proyekto at pagkatapos ay tingnan
<http://nytimes.com> para sa pinakabagong balita!
likuran
Mga profile sa antas ng subroutine:
Devel::DPof | 1995-10-31 | ILYAZ
Devel::AutoProfiler | 2002-04-07 | GSLONDON
Devel::Profiler | 2002-05-20 | SAMTREGAR
Devel::Profile | 2003-04-13 | panga
Devel::DPofLB | 2006-05-11 | panga
Devel::WxProf | 2008-04-14 | MKUTTER
Mga profile sa antas ng pahayag:
Devel::SmallProf | 1997-07-30 | ASHTED
Devel::FastProf | 2005-09-20 | SALVA
Devel::NYTProf | 2008-03-04 | AKAPLAN
Devel::Profit | 2008-05-19 | LBROCARD
Ang Devel::NYTProf ay isang (malayo na ngayon) na tinidor ng Devel::FastProf, na mismong isang ebolusyon
ng Devel::SmallProf.
Kinuha ni Adam Kaplan ang Devel::FastProf at idinagdag ang pagbuo ng ulat ng html (batay sa Devel::Cover)
at isang test suite - isang nakakalito na bagay na dapat gawin para sa isang profiler. Samantala, naging si Tim Bunce
pagpapalawak ng Devel::FastProf para magdagdag ng novel per-sub at per-block timing, kasama ang subroutine
pagsubaybay sa tumatawag.
Nang ilabas ang Devel::NYTProf ay lumipat si Tim sa pagtatrabaho sa Devel::NYTProf dahil ang
Ang ulat ng html ay magiging isang magandang paraan upang ipakita ang karagdagang data ng profile, at ginawa ang test suite
mas madali at mas ligtas ang pag-unlad.
Pagkatapos ay medyo nabaliw siya at nagdagdag ng maraming bagong feature, bilang karagdagan sa per-sub at
per-block timing at subroutine na pagsubaybay sa tumatawag. Kabilang dito ang 'opcode interception'
paraan ng pag-profile, napakabilis at matatag na inclusive subroutine timing, pagdodoble
pagganap, kasama ang malalaking pagbabago sa pag-uulat ng html upang ipakita ang lahat ng karagdagang tawag sa profile
at data ng timing sa mga ulat na may maraming anotasyon at cross-link.
Sumakay si Steve Peters kasama ang mga patch para sa portability at upang mapanatili ang NYTProf
nagtatrabaho sa pinakabagong pag-unlad na mga bersyon ng Perl.
Ang gawain ni Adam ay itinataguyod ng The New York Times Co.http://open.nytimes.com>. gawain ni Tim
ay bahagyang na-sponsor ng Shopzilla.http://www.shopzilla.com>.
Gamitin ang nytprofhtmlp online gamit ang mga serbisyo ng onworks.net