← 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:10:02 2010

Filename/home/doy/coding/Package-Stash-XS/Package-Stash-XS-0.18/blib/lib/Package/Stash/XS.pm
StatementsExecuted 12 statements in 851µs
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
893652166ms207msPackage::Stash::XS::::get_symbolPackage::Stash::XS::get_symbol (xsub)
220833112ms123msPackage::Stash::XS::::add_symbolPackage::Stash::XS::add_symbol (xsub)
1388615363.9ms63.9msPackage::Stash::XS::::namespacePackage::Stash::XS::namespace (xsub)
21804241.7ms51.5msPackage::Stash::XS::::has_symbolPackage::Stash::XS::has_symbol (xsub)
8891123.9ms29.1msPackage::Stash::XS::::get_or_add_symbolPackage::Stash::XS::get_or_add_symbol (xsub)
8251119.6ms22.9msPackage::Stash::XS::::remove_globPackage::Stash::XS::remove_glob (xsub)
31345315.8ms15.8msPackage::Stash::XS::::namePackage::Stash::XS::name (xsub)
389838.19ms8.19msPackage::Stash::XS::::newPackage::Stash::XS::new (xsub)
181227.56ms8.59msPackage::Stash::XS::::list_all_symbolsPackage::Stash::XS::list_all_symbols (xsub)
50222.37ms2.61msPackage::Stash::XS::::get_all_symbolsPackage::Stash::XS::get_all_symbols (xsub)
111129µs129µsPackage::Stash::XS::::bootstrapPackage::Stash::XS::bootstrap (xsub)
11158µs58µsPackage::Stash::XS::::BEGIN@2Package::Stash::XS::BEGIN@2
11151µs121µsPackage::Stash::XS::::BEGIN@6Package::Stash::XS::BEGIN@6
11139µs57µsPackage::Stash::XS::::BEGIN@5Package::Stash::XS::BEGIN@5
11122µs22µsPackage::Stash::XS::::BEGIN@9Package::Stash::XS::BEGIN@9
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::XS;
2
# spent 58µs within Package::Stash::XS::BEGIN@2 which was called: # once (58µs+0s) by Package::Stash::BEGIN@11 at line 4
BEGIN {
3141µs $Package::Stash::XS::VERSION = '0.18';
4178µs158µs}
# spent 58µs making 1 call to Package::Stash::XS::BEGIN@2
53104µs274µs
# spent 57µs (39+18) within Package::Stash::XS::BEGIN@5 which was called: # once (39µs+18µs) by Package::Stash::BEGIN@11 at line 5
use strict;
# spent 57µs making 1 call to Package::Stash::XS::BEGIN@5 # spent 18µs making 1 call to strict::import
6399µs2190µs
# spent 121µs (51+70) within Package::Stash::XS::BEGIN@6 which was called: # once (51µs+70µs) by Package::Stash::BEGIN@11 at line 6
use warnings;
# spent 121µs making 1 call to Package::Stash::XS::BEGIN@6 # spent 70µs making 1 call to warnings::import
7# ABSTRACT: faster and more correct implementation of the Package::Stash API
8
93175µs122µs
# spent 22µs within Package::Stash::XS::BEGIN@9 which was called: # once (22µs+0s) by Package::Stash::BEGIN@11 at line 9
use XSLoader;
# spent 22µs making 1 call to Package::Stash::XS::BEGIN@9
10XSLoader::load(
11 __PACKAGE__,
12 # we need to be careful not to touch $VERSION at compile time, otherwise
13 # DynaLoader will assume it's set and check against it, which will cause
14 # fail when being run in the checkout without dzil having set the actual
15 # $VERSION
16 exists $Package::Stash::XS::{VERSION}
171336µs1306µs ? ${ $Package::Stash::XS::{VERSION} } : (),
# spent 306µs making 1 call to XSLoader::load
18);
19
20
21118µs1;
22
23__END__
 
