← 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/5.22.0/x86_64-linux/mro.pm
StatementsExecuted 8 statements in 168µs
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
4348764.04ms4.04msmro::::get_linear_isa mro::get_linear_isa (xsub)
41621204µs204µsmro::::get_pkg_gen mro::get_pkg_gen (xsub)
1361152µs52µsmro::::method_changed_in mro::method_changed_in (xsub)
11115µs15µsmro::::bootstrap mro::bootstrap (xsub)
11110µs11µsmro::::BEGIN@10 mro::BEGIN@10
1114µs7µsmro::::BEGIN@11 mro::BEGIN@11
0000s0smaybe::next::::methodmaybe::next::method
0000s0smro::::import mro::import
0000s0snext::::can next::can
0000s0snext::::method next::method
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1# mro.pm
2#
3# Copyright (c) 2007 Brandon L Black
4# Copyright (c) 2008,2009 Larry Wall and others
5#
6# You may distribute under the terms of either the GNU General Public
7# License or the Artistic License, as specified in the README file.
8#
9package mro;
10215µs213µs
# spent 11µs (10+1) within mro::BEGIN@10 which was called: # once (10µs+1µs) by MRO::Compat::BEGIN@10 at line 10
use strict;
# spent 11µs making 1 call to mro::BEGIN@10 # spent 1µs making 1 call to strict::import
112101µs210µs
# spent 7µs (4+3) within mro::BEGIN@11 which was called: # once (4µs+3µs) by MRO::Compat::BEGIN@10 at line 11
use warnings;
# spent 7µs making 1 call to mro::BEGIN@11 # spent 3µs making 1 call to warnings::import
12
13# mro.pm versions < 1.00 reserved for MRO::Compat
14# for partial back-compat to 5.[68].x
151200nsour $VERSION = '1.17';
16
17sub import {
18 mro::set_mro(scalar(caller), $_[1]) if $_[1];
19}
20
21package # hide me from PAUSE
22 next;
23
24sub can { mro::_nextcan($_[0], 0) }
25
26sub method {
27 my $method = mro::_nextcan($_[0], 1);
28 goto &$method;
29}
30
31package # hide me from PAUSE
32 maybe::next;
33
34sub method {
35 my $method = mro::_nextcan($_[0], 0);
36 goto &$method if defined $method;
37 return;
38}
39
401200nsrequire XSLoader;
41148µs140µsXSLoader::load('mro');
# spent 40µs making 1 call to XSLoader::load
42
4314µs1;
44
45__END__
 
# spent 15µs within mro::bootstrap which was called: # once (15µs+0s) by DynaLoader::bootstrap at line 216 of DynaLoader.pm
sub mro::bootstrap; # xsub
# spent 4.04ms within mro::get_linear_isa which was called 4348 times, avg 929ns/call: # 4004 times (3.78ms+0s) by Role::Tiny::does_role at line 439 of Role/Tiny.pm, avg 944ns/call # 309 times (231µs+0s) by Class::MOP::Class::linearized_isa at line 1007 of Class/MOP/Class.pm, avg 747ns/call # 11 times (13µs+0s) by Moo::_constructor_maker_for at line 178 of Moo.pm, avg 1µs/call # 11 times (4µs+0s) by Method::Generate::Constructor::install_delayed at line 79 of Method/Generate/Constructor.pm, avg 364ns/call # 10 times (8µs+0s) by Method::Generate::Constructor::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/Method/Generate/Constructor.pm:97] at line 82 of Method/Generate/Constructor.pm, avg 750ns/call # 2 times (1µs+0s) by Method::Generate::BuildAll::buildall_body_for at line 30 of Method/Generate/BuildAll.pm, avg 500ns/call # once (2µs+0s) by Moose::init_meta at line 184 of Moose.pm
sub mro::get_linear_isa; # xsub
# spent 204µs within mro::get_pkg_gen which was called 416 times, avg 490ns/call: # 401 times (196µs+0s) by Class::MOP::Mixin::HasMethods::update_package_cache_flag at line 209 of Class/MOP/Mixin/HasMethods.pm, avg 488ns/call # 15 times (8µs+0s) by Class::MOP::Mixin::HasMethods::_full_method_map at line 215 of Class/MOP/Mixin/HasMethods.pm, avg 533ns/call
sub mro::get_pkg_gen; # xsub
# spent 52µs within mro::method_changed_in which was called 136 times, avg 382ns/call: # 136 times (52µs+0s) by constant::import at line 198 of constant.pm, avg 382ns/call
sub mro::method_changed_in; # xsub