Profile of HTTP/Headers/ActionPack/Core/BaseHeaderType.pm

← Index
NYTProf Performance Profile «line view»
For script/ponapi
Run on Wed Feb 10 15:51:26 2016
Reported on Thu Feb 11 09:43:12 2016

Filename | /usr/local/share/perl/5.18.2/HTTP/Headers/ActionPack/Core/BaseHeaderType.pm
Statements | Executed 1100025 statements in 5.17s

Subroutines
Calls | P | F | Exclusive Time | Inclusive Time | Subroutine
--- | --- | --- | --- | --- | ---
200002 | 2 | 1 | 3.64s | 6.38s | HTTP::Headers::ActionPack::Core::BaseHeaderType::::as_stringHTTP::Headers::ActionPack::Core::BaseHeaderType::as_string
100001 | 1 | 1 | 1.66s | 2.76s | HTTP::Headers::ActionPack::Core::BaseHeaderType::::BUILDARGSHTTP::Headers::ActionPack::Core::BaseHeaderType::BUILDARGS
300003 | 2 | 2 | 466ms | 466ms | HTTP::Headers::ActionPack::Core::BaseHeaderType::::subjectHTTP::Headers::ActionPack::Core::BaseHeaderType::subject
1 | 1 | 1 | 898µs | 14.5ms | HTTP::Headers::ActionPack::Core::BaseHeaderType::::BEGIN@15HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@15
1 | 1 | 1 | 71µs | 71µs | HTTP::Headers::ActionPack::Core::BaseHeaderType::::BEGIN@2HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@2
1 | 1 | 1 | 27µs | 196µs | HTTP::Headers::ActionPack::Core::BaseHeaderType::::BEGIN@13HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@13
1 | 1 | 1 | 27µs | 61µs | HTTP::Headers::ActionPack::Core::BaseHeaderType::::BEGIN@11HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@11
1 | 1 | 1 | 26µs | 104µs | HTTP::Headers::ActionPack::Core::BaseHeaderType::::BEGIN@10HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@10
1 | 1 | 1 | 10µs | 886µs | HTTP::Headers::ActionPack::Core::BaseHeaderType::::BEGIN@20HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@20
0 | 0 | 0 | 0s | 0s | HTTP::Headers::ActionPack::Core::BaseHeaderType::::new_from_stringHTTP::Headers::ActionPack::Core::BaseHeaderType::new_from_string

Call graph for these subroutines as a Graphviz dot language file.

