Filename | /home/lbr/project/petal-tiny/opt.pl |
Statements | Executed 2052 statements in 14.3ms |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
50 | 1 | 1 | 3.38ms | 8.41ms | CORE:readline (opcode) | main::
1 | 1 | 1 | 2.29ms | 5.45ms | BEGIN@2 | main::
50 | 1 | 1 | 1.56ms | 9.88ms | CORE:open (opcode) | main::
560 | 1 | 1 | 559µs | 559µs | __ANON__[opt.pl:19] | main::
1 | 1 | 1 | 391µs | 3.62ms | BEGIN@1 | main::
50 | 1 | 1 | 258µs | 258µs | CORE:close (opcode) | main::
450 | 1 | 1 | 252µs | 252µs | __ANON__[opt.pl:17] | main::
290 | 1 | 1 | 203µs | 203µs | __ANON__[opt.pl:18] | main::
150 | 1 | 1 | 198µs | 198µs | can (xsub) | UNIVERSAL::
1 | 1 | 1 | 173µs | 6.57ms | BEGIN@53 | main::
180 | 1 | 1 | 117µs | 117µs | __ANON__[opt.pl:16] | main::
50 | 1 | 1 | 58µs | 58µs | __ANON__[opt.pl:12] | main::
60 | 1 | 1 | 57µs | 57µs | __ANON__[opt.pl:13] | main::
80 | 1 | 1 | 55µs | 55µs | __ANON__[opt.pl:14] | main::
30 | 1 | 1 | 40µs | 40µs | __ANON__[opt.pl:11] | main::
1 | 1 | 1 | 34µs | 34µs | CORE:print (opcode) | main::
10 | 1 | 1 | 18µs | 18µs | __ANON__[opt.pl:9] | main::
10 | 1 | 1 | 17µs | 17µs | __ANON__[opt.pl:8] | main::
10 | 1 | 1 | 15µs | 15µs | __ANON__[opt.pl:25] | main::
1 | 1 | 1 | 8µs | 8µs | VERSION (xsub) | UNIVERSAL::
1 | 1 | 1 | 4µs | 4µs | (bool (xsub) | version::
1 | 1 | 1 | 3µs | 3µs | (cmp (xsub) | version::
4 | 3 | 1 | 2µs | 2µs | SvREADONLY (xsub) | Internals::
2 | 1 | 1 | 2µs | 2µs | method_changed_in (xsub) | mro::
0 | 0 | 0 | 0s | 0s | RUNTIME | main::
0 | 0 | 0 | 0s | 0s | __ANON__[opt.pl:10] | main::
0 | 0 | 0 | 0s | 0s | __ANON__[opt.pl:15] | main::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
0 | 1 | 6.57ms | Profile data that couldn't be associated with a specific line: # spent 6.57ms making 1 call to main::BEGIN@53 | ||
1 | 2 | 87µs | 2 | 3.66ms | # spent 3.62ms (391µs+3.22) within main::BEGIN@1 which was called:
# once (391µs+3.22ms) by main::NULL at line 1 # spent 3.62ms making 1 call to main::BEGIN@1
# spent 41µs making 1 call to lib::import |
2 | 2 | 294µs | 1 | 5.45ms | # spent 5.45ms (2.29+3.17) within main::BEGIN@2 which was called:
# once (2.29ms+3.17ms) by main::NULL at line 2 # spent 5.45ms making 1 call to main::BEGIN@2 |
3 | |||||
4 | 1 | 42µs | 1 | 34µs | print $INC{"Petal/Tiny.pm"}, "\n"; # spent 34µs making 1 call to main::CORE:print |
5 | |||||
6 | my $stash = { | ||||
7 | h => { | ||||
8 | 10 | 18µs | # spent 17µs within main::__ANON__[opt.pl:8] which was called 10 times, avg 2µs/call:
# 10 times (17µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 2µs/call | ||
9 | 10 | 20µs | # spent 18µs within main::__ANON__[opt.pl:9] which was called 10 times, avg 2µs/call:
# 10 times (18µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 2µs/call | ||
10 | compare => sub { 0 }, | ||||
11 | 30 | 52µs | # spent 40µs within main::__ANON__[opt.pl:11] which was called 30 times, avg 1µs/call:
# 30 times (40µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 1µs/call | ||
12 | 50 | 77µs | # spent 58µs within main::__ANON__[opt.pl:12] which was called 50 times, avg 1µs/call:
# 50 times (58µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 1µs/call | ||
13 | 60 | 85µs | # spent 57µs within main::__ANON__[opt.pl:13] which was called 60 times, avg 955ns/call:
# 60 times (57µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 955ns/call | ||
14 | 80 | 93µs | # spent 55µs within main::__ANON__[opt.pl:14] which was called 80 times, avg 682ns/call:
# 80 times (55µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 682ns/call | ||
15 | url_for => sub { "https://who.cares" }, | ||||
16 | 180 | 238µs | # spent 117µs within main::__ANON__[opt.pl:16] which was called 180 times, avg 651ns/call:
# 180 times (117µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 651ns/call | ||
17 | 450 | 473µs | # spent 252µs within main::__ANON__[opt.pl:17] which was called 450 times, avg 560ns/call:
# 450 times (252µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 560ns/call | ||
18 | 290 | 354µs | # spent 203µs within main::__ANON__[opt.pl:18] which was called 290 times, avg 700ns/call:
# 290 times (203µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 700ns/call | ||
19 | 560 | 805µs | # spent 559µs within main::__ANON__[opt.pl:19] which was called 560 times, avg 998ns/call:
# 560 times (559µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 998ns/call | ||
20 | }, | ||||
21 | c => { | ||||
22 | validation => { | ||||
23 | failed => [], | ||||
24 | }, | ||||
25 | 10 | 17µs | # spent 15µs within main::__ANON__[opt.pl:25] which was called 10 times, avg 2µs/call:
# 10 times (15µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 2µs/call | ||
26 | }, | ||||
27 | 1 | 19µs | '__wizard_values__' => { | ||
28 | pages => 'contact', | ||||
29 | }, | ||||
30 | 'action' => 'add', | ||||
31 | 'dk_domain_name' => 'munk.dk', | ||||
32 | 'lang' => 'da', | ||||
33 | 'payer' => undef, | ||||
34 | 'user' => undef, | ||||
35 | 'contact' => undef, | ||||
36 | 'controller' => 'domain-waitinglist', | ||||
37 | 'domain_wait_count' => '6', | ||||
38 | }; | ||||
39 | |||||
40 | 1 | 1µs | my @files = qw/ | ||
41 | add.html.tal | ||||
42 | add_show_info.html.tal | ||||
43 | add_show_info.html.tal | ||||
44 | default.html.tal | ||||
45 | wizard.html.tal | ||||
46 | /; | ||||
47 | |||||
48 | 1 | 200ns | my $encoding = ":encoding(UTF-8)"; | ||
49 | 1 | 100ns | my $tal_ns = q{xmlns:tal="http://purl.org/petal/1.0/"}; | ||
50 | |||||
51 | 1 | 15µs | for (1..10) { | ||
52 | 10 | 10µs | for my $file (@files) { | ||
53 | 52 | 1.88ms | 201 | 18.0ms | # spent 6.57ms (173µs+6.40) within main::BEGIN@53 which was called:
# once (173µs+6.40ms) by main::CORE:open at line 0 # spent 9.88ms making 50 calls to main::CORE:open, avg 198µs/call
# spent 6.40ms making 1 call to PerlIO::import
# spent 1.23ms making 50 calls to Encode::find_encoding, avg 25µs/call
# spent 476µs making 50 calls to Encode::Encoding::renew, avg 10µs/call
# spent 47µs making 50 calls to Encode::Encoding::needs_lines, avg 934ns/call |
54 | 50 | 8.55ms | 730 | 13.7ms | my $xml = join "", <$f>; # spent 8.41ms making 50 calls to main::CORE:readline, avg 168µs/call
# spent 5.03ms making 340 calls to Encode::utf8::decode_xs, avg 15µs/call
# spent 256µs making 340 calls to Encode::Encoding::renewed, avg 754ns/call |
55 | 50 | 370µs | 50 | 258µs | close $f; # spent 258µs making 50 calls to main::CORE:close, avg 5µs/call |
56 | |||||
57 | 50 | 246µs | $xml = "<div $tal_ns>$xml</div>"; | ||
58 | |||||
59 | 50 | 191µs | 50 | 628µs | my $template = Petal::Tiny->new($xml); # spent 628µs making 50 calls to Petal::Tiny::new, avg 13µs/call |
60 | 50 | 367µs | 50 | 462ms | $template->process(%$stash); # spent 462ms making 50 calls to Petal::Tiny::process, avg 9.24ms/call |
61 | } | ||||
62 | } | ||||
# spent 2µs within Internals::SvREADONLY which was called 4 times, avg 625ns/call:
# 2 times (2µs+0s) by constant::import at line 149 of constant.pm, avg 750ns/call
# once (700ns+0s) by constant::BEGIN@24 at line 32 of constant.pm
# once (300ns+0s) by constant::BEGIN@24 at line 33 of constant.pm | |||||
# spent 8µs within UNIVERSAL::VERSION which was called:
# once (8µs+0s) by Encode::BEGIN@12 at line 12 of Encode.pm | |||||
# spent 198µs within UNIVERSAL::can which was called 150 times, avg 1µs/call:
# 150 times (198µs+0s) by Petal::Tiny::resolve at line 295 of lib/Petal/Tiny.pm, avg 1µs/call | |||||
# spent 258µs within main::CORE:close which was called 50 times, avg 5µs/call:
# 50 times (258µs+0s) by main::RUNTIME at line 55, avg 5µs/call | |||||
# spent 9.88ms (1.56+8.32) within main::CORE:open which was called 50 times, avg 198µs/call:
# 50 times (1.56ms+8.32ms) by main::RUNTIME at line 53, avg 198µs/call | |||||
# spent 34µs within main::CORE:print which was called:
# once (34µs+0s) by main::RUNTIME at line 4 | |||||
# spent 8.41ms (3.38+5.03) within main::CORE:readline which was called 50 times, avg 168µs/call:
# 50 times (3.38ms+5.03ms) by main::RUNTIME at line 54, avg 168µs/call | |||||
# spent 2µs within mro::method_changed_in which was called 2 times, avg 900ns/call:
# 2 times (2µs+0s) by constant::import at line 182 of constant.pm, avg 900ns/call | |||||
# spent 4µs within version::(bool which was called:
# once (4µs+0s) by lib::BEGIN@6 at line 59 of Config.pm | |||||
# spent 3µs within version::(cmp which was called:
# once (3µs+0s) by lib::BEGIN@6 at line 62 of Config.pm |