← Index
NYTProf Performance Profile   « block view • line view • sub view »
For -e
  Run on Wed Nov 17 22:00:36 2010
Reported on Wed Nov 17 22:11:18 2010

Filename/home/doy/perl5/perlbrew/perls/perl-5.10.1/lib/site_perl/5.10.1/B/Hooks/EndOfScope.pm
StatementsExecuted 452 statements in 10.0ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
54222.79ms5.26msB::Hooks::EndOfScope::::on_scope_endB::Hooks::EndOfScope::on_scope_end
5454542.43ms555msB::Hooks::EndOfScope::::__ANON__[:26]B::Hooks::EndOfScope::__ANON__[:26]
1112.33ms4.11msB::Hooks::EndOfScope::::BEGIN@14B::Hooks::EndOfScope::BEGIN@14
5411616µs616µsB::Hooks::EndOfScope::::__ANON__[:25]B::Hooks::EndOfScope::__ANON__[:25]
11193µs93µsB::Hooks::EndOfScope::::BEGIN@13B::Hooks::EndOfScope::BEGIN@13
11179µs1.77msB::Hooks::EndOfScope::::BEGIN@16B::Hooks::EndOfScope::BEGIN@16
11173µs90µsnamespace::clean::::BEGIN@1 namespace::clean::BEGIN@1
11139µs107µsnamespace::clean::::BEGIN@2.2 namespace::clean::BEGIN@2.2
11117µs17µsB::Hooks::EndOfScope::::BEGIN@5B::Hooks::EndOfScope::BEGIN@5
11116µs16µsB::Hooks::EndOfScope::::BEGIN@8B::Hooks::EndOfScope::BEGIN@8
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
13101µs2108µs
# spent 90µs (73+18) within namespace::clean::BEGIN@1 which was called: # once (73µs+18µs) by namespace::clean::BEGIN@17 at line 1
use strict;
# spent 90µs making 1 call to namespace::clean::BEGIN@1 # spent 18µs making 1 call to strict::import
23186µs2174µs
# spent 107µs (39+67) within namespace::clean::BEGIN@2.2 which was called: # once (39µs+67µs) by namespace::clean::BEGIN@17 at line 2
use warnings;
# spent 107µs making 1 call to namespace::clean::BEGIN@2.2 # spent 67µs making 1 call to warnings::import
3
4package B::Hooks::EndOfScope;
5
# spent 17µs within B::Hooks::EndOfScope::BEGIN@5 which was called: # once (17µs+0s) by namespace::clean::BEGIN@17 at line 7
BEGIN {
6120µs $B::Hooks::EndOfScope::AUTHORITY = 'cpan:FLORA';
7182µs117µs}
# spent 17µs making 1 call to B::Hooks::EndOfScope::BEGIN@5
8
# spent 16µs within B::Hooks::EndOfScope::BEGIN@8 which was called: # once (16µs+0s) by namespace::clean::BEGIN@17 at line 10
BEGIN {
9117µs $B::Hooks::EndOfScope::VERSION = '0.09';
10163µs116µs}
# spent 16µs making 1 call to B::Hooks::EndOfScope::BEGIN@8
11# ABSTRACT: Execute code after a scope finished compilation
12
133171µs193µs
# spent 93µs within B::Hooks::EndOfScope::BEGIN@13 which was called: # once (93µs+0s) by namespace::clean::BEGIN@17 at line 13
use 5.008000;
# spent 93µs making 1 call to B::Hooks::EndOfScope::BEGIN@13
143711µs34.29ms
# spent 4.11ms (2.33+1.78) within B::Hooks::EndOfScope::BEGIN@14 which was called: # once (2.33ms+1.78ms) by namespace::clean::BEGIN@17 at line 14
use Variable::Magic 0.34;
# spent 4.11ms making 1 call to B::Hooks::EndOfScope::BEGIN@14 # spent 112µs making 1 call to Exporter::import # spent 59µs making 1 call to UNIVERSAL::VERSION
15
1611.69ms
# spent 1.77ms (79µs+1.69) within B::Hooks::EndOfScope::BEGIN@16 which was called: # once (79µs+1.69ms) by namespace::clean::BEGIN@17 at line 19
use Sub::Exporter -setup => {
# spent 1.69ms making 1 call to Sub::Exporter::__ANON__[Sub/Exporter.pm:756]
17 exports => ['on_scope_end'],
18 groups => { default => ['on_scope_end'] },
193613µs11.77ms};
# spent 1.77ms making 1 call to B::Hooks::EndOfScope::BEGIN@16
20
- -
23{
2414µs my $wiz = Variable::Magic::wizard
2554883µs
# spent 616µs within B::Hooks::EndOfScope::__ANON__[/home/doy/perl5/perlbrew/perls/perl-5.10.1/lib/site_perl/5.10.1/B/Hooks/EndOfScope.pm:25] which was called 54 times, avg 11µs/call: # 54 times (616µs+0s) by Variable::Magic::cast at line 37, avg 11µs/call
data => sub { [$_[1]] },
261632.74ms55553ms
# spent 555ms (2.43+553) within B::Hooks::EndOfScope::__ANON__[/home/doy/perl5/perlbrew/perls/perl-5.10.1/lib/site_perl/5.10.1/B/Hooks/EndOfScope.pm:26] which was called 54 times, avg 10.3ms/call: # once (47µs+40.1ms) by Class::MOP::__ANON__[/home/doy/coding/src/Class-MOP/blib/lib//Class/MOP.pm:118] at line 440 of Markdent/Role/HTMLStream.pm # once (48µs+32.0ms) by Markdent::Parser::BEGIN@11 at line 959 of Markdent/Dialect/Standard/SpanParser.pm # once (47µs+23.5ms) by Markdent::Parser::BEGIN@10 at line 808 of Markdent/Dialect/Standard/BlockParser.pm # once (47µs+17.6ms) by Markdent::Simple::Document::BEGIN@10 at line 310 of Markdent/Parser.pm # once (52µs+14.0ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@26 at line 90 of Markdent/Event/StartStrong.pm # once (50µs+13.3ms) by Class::MOP::__ANON__[/home/doy/coding/src/Class-MOP/blib/lib//Class/MOP.pm:118] at line 106 of Markdent/Role/BalancedEvent.pm # once (49µs+11.9ms) by Markdent::Types::Internal::BEGIN@11 at line 611 of MooseX/Types.pm # once (49µs+11.8ms) by Markdent::Simple::Document::BEGIN@9 at line 117 of Markdent/Handler/HTMLStream/Document.pm # once (52µs+11.6ms) by MooseX::Types::BEGIN@12 at line 291 of MooseX/Types/Base.pm # once (46µs+11.3ms) by Class::MOP::__ANON__[/home/doy/coding/src/Class-MOP/blib/lib//Class/MOP.pm:118] at line 210 of Markdent/Role/Event.pm # once (46µs+10.9ms) by Class::MOP::__ANON__[/home/doy/coding/src/Class-MOP/blib/lib//Class/MOP.pm:118] at line 123 of Markdent/Role/AnyParser.pm # once (51µs+10.8ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@20 at line 59 of Markdent/Event/StartParagraph.pm # once (49µs+10.8ms) by Class::MOP::__ANON__[/home/doy/coding/src/Class-MOP/blib/lib//Class/MOP.pm:118] at line 107 of Markdent/Role/DebugPrinter.pm # once (44µs+10.5ms) by Class::MOP::__ANON__[/home/doy/coding/src/Class-MOP/blib/lib//Class/MOP.pm:118] at line 88 of Markdent/Role/BlockParser.pm # once (47µs+9.79ms) by main::BEGIN@0 at line 108 of Markdent/Simple/Document.pm # once (44µs+9.64ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@25 at line 109 of Markdent/Event/StartLink.pm # once (43µs+9.63ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@27 at line 87 of Markdent/Event/Text.pm # once (43µs+9.61ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@18 at line 75 of Markdent/Event/HTMLComment.pm # once (44µs+9.59ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@12 at line 75 of Markdent/Event/AutoLink.pm # once (44µs+9.59ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@21 at line 116 of Markdent/Event/Image.pm # once (43µs+9.56ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@26 at line 75 of Markdent/Event/HTMLCommentBlock.pm # once (44µs+9.54ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@20 at line 86 of Markdent/Event/HTMLTag.pm # once (43µs+9.52ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@24 at line 86 of Markdent/Event/StartHTMLTag.pm # once (44µs+9.16ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@22 at line 90 of Markdent/Event/StartCode.pm # once (46µs+9.15ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@23 at line 90 of Markdent/Event/StartEmphasis.pm # once (45µs+9.11ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@13 at line 90 of Markdent/Event/EndCode.pm # once (44µs+9.10ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@17 at line 90 of Markdent/Event/EndStrong.pm # once (44µs+9.03ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@14 at line 90 of Markdent/Event/EndEmphasis.pm # once (44µs+8.92ms) by Class::MOP::__ANON__[/home/doy/coding/src/Class-MOP/blib/lib//Class/MOP.pm:118] at line 91 of Markdent/Role/EventsAsMethods.pm # once (42µs+8.59ms) by Class::MOP::__ANON__[/home/doy/coding/src/Class-MOP/blib/lib//Class/MOP.pm:118] at line 70 of Markdent/Role/SpanParser.pm # once (43µs+8.58ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@25 at line 75 of Markdent/Event/HTMLBlock.pm # once (42µs+8.54ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@19 at line 76 of Markdent/Event/HTMLEntity.pm # once (42µs+8.48ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@15 at line 75 of Markdent/Event/EndHeader.pm # once (43µs+8.48ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@15 at line 75 of Markdent/Event/EndHTMLTag.pm # once (44µs+8.48ms) by Class::MOP::__ANON__[/home/doy/coding/src/Class-MOP/blib/lib//Class/MOP.pm:118] at line 60 of Markdent/Role/EventAsText.pm # once (42µs+8.48ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@14 at line 75 of Markdent/Event/StartHeader.pm # once (41µs+8.47ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@27 at line 75 of Markdent/Event/Preformatted.pm # once (41µs+8.42ms) by Class::MOP::__ANON__[/home/doy/coding/src/Class-MOP/blib/lib//Class/MOP.pm:118] at line 63 of Markdent/Role/Handler.pm # once (43µs+8.06ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@21 at line 59 of Markdent/Event/EndParagraph.pm # once (55µs+7.57ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@18 at line 59 of Markdent/Event/StartOrderedList.pm # once (52µs+7.52ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@10 at line 59 of Markdent/Event/StartDocument.pm # once (41µs+7.45ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@24 at line 59 of Markdent/Event/HorizontalRule.pm # once (44µs+7.45ms) by Markdent::Dialect::Standard::SpanParser::BEGIN@16 at line 62 of Markdent/Event/EndLink.pm # once (42µs+7.39ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@19 at line 59 of Markdent/Event/EndOrderedList.pm # once (42µs+7.38ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@16 at line 59 of Markdent/Event/StartListItem.pm # once (42µs+7.36ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@12 at line 59 of Markdent/Event/StartBlockquote.pm # once (42µs+7.34ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@22 at line 59 of Markdent/Event/StartUnorderedList.pm # once (42µs+7.34ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@17 at line 59 of Markdent/Event/EndListItem.pm # once (42µs+7.34ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@11 at line 59 of Markdent/Event/EndDocument.pm # once (49µs+7.32ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@13 at line 59 of Markdent/Event/EndBlockquote.pm # once (42µs+7.32ms) by Markdent::Dialect::Standard::BlockParser::BEGIN@23 at line 59 of Markdent/Event/EndUnorderedList.pm # once (45µs+5.90ms) by Markdent::Types::Internal::BEGIN@24 at line 84 of MooseX/Types/Moose.pm # once (41µs+1.50ms) by MooseX::Types::BEGIN@15 at line 102 of MooseX/Types/CheckedUtilExports.pm # once (42µs+830µs) by Markdent::Handler::HTMLStream::Document::BEGIN@11 at line 62 of namespace/autoclean.pm
free => sub { $_->() for @{ $_[1] }; () };
# spent 521ms making 49 calls to namespace::autoclean::__ANON__[namespace/autoclean.pm:57], avg 10.6ms/call # spent 31.8ms making 5 calls to namespace::clean::__ANON__[namespace/clean.pm:117], avg 6.35ms/call # spent 144µs making 1 call to Variable::Magic::wizard
27
28
# spent 5.26ms (2.79+2.46) within B::Hooks::EndOfScope::on_scope_end which was called 54 times, avg 97µs/call: # 49 times (2.52ms+2.20ms) by namespace::autoclean::import at line 57 of namespace/autoclean.pm, avg 96µs/call # 5 times (274µs+262µs) by namespace::clean::import at line 117 of namespace/clean.pm, avg 107µs/call
sub on_scope_end (&) {
291622.62ms my $cb = shift;
30
31 $^H |= 0x020000;
32
3354960µs54400µs if (my $stack = Variable::Magic::getdata %^H, $wiz) {
# spent 400µs making 54 calls to Variable::Magic::getdata, avg 7µs/call
34 push @{ $stack }, $cb;
35 }
36 else {
371835µs1082.68ms Variable::Magic::cast %^H, $wiz, $cb;
# spent 2.07ms making 54 calls to Variable::Magic::cast, avg 38µs/call # spent 616µs making 54 calls to B::Hooks::EndOfScope::__ANON__[B/Hooks/EndOfScope.pm:25], avg 11µs/call
38 }
39 }
40}
41
42
43115µs1;
44
45__END__