Devel::NYTProf

  • 2,814 views
Uploaded on

 

More in: Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
2,814
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
5
Comments
0
Likes
6

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Devel::NYTProf Chia-liang Kao clkao@clkao.org Shibuya.pm#11
  • 2. 自己 介紹
  • 3. 高 嘉良
  • 4. 台湾 人
  • 5. 日本語
  • 6. 日本語 不會
  • 7. Perl 黑客
  • 8. Hate  
  • 9.
  • 10.  
  • 11. “Always profile before optimize”
  • 12. Devel::DProf
  • 13. % perl -d:DProf foo.pl % dprofpp
  • 14. % dprofpp Total Elapsed Time = 2.563600 Seconds User+System Time = 0.703600 Seconds Exclusive Times %Time ExclSec CumulS #Calls sec/call Csec/c Name 6.96 0.049 0.067 15 0.0033 0.0045 Prophet::Replica::sqlite::BEGIN 6.82 0.048 0.049 41 0.0012 0.0012 Mouse::Meta::Method::Constructor:: generate_constructor_method_inline 5.40 0.038 0.038 464 0.0001 0.0001 Params::Validate::_validate 4.97 0.035 0.030 86 0.0004 0.0003 Mouse::Meta::Method::Accessor::gen erate_accessor_method_inline 4.69 0.033 0.043 555 0.0001 0.0001 Prophet::Replica::sqlite::get_reco rd_props 4.12 0.029 0.029 166 0.0002 0.0002 DBI::st::fetchall_arrayref 3.84 0.027 0.035 412 0.0001 0.0001 DateTime::Locale::_registered_id 3.55 0.025 0.077 90 0.0003 0.0009 Mouse::Meta::Attribute::create 2.84 0.020 0.020 6 0.0033 0.0033 Mouse::Meta::Attribute::BEGIN 2.84 0.020 0.154 1 0.0199 0.1537 App::SD::Util::BEGIN 2.56 0.018 0.018 501 0.0000 0.0000 Scalar::Util::blessed 2.27 0.016 0.055 449 0.0000 0.0001 DateTime::Locale::_register 1.42 0.010 0.087 4454 0.0000 0.0000 Mouse::Meta::Method::Accessor::__A NON__ 1.42 0.010 0.010 1 0.0100 0.0100 Config::TIEHASH 1.42 0.010 0.000 41 0.0002 0.0000 Mouse::Meta::Method::Constructor:: _generate_processattrs
  • 15. Sub Level
  • 16. % perl -d:DProf foo.pl
  • 17. % perl -d:DProf foo.pl Segmentation fault.
  • 18. Devel::NYTProf by Tim Bunce
  • 19. DBI 作者
  • 20. Line Level
  • 21. block Level
  • 22. 使用 方法
  • 23. % perl -d:NYTProf foo.pl % nytprofhtml
  • 24. Line
Level
  • 25. Line
Level
  • 26. Line
Level
  • 27. Line
Level
  • 28. Line
Level
  • 29. Even
works with
eval!
  • 30. Use
it!
  • 31. Last Weekend
  • 32. OSDC.TW 台北
  • 33. 小籠包
  • 34. Rasmus showed nice
PHP
 calltree
  • 35. I
want
 that
for
 Perl!
  • 36. Calltree?
  • 37. So
here you
go
  • 38. (Never
make
 a
Perl
 hacker
 jealous)
  • 39. kcachegrind
  • 40. % perl -d:NYTProf foo.pl % nytprofcg % kcachegrind nytprof
  • 41. NYTProf
is
 more
than
 not
 crashing
  • 42. DB::enable_profile(); ..... DB::disable_profile();
  • 43. Per-request Profiling
 for
Jifty
  • 44. Many
more
 goodies
 from
 NYTProf
  • 45. cpan Devel::NYTProf http://code.google.com/p/perl-devel-nytprof/
  • 46. 謝謝!