Devel::NYTProf

3,644 views

Published on

Published in: Technology, Business
0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,644
On SlideShare
0
From Embeds
0
Number of Embeds
90
Actions
Shares
0
Downloads
6
Comments
0
Likes
6
Embeds 0
No embeds

No notes for slide

Devel::NYTProf

  1. 1. Devel::NYTProf Chia-liang Kao clkao@clkao.org Shibuya.pm#11
  2. 2. 自己 介紹
  3. 3. 高 嘉良
  4. 4. 台湾 人
  5. 5. 日本語
  6. 6. 日本語 不會
  7. 7. Perl 黑客
  8. 8. Hate  
  9. 9.
  10. 10.  
  11. 11. “Always profile before optimize”
  12. 12. Devel::DProf
  13. 13. % perl -d:DProf foo.pl % dprofpp
  14. 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. 15. Sub Level
  16. 16. % perl -d:DProf foo.pl
  17. 17. % perl -d:DProf foo.pl Segmentation fault.
  18. 18. Devel::NYTProf by Tim Bunce
  19. 19. DBI 作者
  20. 20. Line Level
  21. 21. block Level
  22. 22. 使用 方法
  23. 23. % perl -d:NYTProf foo.pl % nytprofhtml
  24. 24. Line
Level
  25. 25. Line
Level
  26. 26. Line
Level
  27. 27. Line
Level
  28. 28. Line
Level
  29. 29. Even
works with
eval!
  30. 30. Use
it!
  31. 31. Last Weekend
  32. 32. OSDC.TW 台北
  33. 33. 小籠包
  34. 34. Rasmus showed nice
PHP
 calltree
  35. 35. I
want
 that
for
 Perl!
  36. 36. Calltree?
  37. 37. So
here you
go
  38. 38. (Never
make
 a
Perl
 hacker
 jealous)
  39. 39. kcachegrind
  40. 40. % perl -d:NYTProf foo.pl % nytprofcg % kcachegrind nytprof
  41. 41. NYTProf
is
 more
than
 not
 crashing
  42. 42. DB::enable_profile(); ..... DB::disable_profile();
  43. 43. Per-request Profiling
 for
Jifty
  44. 44. Many
more
 goodies
 from
 NYTProf
  45. 45. cpan Devel::NYTProf http://code.google.com/p/perl-devel-nytprof/
  46. 46. 謝謝!

×