Line | State ments | Time on line | Calls | Time in subs | Code
--- | --- | --- | --- | --- | ---
1 |  |  |  |  | package HTTP::Headers::ActionPack::Core::BaseHeaderType;
2 |  |  |  |  | # spent 71µs within HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@2 which was called: # once (71µs+0s) by parent::import at line 4 BEGIN {
3 | 1 | 42µs |  |  | $HTTP::Headers::ActionPack::Core::BaseHeaderType::AUTHORITY = 'cpan:STEVAN';
4 | 1 | 106µs | 1 | 71µs | } # spent 71µs making 1 call to HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@2
5 |  |  |  |  | {
6 | 2 | 800ns |  |  | $HTTP::Headers::ActionPack::Core::BaseHeaderType::VERSION = '0.09';
7 |  |  |  |  | }
8 |  |  |  |  | # ABSTRACT: A Base header type
9 |  |  |  |  |
10 | 2 | 64µs | 2 | 182µs | # spent 104µs (26+78) within HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@10 which was called: # once (26µs+78µs) by parent::import at line 10 use strict; # spent 104µs making 1 call to HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@10 # spent 78µs making 1 call to strict::import
11 | 2 | 91µs | 2 | 95µs | # spent 61µs (27+34) within HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@11 which was called: # once (27µs+34µs) by parent::import at line 11 use warnings; # spent 61µs making 1 call to HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@11 # spent 34µs making 1 call to warnings::import
12 |  |  |  |  |
13 | 2 | 109µs | 2 | 364µs | # spent 196µs (27+168) within HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@13 which was called: # once (27µs+168µs) by parent::import at line 13 use Carp qw[ confess ]; # spent 196µs making 1 call to HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@13 # spent 168µs making 1 call to Exporter::import
14 |  |  |  |  |
15 | 1 | 9µs | 1 | 208µs | # spent 14.5ms (898µs+13.6) within HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@15 which was called: # once (898µs+13.6ms) by parent::import at line 18 use HTTP::Headers::ActionPack::Util qw[ # spent 208µs making 1 call to Sub::Exporter::__ANON__[Sub/Exporter.pm:337]
16 |  |  |  |  | split_header_words
17 |  |  |  |  | join_header_words
18 | 1 | 398µs | 1 | 14.5ms | ]; # spent 14.5ms making 1 call to HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@15
19 |  |  |  |  |
20 | 2 | 132µs | 2 | 886µs | # spent 886µs (10+877) within HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@20 which was called: # once (10µs+877µs) by parent::import at line 20 use parent 'HTTP::Headers::ActionPack::Core::BaseHeaderWithParams'; # spent 886µs making 1 call to HTTP::Headers::ActionPack::Core::BaseHeaderType::BEGIN@20 # spent 877µs making 1 call to parent::import, recursion: max depth 1, sum of overlapping time 877µs
21 |  |  |  |  |
22 |  |  |  |  | # spent 2.76s (1.66+1.10) within HTTP::Headers::ActionPack::Core::BaseHeaderType::BUILDARGS which was called 100001 times, avg 28µs/call: # 100001 times (1.66s+1.10s) by HTTP::Headers::ActionPack::Core::Base::new at line 17 of HTTP/Headers/ActionPack/Core/Base.pm, avg 28µs/call sub BUILDARGS {
23 | 100001 | 57.7ms |  |  | my $class = shift;
24 | 100001 | 100ms |  |  | my ($subject, @params) = @_;
25 |  |  |  |  |
26 | 100001 | 50.9ms |  |  | confess "You must specify a subject" unless $subject;
27 |  |  |  |  |
28 |  |  |  |  | return +{
29 |  |  |  |  | subject => $subject,
30 | 100001 | 1.30s | 100001 | 1.10s | %{ $class->_prepare_params( @params ) } # spent 1.10s making 100001 calls to HTTP::Headers::ActionPack::Core::BaseHeaderWithParams::_prepare_params, avg 11µs/call
31 |  |  |  |  | };
32 |  |  |  |  | }
33 |  |  |  |  |
34 | 300003 | 1.64s |  |  | # spent 466ms within HTTP::Headers::ActionPack::Core::BaseHeaderType::subject which was called 300003 times, avg 2µs/call: # 200002 times (348ms+0s) by HTTP::Headers::ActionPack::Core::BaseHeaderType::as_string at line 43, avg 2µs/call # 100001 times (118ms+0s) by HTTP::Headers::ActionPack::MediaType::type at line 17 of HTTP/Headers/ActionPack/MediaType.pm, avg 1µs/call sub subject { (shift)->{'subject'} }
35 |  |  |  |  |
36 |  |  |  |  | sub new_from_string {
37 |  |  |  |  | my ($class, $header_string) = @_;
38 |  |  |  |  | $class->new( @{ (split_header_words( $header_string ))[0] } );
39 |  |  |  |  | }
40 |  |  |  |  |
41 |  |  |  |  | # spent 6.38s (3.64+2.74) within HTTP::Headers::ActionPack::Core::BaseHeaderType::as_string which was called 200002 times, avg 32µs/call: # 100001 times (2.01s+1.80s) by HTTP::Headers::ActionPack::PriorityList::add at line 53 of HTTP/Headers/ActionPack/PriorityList.pm, avg 38µs/call # 100001 times (1.63s+943ms) by HTTP::Headers::ActionPack::PriorityList::add at line 56 of HTTP/Headers/ActionPack/PriorityList.pm, avg 26µs/call sub as_string {
42 | 200002 | 78.8ms |  |  | my $self = shift;
43 | 200002 | 1.94s | 600006 | 2.74s | join_header_words( $self->subject, $self->params_in_order ); # spent 1.83s making 200002 calls to HTTP::Headers::ActionPack::Core::BaseHeaderWithParams::params_in_order, avg 9µs/call # spent 561ms making 200002 calls to HTTP::Headers::ActionPack::Util::join_header_words, avg 3µs/call # spent 348ms making 200002 calls to HTTP::Headers::ActionPack::Core::BaseHeaderType::subject, avg 2µs/call
44 |  |  |  |  | }
45 |  |  |  |  |
46 | 1 | 3µs |  |  | 1;
47 |  |  |  |  |
48 |  |  |  |  | __END__