← Index
NYTProf Performance Profile   « line view »
For examples/Atom-timer.pl
  Run on Mon Aug 12 14:45:28 2013
Reported on Mon Aug 12 14:46:14 2013

Filename/Users/dde/perl5/perlbrew/perls/5.18.0t/lib/site_perl/5.18.0/Package/Stash.pm
StatementsExecuted 34 statements in 492µs
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
11169µs809µsPackage::Stash::::BEGIN@17Package::Stash::BEGIN@17
11111µs11µsPackage::Stash::::BEGIN@10Package::Stash::BEGIN@10
1118µs15µsPackage::Stash::::BEGIN@15Package::Stash::BEGIN@15
1117µs7µsPackage::Stash::::BEGIN@2Package::Stash::BEGIN@2
1116µs16µsPackage::Stash::::BEGIN@8Package::Stash::BEGIN@8
1115µs8µsPackage::Stash::::BEGIN@9Package::Stash::BEGIN@9
0000s0sPackage::Stash::::add_symbolPackage::Stash::add_symbol
0000s0sPackage::Stash::::bootstrapPackage::Stash::bootstrap
0000s0sPackage::Stash::::get_all_symbolsPackage::Stash::get_all_symbols
0000s0sPackage::Stash::::get_or_add_symbolPackage::Stash::get_or_add_symbol
0000s0sPackage::Stash::::get_symbolPackage::Stash::get_symbol
0000s0sPackage::Stash::::has_symbolPackage::Stash::has_symbol
0000s0sPackage::Stash::::list_all_symbolsPackage::Stash::list_all_symbols
0000s0sPackage::Stash::::namePackage::Stash::name
0000s0sPackage::Stash::::namespacePackage::Stash::namespace
0000s0sPackage::Stash::::newPackage::Stash::new
0000s0sPackage::Stash::::remove_globPackage::Stash::remove_glob
0000s0sPackage::Stash::::remove_symbolPackage::Stash::remove_symbol
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package Package::Stash;
2
# spent 7µs within Package::Stash::BEGIN@2 which was called: # once (7µs+0s) by Class::MOP::Package::BEGIN@16 at line 4
BEGIN {
314µs $Package::Stash::AUTHORITY = 'cpan:DOY';
4125µs17µs}
# spent 7µs making 1 call to Package::Stash::BEGIN@2
5{
62600ns $Package::Stash::VERSION = '0.35';
7}
8219µs226µs
# spent 16µs (6+10) within Package::Stash::BEGIN@8 which was called: # once (6µs+10µs) by Class::MOP::Package::BEGIN@16 at line 8
use strict;
# spent 16µs making 1 call to Package::Stash::BEGIN@8 # spent 10µs making 1 call to strict::import
9223µs211µs
# spent 8µs (5+3) within Package::Stash::BEGIN@9 which was called: # once (5µs+3µs) by Class::MOP::Package::BEGIN@16 at line 9
use warnings;
# spent 8µs making 1 call to Package::Stash::BEGIN@9 # spent 3µs making 1 call to warnings::import
10250µs111µs
# spent 11µs within Package::Stash::BEGIN@10 which was called: # once (11µs+0s) by Class::MOP::Package::BEGIN@16 at line 10
use 5.008001;
# spent 11µs making 1 call to Package::Stash::BEGIN@10
11# ABSTRACT: routines for manipulating stashes
12
1310sour $IMPLEMENTATION;
14
153123µs222µs
# spent 15µs (8+7) within Package::Stash::BEGIN@15 which was called: # once (8µs+7µs) by Class::MOP::Package::BEGIN@16 at line 15
use Module::Implementation 0.06;
# spent 15µs making 1 call to Package::Stash::BEGIN@15 # spent 7µs making 1 call to UNIVERSAL::VERSION
16
17
# spent 809µs (69+740) within Package::Stash::BEGIN@17 which was called: # once (69µs+740µs) by Class::MOP::Package::BEGIN@16 at line 33
BEGIN {
181100ns local $ENV{PACKAGE_STASH_IMPLEMENTATION} = $IMPLEMENTATION
19 if ( $IMPLEMENTATION and not $ENV{PACKAGE_STASH_IMPLEMENTATION} );
20
2116µs2582µs Module::Implementation::build_loader_sub(
# spent 561µs making 1 call to Module::Implementation::__ANON__[Module/Implementation.pm:47] # spent 20µs making 1 call to Module::Implementation::build_loader_sub
22 implementations => [ 'XS', 'PP' ]
23 )->();
2411µs12µs $IMPLEMENTATION = Module::Implementation::implementation_for(__PACKAGE__);
# spent 2µs making 1 call to Module::Implementation::implementation_for
25
261500ns my $impl = "Package::Stash::$IMPLEMENTATION";
27124µs118µs my $from = $impl->new($impl);
# spent 18µs making 1 call to Package::Stash::XS::new
2815µs13µs my $to = $impl->new(__PACKAGE__);
# spent 3µs making 1 call to Package::Stash::XS::new
29131µs339µs my $methods = $from->get_all_symbols('CODE');
# spent 27µs making 1 call to Package::Stash::XS::get_all_symbols # spent 11µs making 1 call to Package::Stash::XS::namespace # spent 700ns making 1 call to Package::Stash::XS::name
30114µs for my $meth (keys %$methods) {
3112133µs37122µs $to->add_symbol("&$meth" => $methods->{$meth});
# spent 108µs making 12 calls to Package::Stash::XS::add_symbol, avg 9µs/call # spent 9µs making 12 calls to Package::Stash::XS::namespace, avg 750ns/call # spent 4µs making 13 calls to Package::Stash::XS::name, avg 338ns/call
32 }
33129µs1809µs}
# spent 809µs making 1 call to Package::Stash::BEGIN@17
34
35
3612µs1;
37
38__END__