# spent 123ms (112+11.1) within Package::Stash::XS::add_symbol which was called 2208 times, avg 56µs/call: # 2191 times (112ms+11.0ms) by Class::MOP::Package::add_package_symbol at line 106 of Class/MOP/Package.pm, avg 56µs/call # 12 times (421µs+46µs) by Package::Stash::BEGIN@11 at line 44 of Package/Stash.pm, avg 39µs/call # 5 times (169µs+24µs) by namespace::clean::get_class_store at line 149 of namespace/clean.pm, avg 39µs/call
sub Package::Stash::XS::add_symbol; # xsub
# spent 129µs within Package::Stash::XS::bootstrap which was called: # once (129µs+0s) by DynaLoader::bootstrap at line 223 of DynaLoader.pm
sub Package::Stash::XS::bootstrap; # xsub
# spent 2.61ms (2.37+235µs) within Package::Stash::XS::get_all_symbols which was called 50 times, avg 52µs/call: # 49 times (2.32ms+227µs) by Class::MOP::Package::get_all_package_symbols at line 143 of Class/MOP/Package.pm, avg 52µs/call # once (56µs+8µs) by Package::Stash::BEGIN@11 at line 42 of Package/Stash.pm
sub Package::Stash::XS::get_all_symbols; # xsub
# spent 29.1ms (23.9+5.23) within Package::Stash::XS::get_or_add_symbol which was called 889 times, avg 33µs/call: # 889 times (23.9ms+5.23ms) by Class::MOP::Package::get_or_add_package_symbol at line 128 of Class/MOP/Package.pm, avg 33µs/call
sub Package::Stash::XS::get_or_add_symbol; # xsub
# spent 207ms (166+40.7) within Package::Stash::XS::get_symbol which was called 8936 times, avg 23µs/call: # 4712 times (95.8ms+22.8ms) by Class::MOP::Package::get_package_symbol at line 123 of Class/MOP/Package.pm, avg 25µs/call # 3300 times (53.7ms+13.9ms) by namespace::clean::__ANON__[/home/doy/coding/src/namespace-clean/namespace-clean-0.18/blib/lib/namespace/clean.pm:59] at line 51 of namespace/clean.pm, avg 21µs/call # 825 times (14.5ms+3.49ms) by namespace::clean::__ANON__[/home/doy/coding/src/namespace-clean/namespace-clean-0.18/blib/lib/namespace/clean.pm:59] at line 42 of namespace/clean.pm, avg 22µs/call # 94 times (1.74ms+475µs) by namespace::clean::get_functions at line 160 of namespace/clean.pm, avg 24µs/call # 5 times (109µs+24µs) by namespace::clean::get_class_store at line 151 of namespace/clean.pm, avg 27µs/call
sub Package::Stash::XS::get_symbol; # xsub
# spent 51.5ms (41.7+9.80) within Package::Stash::XS::has_symbol which was called 2180 times, avg 24µs/call: # 1258 times (23.8ms+5.65ms) by Class::MOP::Package::has_package_symbol at line 118 of Class/MOP/Package.pm, avg 23µs/call # 825 times (15.8ms+3.64ms) by namespace::clean::__ANON__[/home/doy/coding/src/namespace-clean/namespace-clean-0.18/blib/lib/namespace/clean.pm:59] at line 34 of namespace/clean.pm, avg 24µs/call # 92 times (1.94ms+482µs) by namespace::clean::import at line 109 of namespace/clean.pm, avg 26µs/call # 5 times (106µs+24µs) by namespace::clean::get_class_store at line 149 of namespace/clean.pm, avg 26µs/call
sub Package::Stash::XS::has_symbol; # xsub
# spent 8.59ms (7.56+1.03) within Package::Stash::XS::list_all_symbols which was called 181 times, avg 47µs/call: # 176 times (7.34ms+1.01ms) by Class::MOP::Package::list_all_package_symbols at line 138 of Class/MOP/Package.pm, avg 47µs/call # 5 times (225µs+25µs) by namespace::clean::get_functions at line 160 of namespace/clean.pm, avg 50µs/call
sub Package::Stash::XS::list_all_symbols; # xsub
# spent 15.8ms within Package::Stash::XS::name which was called 3134 times, avg 5µs/call: # 2191 times (11.0ms+0s) by Package::Stash::XS::add_symbol at line 106 of Class/MOP/Package.pm, avg 5µs/call # 825 times (4.17ms+0s) by namespace::clean::__ANON__[/home/doy/coding/src/namespace-clean/namespace-clean-0.18/blib/lib/namespace/clean.pm:59] at line 43 of namespace/clean.pm, avg 5µs/call # 101 times (485µs+0s) by Package::Stash::XS::get_or_add_symbol at line 128 of Class/MOP/Package.pm, avg 5µs/call # 12 times (46µs+0s) by Package::Stash::XS::add_symbol at line 44 of Package/Stash.pm, avg 4µs/call # 5 times (24µs+0s) by Package::Stash::XS::add_symbol at line 149 of namespace/clean.pm, avg 5µs/call
sub Package::Stash::XS::name; # xsub
# spent 63.9ms within Package::Stash::XS::namespace which was called 13886 times, avg 5µs/call: # 4712 times (22.8ms+0s) by Package::Stash::XS::get_symbol at line 123 of Class/MOP/Package.pm, avg 5µs/call # 3300 times (13.9ms+0s) by Package::Stash::XS::get_symbol at line 51 of namespace/clean.pm, avg 4µs/call # 1258 times (5.65ms+0s) by Package::Stash::XS::has_symbol at line 118 of Class/MOP/Package.pm, avg 4µs/call # 889 times (4.74ms+0s) by Package::Stash::XS::get_or_add_symbol at line 128 of Class/MOP/Package.pm, avg 5µs/call # 825 times (4.10ms+0s) by namespace::clean::__ANON__[/home/doy/coding/src/namespace-clean/namespace-clean-0.18/blib/lib/namespace/clean.pm:59] at line 36 of namespace/clean.pm, avg 5µs/call # 825 times (3.64ms+0s) by Package::Stash::XS::has_symbol at line 34 of namespace/clean.pm, avg 4µs/call # 825 times (3.49ms+0s) by Package::Stash::XS::get_symbol at line 42 of namespace/clean.pm, avg 4µs/call # 825 times (3.30ms+0s) by Package::Stash::XS::remove_glob at line 53 of namespace/clean.pm, avg 4µs/call # 176 times (1.01ms+0s) by Package::Stash::XS::list_all_symbols at line 138 of Class/MOP/Package.pm, avg 6µs/call # 99 times (500µs+0s) by Package::Stash::XS::get_symbol or Package::Stash::XS::list_all_symbols at line 160 of namespace/clean.pm, avg 5µs/call # 92 times (482µs+0s) by Package::Stash::XS::has_symbol at line 109 of namespace/clean.pm, avg 5µs/call # 49 times (227µs+0s) by Package::Stash::XS::get_all_symbols at line 143 of Class/MOP/Package.pm, avg 5µs/call # 5 times (24µs+0s) by Package::Stash::XS::get_symbol at line 151 of namespace/clean.pm, avg 5µs/call # 5 times (24µs+0s) by Package::Stash::XS::has_symbol at line 149 of namespace/clean.pm, avg 5µs/call # once (8µs+0s) by Package::Stash::XS::get_all_symbols at line 42 of Package/Stash.pm
sub Package::Stash::XS::namespace; # xsub
# spent 8.19ms within Package::Stash::XS::new which was called 389 times, avg 21µs/call: # 264 times (5.58ms+0s) by Class::MOP::Package::_package_stash at line 94 of Class/MOP/Package.pm, avg 21µs/call # 54 times (1.40ms+0s) by namespace::clean::__ANON__[/home/doy/coding/src/namespace-clean/namespace-clean-0.18/blib/lib/namespace/clean.pm:59] at line 27 of namespace/clean.pm, avg 26µs/call # 54 times (924µs+0s) by namespace::clean::__ANON__[/home/doy/coding/src/namespace-clean/namespace-clean-0.18/blib/lib/namespace/clean.pm:59] at line 26 of namespace/clean.pm, avg 17µs/call # 5 times (102µs+0s) by namespace::clean::get_functions at line 158 of namespace/clean.pm, avg 20µs/call # 5 times (72µs+0s) by namespace::clean::get_class_store at line 147 of namespace/clean.pm, avg 14µs/call # 5 times (65µs+0s) by namespace::clean::import at line 97 of namespace/clean.pm, avg 13µs/call # once (40µs+0s) by Package::Stash::BEGIN@11 at line 40 of Package/Stash.pm # once (10µs+0s) by Package::Stash::BEGIN@11 at line 41 of Package/Stash.pm
sub Package::Stash::XS::new; # xsub
# spent 22.9ms (19.6+3.30) within Package::Stash::XS::remove_glob which was called 825 times, avg 28µs/call: # 825 times (19.6ms+3.30ms) by namespace::clean::__ANON__[/home/doy/coding/src/namespace-clean/namespace-clean-0.18/blib/lib/namespace/clean.pm:59] at line 53 of namespace/clean.pm, avg 28µs/call
sub Package::Stash::XS::remove_glob; # xsub