← Index
NYTProf Performance Profile   « line view »
For t/optimization.t
  Run on Thu Jan 8 22:47:42 2015
Reported on Thu Jan 8 22:48:05 2015

Filename/home/ss5/local/projects/data-dpath/t/optimization.t
StatementsExecuted 44 statements in 4.24ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
1114.21ms12.5msmain::::BEGIN@7 main::BEGIN@7
1114.10ms17.8msmain::::BEGIN@6 main::BEGIN@6
1112.12ms2.15msmain::::BEGIN@4 main::BEGIN@4
111479µs92.5msmain::::BEGIN@8 main::BEGIN@8
111380µs430µsmain::::BEGIN@3 main::BEGIN@3
10107133µs133µsUNIVERSAL::::VERSIONUNIVERSAL::VERSION (xsub)
373368µs68µsUNIVERSAL::::isaUNIVERSAL::isa (xsub)
22152µs52µsmain::::CORE:readline main::CORE:readline (opcode)
22130µs30µsmain::::CORE:open main::CORE:open (opcode)
231118µs18µsInternals::::SvREADONLYInternals::SvREADONLY (xsub)
11113µs13µsversion::::(bool version::(bool (xsub)
11113µs39µsmain::::BEGIN@9 main::BEGIN@9
22111µs11µsmain::::CORE:close main::CORE:close (opcode)
11111µs149µsmain::::BEGIN@21 main::BEGIN@21
1118µs184µsmain::::BEGIN@13 main::BEGIN@13
4117µs7µsmro::::method_changed_in mro::method_changed_in (xsub)
1116µs6µsversion::::(cmp version::(cmp (xsub)
0000s0smain::::RUNTIME main::RUNTIME
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
0259µsProfile data that couldn't be associated with a specific line:
# spent 57µs making 1 call to Test::Builder::END # spent 2µs making 1 call to Class::XSAccessor::END
1137µs#! /usr/bin/env perl
2
32344µs2453µs
# spent 430µs (380+51) within main::BEGIN@3 which was called: # once (380µs+51µs) by main::RUNTIME at line 3
use strict;
# spent 430µs making 1 call to main::BEGIN@3 # spent 23µs making 1 call to strict::import
422.00ms22.16ms
# spent 2.15ms (2.12+29µs) within main::BEGIN@4 which was called: # once (2.12ms+29µs) by main::RUNTIME at line 4
use warnings;
# spent 2.15ms making 1 call to main::BEGIN@4 # spent 9µs making 1 call to warnings::import
5
62124µs219.7ms
# spent 17.8ms (4.10+13.7) within main::BEGIN@6 which was called: # once (4.10ms+13.7ms) by main::RUNTIME at line 6
use Test::More;
# spent 17.8ms making 1 call to main::BEGIN@6 # spent 1.90ms making 1 call to Test::Builder::Module::import
72103µs212.7ms
# spent 12.5ms (4.21+8.25) within main::BEGIN@7 which was called: # once (4.21ms+8.25ms) by main::RUNTIME at line 7
use Test::Deep;
# spent 12.5ms making 1 call to main::BEGIN@7 # spent 210µs making 1 call to Exporter::import
82100µs292.7ms
# spent 92.5ms (479µs+92.1) within main::BEGIN@8 which was called: # once (479µs+92.1ms) by main::RUNTIME at line 8
use Data::DPath 'dpath';
# spent 92.5ms making 1 call to main::BEGIN@8 # spent 155µs making 1 call to Sub::Exporter::__ANON__[Sub/Exporter.pm:337]
9256µs266µs
# spent 39µs (13+27) within main::BEGIN@9 which was called: # once (13µs+27µs) by main::RUNTIME at line 9
use Data::Dumper;
# spent 39µs making 1 call to main::BEGIN@9 # spent 27µs making 1 call to Exporter::import
10
11# local $Data::DPath::DEBUG = 1;
12
13
# spent 184µs (8+176) within main::BEGIN@13 which was called: # once (8µs+176µs) by main::RUNTIME at line 19
BEGIN {
1414µs if ($] < 5.010) {
15 plan skip_all => "Perl 5.010 required for the smartmatch overloaded tests. This is ".$];
16 } else {
1712µs1176µs plan tests => 5;
# spent 176µs making 1 call to Test::More::plan
18 }
191528µs1184µs}
# spent 184µs making 1 call to main::BEGIN@13
20
21323µs3914µs
# spent 149µs (11+139) within main::BEGIN@21 which was called: # once (11µs+139µs) by Test::More::_eval at line 21
use_ok( 'Data::DPath' );
# spent 626µs making 1 call to Test::More::use_ok # spent 149µs making 1 call to main::BEGIN@21 # spent 139µs making 1 call to Sub::Exporter::__ANON__[Sub/Exporter.pm:337]
2212µs
231500nsmy $datacontent='';
24{
2522µs local $/;
26120µs114µs open F, "<", "t/bigdata.dump" or die;
# spent 14µs making 1 call to main::CORE:open
27126µs121µs $datacontent = <F>;
# spent 21µs making 1 call to main::CORE:readline
28110µs14µs close F;
# spent 4µs making 1 call to main::CORE:close
29}
301200nsmy $VAR1;
311267µseval $datacontent;
# spent 82µs executing statements in string eval
321400nsmy $data = $VAR1;
33
341200nsmy $res;
35
36113µs2526µs$res = $data ~~ dpath('/report');
# spent 302µs making 1 call to Data::DPath::__ANON__[lib/Data/DPath.pm:19] # spent 224µs making 1 call to Data::DPath::Path::op_match
3713µs1362µsis($res->[0]{reportgroup_testrun_id}, 30862, "simple dpath" );
# spent 362µs making 1 call to Test::More::is
38
39142µs22.52ms$res = $data ~~ dpath('//data//benchmark[ value eq "call_simple"]/../mean/..');
# spent 1.93ms making 1 call to Data::DPath::Path::op_match # spent 586µs making 1 call to Data::DPath::__ANON__[lib/Data/DPath.pm:19]
40112µs117.6mscmp_bag($res, [
# spent 17.6ms making 1 call to Test::Deep::cmp_bag
41 {
42 'glibc' => 'glibc, 2.4',
43 'count' => '150',
44 'language_series' => 'arch_barcelona',
45 'standard_deviation' => '0.0164822946672',
46 'language_binary' => '/opt/artemis/slbench/python/arch_barcelona/2.7/bin/python',
47 'release' => '2.6.30.10-105.2.23.fc11.x86_64',
48 'operating_system' => 'Linux',
49 'hostname' => 'foo.dept.lhm.com',
50 'mean' => '0.592707689603',
51 'median' => '0.58355140686',
52 'architecture' => '64bit',
53 'number_CPUs' => '16',
54 'benchmark' => 'call_simple',
55 'machine' => 'x86_64'
56 }
57 ]
58 , "very complicated dpath" );
59
601700ns$datacontent='';
61{
6222µs local $/;
63121µs116µs open F, "<", "t/bigdata2.dump" or die;
# spent 16µs making 1 call to main::CORE:open
64137µs131µs $datacontent = <F>;
# spent 31µs making 1 call to main::CORE:readline
65121µs17µs close F;
# spent 7µs making 1 call to main::CORE:close
66}
671286µseval $datacontent;
# spent 82µs executing statements in string eval
68112µs$data = $VAR1;
69
70113µs2305µs$res = $data ~~ dpath('/report');
# spent 200µs making 1 call to Data::DPath::__ANON__[lib/Data/DPath.pm:19] # spent 105µs making 1 call to Data::DPath::Path::op_match
7114µs1357µsis($res->[0]{reportgroup_testrun_id}, 30862, "simple dpath 2" );
# spent 357µs making 1 call to Test::More::is
72
73173µs22.76ms$res = $data ~~ dpath('//data//benchmark[ value eq "xcall_simple"]/../mean/..');
# spent 2.23ms making 1 call to Data::DPath::Path::op_match # spent 530µs making 1 call to Data::DPath::__ANON__[lib/Data/DPath.pm:19]
74146µs13.24mscmp_bag($res, [
# spent 3.24ms making 1 call to Test::Deep::cmp_bag
75 {
76 'glibc' => 'xglibc, 2.4',
77 'count' => 'x150',
78 'language_series' => 'xarch_barcelona',
79 'standard_deviation' => 'x0.0164822946672',
80 'language_binary' => 'x/opt/artemis/slbench/python/arch_barcelona/2.7/bin/python',
81 'release' => 'x2.6.30.10-105.2.23.fc11.x86_64',
82 'operating_system' => 'xLinux',
83 'hostname' => 'xfoo.dept.lhm.com',
84 'mean' => 'x0.592707689603',
85 'median' => 'x0.58355140686',
86 'architecture' => 'x64bit',
87 'number_CPUs' => 'x16',
88 'benchmark' => 'xcall_simple',
89 'machine' => 'xx86_64'
90 }
91 ]
92 , "dpath on complex blessed ARRAYs" );
 
# spent 18µs within Internals::SvREADONLY which was called 23 times, avg 791ns/call: # 23 times (18µs+0s) by constant::import at line 147 of constant.pm, avg 791ns/call
sub Internals::SvREADONLY; # xsub
# spent 133µs within UNIVERSAL::VERSION which was called 10 times, avg 13µs/call: # once (21µs+0s) by Test::Builder::Module::BEGIN@5 at line 5 of Test/Builder/Module.pm # once (16µs+0s) by Test::More::BEGIN@23 at line 23 of Test/More.pm # once (14µs+0s) by Data::OptList::BEGIN@11 at line 11 of Data/OptList.pm # once (13µs+0s) by Exception::Class::Base::BEGIN@9 at line 9 of Exception/Class/Base.pm # once (13µs+0s) by Exception::Class::Base::BEGIN@10 at line 10 of Exception/Class/Base.pm # once (13µs+0s) by Sub::Exporter::BEGIN@11 at line 11 of Sub/Exporter.pm # once (12µs+0s) by Exporter::Heavy::heavy_export at line 120 of Exporter/Heavy.pm # once (12µs+0s) by Data::DPath::Path::BEGIN@11 at line 11 of lib/Data/DPath/Path.pm # once (10µs+0s) by Sub::Exporter::BEGIN@12 at line 12 of Sub/Exporter.pm # once (9µs+0s) by Sub::Exporter::BEGIN@13 at line 13 of Sub/Exporter.pm
sub UNIVERSAL::VERSION; # xsub
# spent 68µs within UNIVERSAL::isa which was called 37 times, avg 2µs/call: # 18 times (42µs+0s) by base::import at line 74 of base.pm, avg 2µs/call # 16 times (22µs+0s) by Test::Deep::wrap at line 362 of Test/Deep.pm, avg 1µs/call # 3 times (4µs+0s) by Exception::Class::_make_subclass at line 152 of Exception/Class.pm, avg 2µs/call
sub UNIVERSAL::isa; # xsub
# spent 11µs within main::CORE:close which was called 2 times, avg 5µs/call: # once (7µs+0s) by main::RUNTIME at line 65 # once (4µs+0s) by main::RUNTIME at line 28
sub main::CORE:close; # opcode
# spent 30µs within main::CORE:open which was called 2 times, avg 15µs/call: # once (16µs+0s) by main::RUNTIME at line 63 # once (14µs+0s) by main::RUNTIME at line 26
sub main::CORE:open; # opcode
# spent 52µs within main::CORE:readline which was called 2 times, avg 26µs/call: # once (31µs+0s) by main::RUNTIME at line 64 # once (21µs+0s) by main::RUNTIME at line 27
sub main::CORE:readline; # opcode
# spent 7µs within mro::method_changed_in which was called 4 times, avg 2µs/call: # 4 times (7µs+0s) by constant::import at line 162 of constant.pm, avg 2µs/call
sub mro::method_changed_in; # xsub
# spent 13µs within version::(bool which was called: # once (13µs+0s) by Test::Builder::BEGIN@19 at line 57 of Config.pm
sub version::(bool; # xsub
# spent 6µs within version::(cmp which was called: # once (6µs+0s) by Test::Builder::BEGIN@19 at line 60 of Config.pm
sub version::(cmp; # xsub