← Index
NYTProf Performance Profile   « line view »
For /home/ss5/perl5/perlbrew/perls/perl-5.22.0/bin/benchmarkanything-storage
  Run on Mon Jan 29 16:55:34 2018
Reported on Mon Jan 29 16:57:06 2018

Filename/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/x86_64-linux/Package/Stash/XS.pm
StatementsExecuted 13 statements in 275µs
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
499333.20ms3.46msPackage::Stash::XS::::add_symbolPackage::Stash::XS::add_symbol (xsub)
1622522.38ms2.70msPackage::Stash::XS::::get_symbolPackage::Stash::XS::get_symbol (xsub)
2693143851µs891µsPackage::Stash::XS::::namespacePackage::Stash::XS::namespace (xsub)
15333543µs543µsPackage::Stash::XS::::newPackage::Stash::XS::new (xsub)
29243416µs540µsPackage::Stash::XS::::has_symbolPackage::Stash::XS::has_symbol (xsub)
17711325µs347µsPackage::Stash::XS::::remove_globPackage::Stash::XS::remove_glob (xsub)
7911252µs457µsPackage::Stash::XS::::get_or_add_symbolPackage::Stash::XS::get_or_add_symbol (xsub)
63293175µs175µsPackage::Stash::XS::::namePackage::Stash::XS::name (xsub)
2422128µs212µsPackage::Stash::XS::::list_all_symbolsPackage::Stash::XS::list_all_symbols (xsub)
1116µs6µsPackage::Stash::XS::::BEGIN@10Package::Stash::XS::BEGIN@10
1116µs6µsPackage::Stash::XS::::BEGIN@2Package::Stash::XS::BEGIN@2
1115µs6µsPackage::Stash::XS::::BEGIN@8Package::Stash::XS::BEGIN@8
1114µs8µsPackage::Stash::XS::::BEGIN@9Package::Stash::XS::BEGIN@9
1113µs3µsPackage::Stash::XS::::BEGIN@13Package::Stash::XS::BEGIN@13
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 6µs within Package::Stash::XS::BEGIN@2 which was called: # once (6µs+0s) by Module::Runtime::require_module at line 4
BEGIN {
314µs $Package::Stash::XS::AUTHORITY = 'cpan:DOY';
4121µs16µs}
# spent 6µs making 1 call to Package::Stash::XS::BEGIN@2
5{
62600ns $Package::Stash::XS::VERSION = '0.28';
7}
8213µs28µs
# spent 6µs (5+1) within Package::Stash::XS::BEGIN@8 which was called: # once (5µs+1µs) by Module::Runtime::require_module at line 8
use strict;
# spent 6µs making 1 call to Package::Stash::XS::BEGIN@8 # spent 1µs making 1 call to strict::import
9215µs213µs
# spent 8µs (4+4) within Package::Stash::XS::BEGIN@9 which was called: # once (4µs+4µs) by Module::Runtime::require_module at line 9
use warnings;
# spent 8µs making 1 call to Package::Stash::XS::BEGIN@9 # spent 4µs making 1 call to warnings::import
10224µs16µs
# spent 6µs within Package::Stash::XS::BEGIN@10 which was called: # once (6µs+0s) by Module::Runtime::require_module at line 10
use 5.008001;
# spent 6µs making 1 call to Package::Stash::XS::BEGIN@10
11# ABSTRACT: faster and more correct implementation of the Package::Stash API
12
13235µs13µs
# spent 3µs within Package::Stash::XS::BEGIN@13 which was called: # once (3µs+0s) by Module::Runtime::require_module at line 13
use XSLoader;
# spent 3µs making 1 call to Package::Stash::XS::BEGIN@13
14XSLoader::load(
15 __PACKAGE__,
16 # we need to be careful not to touch $VERSION at compile time, otherwise
17 # DynaLoader will assume it's set and check against it, which will cause
18 # fail when being run in the checkout without dzil having set the actual
19 # $VERSION
20 exists $Package::Stash::XS::{VERSION}
211159µs1153µs ? ${ $Package::Stash::XS::{VERSION} } : (),
# spent 153µs making 1 call to XSLoader::load
22);
23
24
2514µs1;
26
27__END__
 
