Profile of /usr/local/lib/perl5/5.10.1/Test/Deep/Ref.pm

← Index
NYTProf Performance Profile «block view•line view•sub view»
For 05.Domain_and_Item.t
Run on Tue May 4 17:21:41 2010
Reported on Tue May 4 17:22:20 2010

File | /usr/local/lib/perl5/5.10.1/Test/Deep/Ref.pm
Statements Executed | 37
Statement Execution Time | 300µs

Subroutines — ordered by exclusive time
Calls | P | F | Exclusive Time | Inclusive Time | Subroutine
--- | --- | --- | --- | --- | ---
3 | 2 | 2 | 27µs | 1000µs | Test::Deep::Ref::::test_classTest::Deep::Ref::test_class
3 | 2 | 2 | 21µs | 1.69ms | Test::Deep::Ref::::test_reftypeTest::Deep::Ref::test_reftype
1 | 1 | 1 | 12µs | 66µs | Test::Deep::Ref::::BEGIN@8Test::Deep::Ref::BEGIN@8
1 | 1 | 1 | 8µs | 23µs | Test::Deep::Ref::::BEGIN@6Test::Deep::Ref::BEGIN@6

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

Line | State ments | Time on line | Calls | Time in subs | Code
--- | --- | --- | --- | --- | ---
1 | 3 | 29µs | 2 | 25µs | use strict; # spent 21µs making 1 call to Test::Deep::Hash::BEGIN@1 # spent 4µs making 1 call to strict::import
2 | 3 | 35µs | 2 | 32µs | use warnings; # spent 21µs making 1 call to Test::Deep::Hash::BEGIN@2 # spent 11µs making 1 call to warnings::import
3 |  |  |  |  |
4 |  |  |  |  | package Test::Deep::Ref;
5 |  |  |  |  |
6 | 3 | 38µs | 2 | 39µs | # spent 23µs (8+16) within Test::Deep::Ref::BEGIN@6 which was called # once (8µs+16µs) by Test::Deep::Hash::BEGIN@6 at line 6 use Test::Deep::Cmp; # spent 23µs making 1 call to Test::Deep::Ref::BEGIN@6 # spent 16µs making 1 call to Test::Deep::Cmp::import
7 |  |  |  |  |
8 | 3 | 146µs | 2 | 119µs | # spent 66µs (12+53) within Test::Deep::Ref::BEGIN@8 which was called # once (12µs+53µs) by Test::Deep::Hash::BEGIN@6 at line 8 use Scalar::Util qw( blessed ); # spent 66µs making 1 call to Test::Deep::Ref::BEGIN@8 # spent 53µs making 1 call to Exporter::import
9 |  |  |  |  |
10 |  |  |  |  | sub test_class
11 |  |  |  |  | # spent 1000µs (27+973) within Test::Deep::Ref::test_class which was called 3 times, avg 333µs/call: # 2 times (19µs+814µs) by Test::Deep::Hash::descend at line 29 of Test/Deep/Hash.pm, avg 417µs/call # once (8µs+159µs) by Test::Deep::Array::descend at line 26 of Test/Deep/Array.pm {
12 | 12 | 27µs |  |  | my $self = shift;
13 |  |  |  |  | my $got = shift;
14 |  |  |  |  |
15 |  |  |  |  | my $exp = $self->{val};
16 |  |  |  |  |
17 |  |  |  |  | if ($Test::Deep::Snobby) # spent 518µs making 3 calls to Test::Deep::__ANON__[Test/Deep.pm:92], avg 173µs/call # spent 2µs making 3 calls to Scalar::Util::blessed, avg 567ns/call # spent 453µs making 3 calls to Test::Deep::descend, avg 151µs/call, recursion: max depth 3, time 453µs
18 |  |  |  |  | {
19 |  |  |  |  | return Test::Deep::descend($got, Test::Deep::blessed(blessed($exp)));
20 |  |  |  |  | }
21 |  |  |  |  | else
22 |  |  |  |  | {
23 |  |  |  |  | return 1;
24 |  |  |  |  | }
25 |  |  |  |  | }
26 |  |  |  |  |
27 |  |  |  |  | sub test_reftype
28 |  |  |  |  | # spent 1.69ms (21µs+1.67) within Test::Deep::Ref::test_reftype which was called 3 times, avg 563µs/call: # 2 times (15µs+1.49ms) by Test::Deep::HashKeys::descend at line 25 of Test/Deep/HashKeys.pm, avg 751µs/call # once (5µs+181µs) by Test::Deep::ArrayLength::descend at line 24 of Test/Deep/ArrayLength.pm {
29 | 12 | 21µs |  |  | my $self = shift;
30 |  |  |  |  | my $got = shift;
31 |  |  |  |  | my $reftype = shift;
32 |  |  |  |  |
33 |  |  |  |  | return Test::Deep::descend($got, Test::Deep::reftype($reftype)); # spent 558µs making 3 calls to Test::Deep::__ANON__[Test/Deep.pm:92], avg 186µs/call # spent 1.11ms making 3 calls to Test::Deep::descend, avg 370µs/call, recursion: max depth 4, time 1.11ms
34 |  |  |  |  | }
35 |  |  |  |  |
36 | 1 | 4µs |  |  | 1;