Profile of parent.pm

← Index
NYTProf Performance Profile «block view•line view•sub view»
For xt/tapper-mcp-scheduler-with-db-longrun.t
Run on Tue May 22 17:18:39 2012
Reported on Tue May 22 17:23:43 2012

Filename | /2home/ss5/perl5/perlbrew/perls/perl-5.12.3/lib/5.12.3/parent.pm
Statements | Executed 440 statements in 2.47ms

Subroutines
Calls | P | F | Exclusive Time | Inclusive Time | Subroutine
--- | --- | --- | --- | --- | ---
47 | 47 | 47 | 6.73ms | 20.2ms | parent::::importparent::import (recurses: max depth 1, inclusive time 46µs)
49 | 1 | 1 | 290µs | 290µs | parent::::CORE:substparent::CORE:subst (opcode)
1 | 1 | 1 | 17µs | 21µs | parent::::BEGIN@2parent::BEGIN@2
1 | 1 | 1 | 8µs | 31µs | parent::::BEGIN@3parent::BEGIN@3
1 | 1 | 1 | 7µs | 22µs | parent::::BEGIN@25parent::BEGIN@25

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

Line | State ments | Time on line | Calls | Time in subs | Code
--- | --- | --- | --- | --- | ---
1 |  |  |  |  | package parent;
2 | 3 | 23µs | 2 | 26µs | # spent 21µs (17+5) within parent::BEGIN@2 which was called: # once (17µs+5µs) by Tapper::Model::BEGIN@26 at line 2 use strict; # spent 21µs making 1 call to parent::BEGIN@2 # spent 5µs making 1 call to strict::import
3 | 3 | 132µs | 2 | 54µs | # spent 31µs (8+23) within parent::BEGIN@3 which was called: # once (8µs+23µs) by Tapper::Model::BEGIN@26 at line 3 use vars qw($VERSION); # spent 31µs making 1 call to parent::BEGIN@3 # spent 23µs making 1 call to vars::import
4 | 1 | 400ns |  |  | $VERSION = '0.225';
5 |  |  |  |  |
6 |  |  |  |  | # spent 20.2ms (6.73+13.5) within parent::import which was called 47 times, avg 431µs/call: # once (842µs+9.69ms) by Tapper::Schema::TestrunDB::Result::TestrunScheduling::BEGIN@15 at line 15 of Tapper/Schema/TestrunDB/Result/TestrunScheduling.pm # once (3.70ms+3.14ms) by Tapper::Schema::TestrunDB::BEGIN@24 at line 24 of Tapper/Schema/TestrunDB.pm # once (727µs+451µs) by DateTime::TimeZone::Floating::BEGIN@9 at line 9 of DateTime/TimeZone/Floating.pm # once (55µs+6µs) by Tapper::Schema::TestrunDB::Result::HostFeature::BEGIN@13 at line 13 of Tapper/Schema/TestrunDB/Result/HostFeature.pm # once (55µs+7µs) by Tapper::Schema::ReportsDB::Result::View010TestrunOverviewReports::BEGIN@14 at line 14 of Tapper/Schema/ReportsDB/Result/View010TestrunOverviewReports.pm # once (54µs+5µs) by Tapper::Schema::ReportsDB::Result::Suite::BEGIN@12 at line 12 of Tapper/Schema/ReportsDB/Result/Suite.pm # once (51µs+7µs) by Tapper::Schema::ReportsDB::Result::View020TestrunOverview::BEGIN@14 at line 14 of Tapper/Schema/ReportsDB/Result/View020TestrunOverview.pm # once (51µs+6µs) by Tapper::Schema::ReportsDB::Result::Tap::BEGIN@13 at line 13 of Tapper/Schema/ReportsDB/Result/Tap.pm # once (44µs+10µs) by Tapper::Schema::TestrunDB::ResultSet::Testrun::BEGIN@15 at line 15 of Tapper/Schema/TestrunDB/ResultSet/Testrun.pm # once (48µs+6µs) by Tapper::Schema::ReportsDB::Result::Notification::BEGIN@12 at line 12 of Tapper/Schema/ReportsDB/Result/Notification.pm # once (34µs+8µs) by Tapper::Schema::TestrunDB::ResultSet::Precondition::BEGIN@12 at line 12 of Tapper/Schema/TestrunDB/ResultSet/Precondition.pm # once (35µs+6µs) by Tapper::Schema::TestrunDB::Result::TestrunRequestedFeature::BEGIN@12 at line 12 of Tapper/Schema/TestrunDB/Result/TestrunRequestedFeature.pm # once (33µs+7µs) by Tapper::Schema::ReportsDB::Result::ReportgroupArbitrary::BEGIN@12 at line 12 of Tapper/Schema/ReportsDB/Result/ReportgroupArbitrary.pm # once (33µs+7µs) by Tapper::Schema::ReportsDB::Result::NotificationEvent::BEGIN@12 at line 12 of Tapper/Schema/ReportsDB/Result/NotificationEvent.pm # once (32µs+7µs) by Tapper::Schema::TestrunDB::Result::Message::BEGIN@12 at line 12 of Tapper/Schema/TestrunDB/Result/Message.pm # once (33µs+6µs) by Tapper::Schema::ReportsDB::Result::ReportgroupTestrun::BEGIN@13 at line 13 of Tapper/Schema/ReportsDB/Result/ReportgroupTestrun.pm # once (33µs+6µs) by Tapper::Schema::TestrunDB::Result::TestrunRequestedHost::BEGIN@12 at line 12 of Tapper/Schema/TestrunDB/Result/TestrunRequestedHost.pm # once (33µs+6µs) by Tapper::Schema::ReportsDB::Result::ReportTopic::BEGIN@12 at line 12 of Tapper/Schema/ReportsDB/Result/ReportTopic.pm # once (31µs+8µs) by Tapper::Schema::ReportsDB::Result::ReportSection::BEGIN@12 at line 12 of Tapper/Schema/ReportsDB/Result/ReportSection.pm # once (33µs+6µs) by Tapper::Schema::ReportsDB::Result::Contact::BEGIN@12 at line 12 of Tapper/Schema/ReportsDB/Result/Contact.pm # once (32µs+6µs) by Tapper::Schema::TestrunDB::Result::Testrun::BEGIN@13 at line 13 of Tapper/Schema/TestrunDB/Result/Testrun.pm # once (32µs+6µs) by Tapper::Schema::ReportsDB::Result::ReportComment::BEGIN@12 at line 12 of Tapper/Schema/ReportsDB/Result/ReportComment.pm # once (32µs+6µs) by Tapper::Schema::ReportsDB::Result::Report::BEGIN@13 at line 13 of Tapper/Schema/ReportsDB/Result/Report.pm # once (31µs+7µs) by Tapper::Schema::ReportsDB::ResultSet::ReportgroupTestrun::BEGIN@12 at line 12 of Tapper/Schema/ReportsDB/ResultSet/ReportgroupTestrun.pm # once (32µs+6µs) by Tapper::Schema::TestrunDB::Result::State::BEGIN@12 at line 12 of Tapper/Schema/TestrunDB/Result/State.pm # once (31µs+7µs) by Tapper::Schema::TestrunDB::Result::TestrunPrecondition::BEGIN@12 at line 12 of Tapper/Schema/TestrunDB/Result/TestrunPrecondition.pm # once (32µs+5µs) by Tapper::Schema::ReportsDB::Result::ReportFile::BEGIN@12 at line 12 of Tapper/Schema/ReportsDB/Result/ReportFile.pm # once (30µs+7µs) by Tapper::Schema::ReportsDB::BEGIN@25 at line 25 of Tapper/Schema/ReportsDB.pm # once (31µs+6µs) by Tapper::Schema::TestrunDB::Result::Precondition::BEGIN@12 at line 12 of Tapper/Schema/TestrunDB/Result/Precondition.pm # once (32µs+5µs) by Tapper::Schema::TestrunDB::Result::PrePrecondition::BEGIN@12 at line 12 of Tapper/Schema/TestrunDB/Result/PrePrecondition.pm # once (31µs+6µs) by Tapper::Schema::ReportsDB::Result::User::BEGIN@12 at line 12 of Tapper/Schema/ReportsDB/Result/User.pm # once (31µs+5µs) by Tapper::Schema::TestrunDB::Result::Host::BEGIN@13 at line 13 of Tapper/Schema/TestrunDB/Result/Host.pm # once (31µs+5µs) by Tapper::Schema::TestrunDB::Result::Scenario::BEGIN@13 at line 13 of Tapper/Schema/TestrunDB/Result/Scenario.pm # once (30µs+5µs) by Tapper::Schema::TestrunDB::Result::TestplanInstance::BEGIN@12 at line 12 of Tapper/Schema/TestrunDB/Result/TestplanInstance.pm # once (29µs+6µs) by Tapper::Schema::ReportsDB::Result::ReportgroupTestrunStats::BEGIN@13 at line 13 of Tapper/Schema/ReportsDB/Result/ReportgroupTestrunStats.pm # once (30µs+5µs) by Tapper::Schema::TestrunDB::Result::ScenarioElement::BEGIN@13 at line 13 of Tapper/Schema/TestrunDB/Result/ScenarioElement.pm # once (29µs+6µs) by Tapper::Schema::TestrunDB::ResultSet::Host::BEGIN@13 at line 13 of Tapper/Schema/TestrunDB/ResultSet/Host.pm # once (29µs+6µs) by Tapper::Schema::TestrunDB::Result::User::BEGIN@12 at line 12 of Tapper/Schema/TestrunDB/Result/User.pm # once (29µs+6µs) by Tapper::Schema::TestrunDB::Result::Topic::BEGIN@25 at line 25 of Tapper/Schema/TestrunDB/Result/Topic.pm # once (28µs+7µs) by Tapper::Schema::TestrunDB::Result::Queue::BEGIN@12 at line 12 of Tapper/Schema/TestrunDB/Result/Queue.pm # once (26µs+6µs) by Tapper::Schema::TestrunDB::Result::Preconditiontype::BEGIN@25 at line 25 of Tapper/Schema/TestrunDB/Result/Preconditiontype.pm # once (24µs+6µs) by Tapper::Schema::TestrunDB::Result::QueueHost::BEGIN@12 at line 12 of Tapper/Schema/TestrunDB/Result/QueueHost.pm # once (23µs+5µs) by Tapper::Schema::TestrunDB::ResultSet::TestrunScheduling::BEGIN@13 at line 13 of Tapper/Schema/TestrunDB/ResultSet/TestrunScheduling.pm # once (27µs+1µs) by Tapper::Model::BEGIN@26 at line 26 of Tapper/Model.pm # once (18µs+4µs) by Tapper::Schema::TestrunDB::ResultSet::Queue::BEGIN@13 at line 13 of Tapper/Schema/TestrunDB/ResultSet/Queue.pm # once (22µs+-22µs) by DateTime::TimeZone::OffsetOnly::BEGIN@9 at line 9 of DateTime/TimeZone/OffsetOnly.pm # once (17µs+-17µs) by DateTime::TimeZone::UTC::BEGIN@9 at line 9 of DateTime/TimeZone/UTC.pm sub import {
7 | 47 | 52µs |  |  | my $class = shift;
8 |  |  |  |  |
9 | 47 | 73µs |  |  | my $inheritor = caller(0);
10 |  |  |  |  |
11 | 47 | 64µs |  |  | if ( @_ and $_[0] eq '-norequire' ) {
12 |  |  |  |  | shift @_;
13 |  |  |  |  | } else {
14 | 47 | 138µs |  |  | for ( my @filename = @_ ) {
15 | 49 | 26µs |  |  | if ( $_ eq $inheritor ) {
16 |  |  |  |  | warn "Class '$inheritor' tried to inherit from itself\n";
17 |  |  |  |  | };
18 |  |  |  |  |
19 | 49 | 448µs | 49 | 290µs | s{::|'}{/}g; # spent 290µs making 49 calls to parent::CORE:subst, avg 6µs/call
20 | 49 | 401µs |  |  | require "$_.pm"; # dies if the file is not found
21 |  |  |  |  | }
22 |  |  |  |  | }
23 |  |  |  |  |
24 |  |  |  |  | {
25 | 50 | 257µs | 2 | 36µs | # spent 22µs (7+15) within parent::BEGIN@25 which was called: # once (7µs+15µs) by Tapper::Model::BEGIN@26 at line 25 no strict 'refs'; # spent 22µs making 1 call to parent::BEGIN@25 # spent 15µs making 1 call to strict::unimport
26 | 47 | 853µs |  |  | push @{"$inheritor\::ISA"}, @_;
27 |  |  |  |  | };
28 |  |  |  |  | };
29 |  |  |  |  |
30 | 1 | 2µs |  |  | "All your base are belong to us"
31 |  |  |  |  |
32 |  |  |  |  | __END__
|  |  |  |  | # spent 290µs within parent::CORE:subst which was called 49 times, avg 6µs/call: # 49 times (290µs+0s) by parent::import at line 19, avg 6µs/call sub parent::CORE:subst; # opcode