← 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/List/MoreUtils/XS.pm
StatementsExecuted 16 statements in 306µs
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
111437µs2.29msList::MoreUtils::XS::::BEGIN@10List::MoreUtils::XS::BEGIN@10
11115µs15µsList::MoreUtils::XS::::BEGIN@3List::MoreUtils::XS::BEGIN@3
1116µs8µsList::MoreUtils::XS::::BEGIN@4List::MoreUtils::XS::BEGIN@4
1116µs10µsList::MoreUtils::XS::::BEGIN@5List::MoreUtils::XS::BEGIN@5
1115µs39µsList::MoreUtils::XS::::BEGIN@7List::MoreUtils::XS::BEGIN@7
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package List::MoreUtils::XS;
2
3231µs115µs
# spent 15µs within List::MoreUtils::XS::BEGIN@3 which was called: # once (15µs+0s) by List::MoreUtils::BEGIN@13 at line 3
use 5.006;
# spent 15µs making 1 call to List::MoreUtils::XS::BEGIN@3
4213µs210µs
# spent 8µs (6+2) within List::MoreUtils::XS::BEGIN@4 which was called: # once (6µs+2µs) by List::MoreUtils::BEGIN@13 at line 4
use strict;
# spent 8µs making 1 call to List::MoreUtils::XS::BEGIN@4 # spent 2µs making 1 call to strict::import
5216µs215µs
# spent 10µs (6+5) within List::MoreUtils::XS::BEGIN@5 which was called: # once (6µs+5µs) by List::MoreUtils::BEGIN@13 at line 5
use warnings;
# spent 10µs making 1 call to List::MoreUtils::XS::BEGIN@5 # spent 5µs making 1 call to warnings::import
6
72107µs273µs
# spent 39µs (5+34) within List::MoreUtils::XS::BEGIN@7 which was called: # once (5µs+34µs) by List::MoreUtils::BEGIN@13 at line 7
use vars qw{$VERSION @ISA};
# spent 39µs making 1 call to List::MoreUtils::XS::BEGIN@7 # spent 34µs making 1 call to vars::import
8
9BEGIN
10
# spent 2.29ms (437µs+1.85) within List::MoreUtils::XS::BEGIN@10 which was called: # once (437µs+1.85ms) by List::MoreUtils::BEGIN@13 at line 42
{
111200ns $VERSION = '0.413';
12
13 # Load the XS at compile-time so that redefinition warnings will be
14 # thrown correctly if the XS versions of part or indexes loaded
151600ns my $ldr = <<EOLDR;
16 package List::MoreUtils;
17
18 # PERL_DL_NONLAZY must be false, or any errors in loading will just
19 # cause the perl code to be tested
20 local \$ENV{PERL_DL_NONLAZY} = 0 if \$ENV{PERL_DL_NONLAZY};
21
22 use XSLoader ();
23 XSLoader::load("List::MoreUtils", "$VERSION");
24
25 1;
26EOLDR
27
28131µs eval $ldr unless $ENV{LIST_MOREUTILS_PP};
# spent 86µs executing statements in string eval
# includes 4µs spent executing 1 call to 1 sub defined therein.
29
30 # ensure to catch even PP only subs
31125µs my @pp_imp = map { "List::MoreUtils->can(\"$_\") or *$_ = \\&List::MoreUtils::PP::$_;" }
32 qw(any all none notall one any_u all_u none_u notall_u one_u true false
33 firstidx firstval firstres lastidx lastval lastres onlyidx onlyval onlyres
34 insert_after insert_after_string
35 apply after after_incl before before_incl
36 each_array each_arrayref pairwise
37 natatime mesh uniq singleton minmax part indexes bsearch bsearchidx
38 sort_by nsort_by _XScompiled);
3913µs my $pp_stuff = join( "\n", "use List::MoreUtils::PP;", "package List::MoreUtils;", @pp_imp );
40148µs eval $pp_stuff;
# spent 347µs executing statements in string eval
# includes 1.49ms spent executing 1 call to 1 sub defined therein.
4115µs die $@ if $@;
42125µs12.29ms}
# spent 2.29ms making 1 call to List::MoreUtils::XS::BEGIN@10
43
44=pod
45
46=head1 NAME
47
48List::MoreUtils::XS - Provide compiled List::MoreUtils functions
49
50=head1 SYNOPSIS
51
52 BEGIN { delete $ENV{LIST_MOREUTILS_PP}; }
53 use List::MoreUtils ...;
54
55=head1 SEE ALSO
56
57L<List::Util>, L<List::AllUtils>
58
59=head1 AUTHOR
60
61Jens Rehsack E<lt>rehsack AT cpan.orgE<gt>
62
63Adam Kennedy E<lt>adamk@cpan.orgE<gt>
64
65Tassilo von Parseval E<lt>tassilo.von.parseval@rwth-aachen.deE<gt>
66
67=head1 COPYRIGHT AND LICENSE
68
69Some parts copyright 2011 Aaron Crane.
70
71Copyright 2004 - 2010 by Tassilo von Parseval
72
73Copyright 2013 - 2015 by Jens Rehsack
74
75This library is free software; you can redistribute it and/or modify
76it under the same terms as Perl itself, either Perl version 5.8.4 or,
77at your option, any later version of Perl 5 you may have available.
78
79=cut
80
8112µs1;