# spent 3.46ms (3.20+269µs) within Package::Stash::XS::add_symbol which was called 499 times, avg 7µs/call: # 405 times (2.75ms+238µs) by Class::MOP::Package::add_package_symbol at line 230 of Class/MOP/Package.pm, avg 7µs/call # 74 times (362µs+28µs) by Search::Elasticsearch::Role::Client::Direct::_install_api at line 141 of Search/Elasticsearch/Role/Client/Direct.pm, avg 5µs/call # 20 times (84µs+3µs) by namespace::clean::get_class_store at line 208 of namespace/clean.pm, avg 4µs/call
sub Package::Stash::XS::add_symbol; # xsub
# spent 457µs (252+205) within Package::Stash::XS::get_or_add_symbol which was called 79 times, avg 6µs/call: # 79 times (252µs+205µs) by Class::MOP::Package::get_or_add_package_symbol at line 252 of Class/MOP/Package.pm, avg 6µs/call
sub Package::Stash::XS::get_or_add_symbol; # xsub
# spent 2.70ms (2.38+321µs) within Package::Stash::XS::get_symbol which was called 1622 times, avg 2µs/call: # 708 times (895µs+84µs) by namespace::clean::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/namespace/clean.pm:121] at line 105 of namespace/clean.pm, avg 1µs/call # 540 times (903µs+126µs) by Class::MOP::Package::get_package_symbol at line 247 of Class/MOP/Package.pm, avg 2µs/call # 177 times (284µs+78µs) by namespace::clean::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/namespace/clean.pm:121] at line 69 of namespace/clean.pm, avg 2µs/call # 177 times (263µs+30µs) by namespace::clean::get_functions at line 218 of namespace/clean.pm, avg 2µs/call # 20 times (33µs+3µs) by namespace::clean::get_class_store at line 210 of namespace/clean.pm, avg 2µs/call
sub Package::Stash::XS::get_symbol; # xsub
# spent 540µs (416+124) within Package::Stash::XS::has_symbol which was called 292 times, avg 2µs/call: # 177 times (233µs+54µs) by namespace::clean::import at line 170 of namespace/clean.pm, avg 2µs/call # 74 times (105µs+20µs) by Search::Elasticsearch::Role::Client::Direct::_install_api at line 134 of Search/Elasticsearch/Role/Client/Direct.pm, avg 2µs/call # 21 times (38µs+9µs) by Class::MOP::Package::has_package_symbol at line 242 of Class/MOP/Package.pm, avg 2µs/call # 20 times (41µs+41µs) by namespace::clean::get_class_store at line 208 of namespace/clean.pm, avg 4µs/call
sub Package::Stash::XS::has_symbol; # xsub
# spent 212µs (128+84) within Package::Stash::XS::list_all_symbols which was called 24 times, avg 9µs/call: # 20 times (108µs+83µs) by namespace::clean::get_functions at line 218 of namespace/clean.pm, avg 10µs/call # 4 times (20µs+1µs) by Class::MOP::Package::list_all_package_symbols at line 262 of Class/MOP/Package.pm, avg 5µs/call
sub Package::Stash::XS::list_all_symbols; # xsub
# spent 175µs within Package::Stash::XS::name which was called 632 times, avg 276ns/call: # 405 times (121µs+0s) by Package::Stash::XS::add_symbol at line 230 of Class/MOP/Package.pm, avg 298ns/call # 74 times (13µs+0s) by Package::Stash::XS::add_symbol at line 141 of Search/Elasticsearch/Role/Client/Direct.pm, avg 181ns/call # 69 times (17µs+0s) by Package::Stash::XS::namespace at line 252 of Class/MOP/Package.pm, avg 249ns/call # 20 times (7µs+0s) by Package::Stash::XS::namespace at line 218 of namespace/clean.pm, avg 365ns/call # 20 times (7µs+0s) by Package::Stash::XS::namespace at line 69 of namespace/clean.pm, avg 350ns/call # 20 times (4µs+0s) by Package::Stash::XS::namespace at line 208 of namespace/clean.pm, avg 220ns/call # 20 times (3µs+0s) by Package::Stash::XS::namespace at line 170 of namespace/clean.pm, avg 170ns/call # 2 times (800ns+0s) by Package::Stash::XS::namespace at line 134 of Search/Elasticsearch/Role/Client/Direct.pm, avg 400ns/call # 2 times (600ns+0s) by Package::Stash::XS::namespace at line 242 of Class/MOP/Package.pm, avg 300ns/call
sub Package::Stash::XS::name; # xsub
# spent 891µs (851+41) within Package::Stash::XS::namespace which was called 2693 times, avg 331ns/call: # 708 times (84µs+0s) by Package::Stash::XS::get_symbol at line 105 of namespace/clean.pm, avg 119ns/call # 540 times (126µs+0s) by Package::Stash::XS::get_symbol at line 247 of Class/MOP/Package.pm, avg 233ns/call # 405 times (117µs+0s) by Package::Stash::XS::add_symbol at line 230 of Class/MOP/Package.pm, avg 290ns/call # 197 times (105µs+7µs) by Package::Stash::XS::get_symbol or Package::Stash::XS::list_all_symbols at line 218 of namespace/clean.pm, avg 571ns/call # 177 times (72µs+7µs) by Package::Stash::XS::get_symbol at line 69 of namespace/clean.pm, avg 444ns/call # 177 times (51µs+3µs) by Package::Stash::XS::has_symbol at line 170 of namespace/clean.pm, avg 306ns/call # 177 times (22µs+0s) by Package::Stash::XS::remove_glob at line 109 of namespace/clean.pm, avg 125ns/call # 79 times (188µs+17µs) by Package::Stash::XS::get_or_add_symbol at line 252 of Class/MOP/Package.pm, avg 3µs/call # 74 times (19µs+800ns) by Package::Stash::XS::has_symbol at line 134 of Search/Elasticsearch/Role/Client/Direct.pm, avg 272ns/call # 74 times (14µs+0s) by Package::Stash::XS::add_symbol at line 141 of Search/Elasticsearch/Role/Client/Direct.pm, avg 193ns/call # 40 times (40µs+4µs) by Package::Stash::XS::add_symbol or Package::Stash::XS::has_symbol at line 208 of namespace/clean.pm, avg 1µs/call # 21 times (8µs+600ns) by Package::Stash::XS::has_symbol at line 242 of Class/MOP/Package.pm, avg 433ns/call # 20 times (3µs+0s) by Package::Stash::XS::get_symbol at line 210 of namespace/clean.pm, avg 140ns/call # 4 times (1µs+0s) by Package::Stash::XS::list_all_symbols at line 262 of Class/MOP/Package.pm, avg 275ns/call
sub Package::Stash::XS::namespace; # xsub
# spent 543µs within Package::Stash::XS::new which was called 153 times, avg 4µs/call: # 80 times (252µs+0s) by namespace::clean::stash_for at line 3 of (eval 230)[namespace/clean.pm:27], avg 3µs/call # 71 times (283µs+0s) by Class::MOP::Package::_package_stash at line 218 of Class/MOP/Package.pm, avg 4µs/call # 2 times (7µs+0s) by Search::Elasticsearch::Role::Client::Direct::_install_api at line 128 of Search/Elasticsearch/Role/Client/Direct.pm, avg 4µs/call
sub Package::Stash::XS::new; # xsub
# spent 347µs (325+22) within Package::Stash::XS::remove_glob which was called 177 times, avg 2µs/call: # 177 times (325µs+22µs) by namespace::clean::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/namespace/clean.pm:121] at line 109 of namespace/clean.pm, avg 2µs/call
sub Package::Stash::XS::remove_glob; # xsub