← Index
NYTProf Performance Profile   « block view • line view • sub view »
For bin/pan_genome_post_analysis
  Run on Fri Mar 27 11:43:32 2015
Reported on Fri Mar 27 11:45:48 2015

Filename/Users/ap13/pathogens/Roary/lib/Bio/Roary/ParseGFFAnnotationRole.pm
StatementsExecuted 57 statements in 594µs
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
1622364µs1.10msBio::Roary::ParseGFFAnnotationRole::::_gff_fh_input_stringBio::Roary::ParseGFFAnnotationRole::_gff_fh_input_string
81186µs118µsBio::Roary::ParseGFFAnnotationRole::::_build__awk_filterBio::Roary::ParseGFFAnnotationRole::_build__awk_filter
11132µs3.12msBio::Roary::ParseGFFAnnotationRole::::BEGIN@10Bio::Roary::ParseGFFAnnotationRole::BEGIN@10
1117µs7µsBio::Roary::ParseGFFAnnotationRole::::BEGIN@11Bio::Roary::ParseGFFAnnotationRole::BEGIN@11
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package Bio::Roary::ParseGFFAnnotationRole;
2
3# ABSTRACT: A role for parsing a gff file efficiently
4
5=head1 SYNOPSIS
6
7with 'Bio::Roary::ParseGFFAnnotationRole';
8
9=cut
10238µs26.21ms
# spent 3.12ms (32µs+3.09) within Bio::Roary::ParseGFFAnnotationRole::BEGIN@10 which was called: # once (32µs+3.09ms) by Module::Runtime::require_module at line 10
use Moose::Role;
# spent 3.12ms making 1 call to Bio::Roary::ParseGFFAnnotationRole::BEGIN@10 # spent 3.09ms making 1 call to Moose::Role::import
112143µs17µs
# spent 7µs within Bio::Roary::ParseGFFAnnotationRole::BEGIN@11 which was called: # once (7µs+0s) by Module::Runtime::require_module at line 11
use Bio::Tools::GFF;
# spent 7µs making 1 call to Bio::Roary::ParseGFFAnnotationRole::BEGIN@11
12
1312µs1159µshas 'gff_file' => ( is => 'ro', isa => 'Str', required => 1 );
# spent 159µs making 1 call to Moose::Role::has
14
1511µs1104µshas '_tags_to_filter' => ( is => 'ro', isa => 'Str', default => '(CDS|ncRNA|tRNA|tmRNA)' );
# spent 104µs making 1 call to Moose::Role::has
1612µs192µshas '_gff_parser' => ( is => 'ro', isa => 'Bio::Tools::GFF', lazy => 1, builder => '_build__gff_parser' );
# spent 92µs making 1 call to Moose::Role::has
1711µs191µshas '_awk_filter' => ( is => 'ro', isa => 'Str', lazy => 1, builder => '_build__awk_filter' );
# spent 91µs making 1 call to Moose::Role::has
18
19
# spent 1.10ms (364µs+732µs) within Bio::Roary::ParseGFFAnnotationRole::_gff_fh_input_string which was called 16 times, avg 68µs/call: # 8 times (224µs+365µs) by Bio::Roary::ContigsToGeneIDsFromGFF::_build_contig_to_ids at line 35 of lib/Bio/Roary/ContigsToGeneIDsFromGFF.pm, avg 74µs/call # 8 times (140µs+367µs) by Bio::Roary::GeneNamesFromGFF::_build_ids_to_gene_name at line 30 of lib/Bio/Roary/GeneNamesFromGFF.pm, avg 63µs/call
sub _gff_fh_input_string {
2032334µs my ($self) = @_;
2132732µs return 'sed -n \'/##gff-version 3/,/##FASTA/p\' '.$self->gff_file.'| grep -v \'##FASTA\''." | " . $self->_awk_filter;
# spent 283µs making 8 calls to Bio::Roary::ContigsToGeneIDsFromGFF::_awk_filter, avg 35µs/call # spent 282µs making 8 calls to Bio::Roary::GeneNamesFromGFF::_awk_filter, avg 35µs/call # spent 85µs making 8 calls to Bio::Roary::GeneNamesFromGFF::gff_file, avg 11µs/call # spent 82µs making 8 calls to Bio::Roary::ContigsToGeneIDsFromGFF::gff_file, avg 10µs/call
22}
23
24
# spent 118µs (86+32) within Bio::Roary::ParseGFFAnnotationRole::_build__awk_filter which was called 8 times, avg 15µs/call: # 8 times (86µs+32µs) by Bio::Roary::GeneNamesFromGFF::_awk_filter at line 12 of (eval 25)[Eval/Closure.pm:125], avg 15µs/call
sub _build__awk_filter {
251659µs my ($self) = @_;
26 return
27832µs 'awk \'BEGIN {FS="\t"};{ if ($3 ~/'
# spent 32µs making 8 calls to Bio::Roary::GeneNamesFromGFF::_tags_to_filter, avg 4µs/call
28 . $self->_tags_to_filter
29 . '/) print $9;}\' ';
30}
31
32113µs1;