Profile of Test/Deep/Blessed.pm

← Index
NYTProf Performance Profile «block view•line view•sub view»
For t/app_dpath.t
Run on Tue Jun 5 15:25:28 2012
Reported on Tue Jun 5 15:26:01 2012

Filename | /home/ss5/perl5/perlbrew/perls/perl-5.14.1/lib/site_perl/5.14.1/Test/Deep/Blessed.pm
Statements | Executed 153 statements in 2.07ms

Subroutines
Calls | P | F | Exclusive Time | Inclusive Time | Subroutine
--- | --- | --- | --- | --- | ---
18 | 1 | 1 | 765µs | 4.27ms | Test::Deep::Blessed::::descendTest::Deep::Blessed::descend
18 | 1 | 1 | 398µs | 398µs | Test::Deep::Blessed::::initTest::Deep::Blessed::init
29 | 1 | 1 | 239µs | 239µs | Test::Deep::::CORE:subst Test::Deep::CORE:subst (opcode)
1 | 1 | 1 | 63µs | 78µs | Test::Deep::::BEGIN@1.17 Test::Deep::BEGIN@1.17
1 | 1 | 1 | 31µs | 58µs | Test::Deep::::BEGIN@2.18 Test::Deep::BEGIN@2.18
1 | 1 | 1 | 30µs | 173µs | Test::Deep::Blessed::::BEGIN@8Test::Deep::Blessed::BEGIN@8
1 | 1 | 1 | 27µs | 94µs | Test::Deep::Blessed::::BEGIN@6Test::Deep::Blessed::BEGIN@6
0 | 0 | 0 | 0s | 0s | Test::Deep::Blessed::::renderGotTest::Deep::Blessed::renderGot
0 | 0 | 0 | 0s | 0s | Test::Deep::Blessed::::render_stackTest::Deep::Blessed::render_stack

Call graph for these subroutines as a Graphviz dot language file.

Line | State ments | Time on line | Calls | Time in subs | Code
--- | --- | --- | --- | --- | ---
1 | 2 | 119µs | 2 | 93µs | # spent 78µs (63+15) within Test::Deep::BEGIN@1.17 which was called: # once (63µs+15µs) by Test::Deep::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.14.1/lib/site_perl/5.14.1/Test/Deep.pm:80] at line 1 use strict; # spent 78µs making 1 call to Test::Deep::BEGIN@1.17 # spent 15µs making 1 call to strict::import
2 | 2 | 129µs | 2 | 85µs | # spent 58µs (31+27) within Test::Deep::BEGIN@2.18 which was called: # once (31µs+27µs) by Test::Deep::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.14.1/lib/site_perl/5.14.1/Test/Deep.pm:80] at line 2 use warnings; # spent 58µs making 1 call to Test::Deep::BEGIN@2.18 # spent 27µs making 1 call to warnings::import
3 |  |  |  |  |
4 |  |  |  |  | package Test::Deep::Blessed;
5 |  |  |  |  |
6 | 2 | 107µs | 2 | 161µs | # spent 94µs (27+67) within Test::Deep::Blessed::BEGIN@6 which was called: # once (27µs+67µs) by Test::Deep::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.14.1/lib/site_perl/5.14.1/Test/Deep.pm:80] at line 6 use Test::Deep::Cmp; # spent 94µs making 1 call to Test::Deep::Blessed::BEGIN@6 # spent 67µs making 1 call to Test::Deep::Cmp::import
7 |  |  |  |  |
8 | 2 | 712µs | 2 | 316µs | # spent 173µs (30+143) within Test::Deep::Blessed::BEGIN@8 which was called: # once (30µs+143µs) by Test::Deep::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.14.1/lib/site_perl/5.14.1/Test/Deep.pm:80] at line 8 use Scalar::Util qw( blessed ); # spent 173µs making 1 call to Test::Deep::Blessed::BEGIN@8 # spent 143µs making 1 call to Exporter::import
9 |  |  |  |  |
10 |  |  |  |  | sub init
11 |  |  |  |  | # spent 398µs within Test::Deep::Blessed::init which was called 18 times, avg 22µs/call: # 18 times (398µs+0s) by Test::Deep::Cmp::new at line 33 of Test/Deep/Cmp.pm, avg 22µs/call {
12 | 54 | 339µs |  |  | my $self = shift;
13 |  |  |  |  |
14 |  |  |  |  | my $val = shift;
15 |  |  |  |  |
16 |  |  |  |  | $self->{val} = $val;
17 |  |  |  |  | }
18 |  |  |  |  |
19 |  |  |  |  | sub descend
20 |  |  |  |  | # spent 4.27ms (765µs+3.51) within Test::Deep::Blessed::descend which was called 18 times, avg 237µs/call: # 18 times (765µs+3.51ms) by Test::Deep::descend at line 328 of Test/Deep.pm, avg 237µs/call {
21 | 90 | 658µs |  |  | my $self = shift;
22 |  |  |  |  | my $got = shift;
23 |  |  |  |  |
24 |  |  |  |  | my $exp = $self->{val};
25 |  |  | 18 | 73µs | my $blessed = blessed($got); # spent 73µs making 18 calls to Scalar::Util::blessed, avg 4µs/call
26 |  |  |  |  |
27 |  |  | 36 | 911µs | return Test::Deep::descend($blessed, Test::Deep::shallow($exp)); # spent 911µs making 18 calls to Test::Deep::__ANON__[Test/Deep.pm:80], avg 51µs/call # spent 2.52ms making 18 calls to Test::Deep::descend, avg 140µs/call, recursion: max depth 2, sum of overlapping time 2.52ms
28 |  |  |  |  | }
29 |  |  |  |  |
30 |  |  |  |  | sub render_stack
31 |  |  |  |  | {
32 |  |  |  |  | my $self = shift;
33 |  |  |  |  | my $var = shift;
34 |  |  |  |  |
35 |  |  |  |  | return "blessed($var)"
36 |  |  |  |  | }
37 |  |  |  |  |
38 |  |  |  |  | sub renderGot
39 |  |  |  |  | {
40 |  |  |  |  | my $self = shift;
41 |  |  |  |  |
42 |  |  |  |  | my $got = shift;
43 |  |  |  |  |
44 |  |  |  |  | $self->SUPER::renderGot(blessed($got));
45 |  |  |  |  | }
46 |  |  |  |  |
47 | 1 | 10µs |  |  | 1;
|  |  |  |  | # spent 239µs within Test::Deep::CORE:subst which was called 29 times, avg 8µs/call: # 29 times (239µs+0s) by main::BEGIN@8 at line 76 of Test/Deep.pm, avg 8µs/call sub Test::Deep::CORE:subst; # opcode