Filename | /home/lbr/project/petal-tiny/opt.pl |
Statements | Executed 2202 statements in 23.7ms |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
50 | 1 | 1 | 2.89ms | 7.57ms | CORE:readline (opcode) | main::
1 | 1 | 1 | 2.18ms | 5.19ms | BEGIN@2 | main::
50 | 1 | 1 | 990µs | 8.53ms | CORE:open (opcode) | main::
570 | 1 | 1 | 478µs | 478µs | __ANON__[opt.pl:19] | main::
1 | 1 | 1 | 433µs | 3.81ms | BEGIN@1 | main::
450 | 1 | 1 | 228µs | 228µs | __ANON__[opt.pl:17] | main::
370 | 1 | 1 | 213µs | 213µs | __ANON__[opt.pl:18] | main::
210 | 1 | 1 | 205µs | 205µs | can (xsub) | UNIVERSAL::
50 | 1 | 1 | 186µs | 186µs | CORE:close (opcode) | main::
1 | 1 | 1 | 163µs | 6.41ms | BEGIN@53 | main::
180 | 1 | 1 | 101µs | 101µs | __ANON__[opt.pl:16] | main::
80 | 1 | 1 | 42µs | 42µs | __ANON__[opt.pl:14] | main::
60 | 1 | 1 | 39µs | 39µs | __ANON__[opt.pl:13] | main::
50 | 1 | 1 | 36µs | 36µs | __ANON__[opt.pl:12] | main::
1 | 1 | 1 | 34µs | 34µs | CORE:print (opcode) | main::
40 | 1 | 1 | 32µs | 32µs | __ANON__[opt.pl:15] | main::
30 | 1 | 1 | 23µs | 23µs | __ANON__[opt.pl:11] | main::
10 | 1 | 1 | 20µs | 20µs | __ANON__[opt.pl:8] | main::
20 | 1 | 1 | 19µs | 19µs | __ANON__[opt.pl:10] | main::
10 | 1 | 1 | 13µs | 13µs | __ANON__[opt.pl:9] | main::
10 | 1 | 1 | 10µs | 10µ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::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
0 | 1 | 6.41ms | Profile data that couldn't be associated with a specific line: # spent 6.41ms making 1 call to main::BEGIN@53 | ||
1 | 2 | 130µs | 2 | 3.85ms | # spent 3.81ms (433µs+3.38) within main::BEGIN@1 which was called:
# once (433µs+3.38ms) by main::NULL at line 1 # spent 3.81ms making 1 call to main::BEGIN@1
# spent 39µs making 1 call to lib::import |
2 | 2 | 302µs | 1 | 5.19ms | # spent 5.19ms (2.18+3.00) within main::BEGIN@2 which was called:
# once (2.18ms+3.00ms) by main::NULL at line 2 # spent 5.19ms 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 20µs within main::__ANON__[opt.pl:8] which was called 10 times, avg 2µs/call:
# 10 times (20µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 2µs/call | ||
9 | 10 | 15µs | # spent 13µs within main::__ANON__[opt.pl:9] which was called 10 times, avg 1µs/call:
# 10 times (13µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 1µs/call | ||
10 | 20 | 26µs | # spent 19µs within main::__ANON__[opt.pl:10] which was called 20 times, avg 965ns/call:
# 20 times (19µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 965ns/call | ||
11 | 30 | 35µs | # spent 23µs within main::__ANON__[opt.pl:11] which was called 30 times, avg 777ns/call:
# 30 times (23µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 777ns/call | ||
12 | 50 | 57µs | # spent 36µs within main::__ANON__[opt.pl:12] which was called 50 times, avg 720ns/call:
# 50 times (36µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 720ns/call | ||
13 | 60 | 65µs | # spent 39µs within main::__ANON__[opt.pl:13] which was called 60 times, avg 657ns/call:
# 60 times (39µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 657ns/call | ||
14 | 80 | 86µs | # spent 42µs within main::__ANON__[opt.pl:14] which was called 80 times, avg 530ns/call:
# 80 times (42µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 530ns/call | ||
15 | 40 | 50µs | # spent 32µs within main::__ANON__[opt.pl:15] which was called 40 times, avg 805ns/call:
# 40 times (32µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 805ns/call | ||
16 | 180 | 193µs | # spent 101µs within main::__ANON__[opt.pl:16] which was called 180 times, avg 561ns/call:
# 180 times (101µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 561ns/call | ||
17 | 450 | 465µs | # spent 228µs within main::__ANON__[opt.pl:17] which was called 450 times, avg 506ns/call:
# 450 times (228µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 506ns/call | ||
18 | 370 | 399µs | # spent 213µs within main::__ANON__[opt.pl:18] which was called 370 times, avg 575ns/call:
# 370 times (213µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 575ns/call | ||
19 | 570 | 6.58ms | # spent 478µs within main::__ANON__[opt.pl:19] which was called 570 times, avg 838ns/call:
# 570 times (478µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 838ns/call | ||
20 | }, | ||||
21 | c => { | ||||
22 | validation => { | ||||
23 | failed => [], | ||||
24 | }, | ||||
25 | 10 | 14µs | # spent 10µs within main::__ANON__[opt.pl:25] which was called 10 times, avg 1µs/call:
# 10 times (10µs+0s) by Petal::Tiny::resolve at line 339 of lib/Petal/Tiny.pm, avg 1µ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 | 900ns | 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 | 12µs | for (1..10) { | ||
52 | 10 | 9µs | for my $file (@files) { | ||
53 | 52 | 1.23ms | 201 | 15.9ms | # spent 6.41ms (163µs+6.25) within main::BEGIN@53 which was called:
# once (163µs+6.25ms) by main::CORE:open at line 0 # spent 8.53ms making 50 calls to main::CORE:open, avg 171µs/call
# spent 6.25ms making 1 call to PerlIO::import
# spent 793µs making 50 calls to Encode::find_encoding, avg 16µs/call
# spent 309µs making 50 calls to Encode::Encoding::renew, avg 6µs/call
# spent 28µs making 50 calls to Encode::Encoding::needs_lines, avg 556ns/call |
54 | 50 | 7.74ms | 730 | 12.4ms | my $xml = join "", <$f>; # spent 7.57ms making 50 calls to main::CORE:readline, avg 151µs/call
# spent 4.68ms making 340 calls to Encode::utf8::decode_xs, avg 14µs/call
# spent 181µs making 340 calls to Encode::Encoding::renewed, avg 531ns/call |
55 | 50 | 5.60ms | 50 | 186µs | close $f; # spent 186µs making 50 calls to main::CORE:close, avg 4µs/call |
56 | |||||
57 | 50 | 169µs | $xml = "<div $tal_ns>$xml</div>"; | ||
58 | |||||
59 | 50 | 146µs | 50 | 525µs | my $template = Petal::Tiny->new($xml); # spent 525µs making 50 calls to Petal::Tiny::new, avg 11µs/call |
60 | 50 | 275µs | 50 | 524ms | $template->process(%$stash); # spent 524ms making 50 calls to Petal::Tiny::process, avg 10.5ms/call |
61 | } | ||||
62 | } | ||||
# spent 2µs within Internals::SvREADONLY which was called 4 times, avg 600ns/call:
# 2 times (1µs+0s) by constant::import at line 149 of constant.pm, avg 650ns/call
# once (800ns+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 205µs within UNIVERSAL::can which was called 210 times, avg 977ns/call:
# 210 times (205µs+0s) by Petal::Tiny::resolve at line 295 of lib/Petal/Tiny.pm, avg 977ns/call | |||||
# spent 186µs within main::CORE:close which was called 50 times, avg 4µs/call:
# 50 times (186µs+0s) by main::RUNTIME at line 55, avg 4µs/call | |||||
# spent 8.53ms (990µs+7.54) within main::CORE:open which was called 50 times, avg 171µs/call:
# 50 times (990µs+7.54ms) by main::RUNTIME at line 53, avg 171µs/call | |||||
# spent 34µs within main::CORE:print which was called:
# once (34µs+0s) by main::RUNTIME at line 4 | |||||
# spent 7.57ms (2.89+4.68) within main::CORE:readline which was called 50 times, avg 151µs/call:
# 50 times (2.89ms+4.68ms) by main::RUNTIME at line 54, avg 151µ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 |