Filename | /mnt/stuff/src/my-cpan/hailo/reply.pl |
Statements | Executed 30013 statements in 208ms |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
479512 | 1 | 1 | 31.8s | 31.8s | fetchall_arrayref (xsub) | DBI::st::
1374513 | 8 | 3 | 13.0s | 13.0s | execute (xsub) | DBI::st::
1 | 1 | 1 | 3.92s | 3.92s | sqlite_backup_to_file (xsub) | DBI::db::
864998 | 5 | 2 | 3.52s | 3.52s | fetchrow_array (xsub) | DBI::st::
1 | 1 | 1 | 379ms | 379ms | sqlite_backup_from_file (xsub) | DBI::db::
30000 | 1 | 1 | 143ms | 143ms | fetchrow_arrayref (xsub) | DBI::st::
64 | 4 | 3 | 11.4ms | 11.4ms | DESTROY (xsub) | DBI::common::
1 | 1 | 1 | 3.90ms | 3.95ms | BEGIN@4 | main::
1 | 1 | 1 | 2.16ms | 76.0ms | BEGIN@6 | main::
31 | 1 | 1 | 1.31ms | 1.31ms | _prepare (xsub) | DBD::SQLite::st::
1 | 1 | 1 | 1.22ms | 1.36ms | BEGIN@3 | main::
18 | 1 | 1 | 853µs | 1.16ms | _generate_accessor (xsub) | Mouse::Meta::Method::Accessor::XS::
18 | 1 | 1 | 812µs | 1.38ms | _generate_reader (xsub) | Mouse::Meta::Method::Accessor::XS::
1 | 1 | 1 | 626µs | 705µs | BEGIN@5.1 | main::
31 | 4 | 3 | 250µs | 3.22ms | prepare (xsub) | DBI::db::
8 | 8 | 5 | 103µs | 103µs | VERSION (xsub) | UNIVERSAL::
27 | 6 | 4 | 91µs | 91µs | can (xsub) | UNIVERSAL::
30 | 6 | 4 | 73µs | 73µs | isa (xsub) | UNIVERSAL::
9 | 1 | 1 | 64µs | 78µs | _generate_predicate (xsub) | Mouse::Meta::Method::Accessor::XS::
22 | 1 | 1 | 64µs | 64µs | SvREADONLY (xsub) | Internals::
32 | 4 | 3 | 61µs | 61µs | DESTROY (xsub) | DBD::_mem::common::
1 | 1 | 1 | 57µs | 762µs | BEGIN@5 | main::
1 | 1 | 1 | 55µs | 55µs | sqlite_register_fts3_perl_tokenizer (xsub) | DBI::db::
9 | 1 | 1 | 55µs | 68µs | _generate_clearer (xsub) | Mouse::Meta::Method::Accessor::XS::
10 | 3 | 2 | 36µs | 36µs | FETCH (xsub) | DBI::common::
8 | 3 | 1 | 32µs | 32µs | STORE (xsub) | DBI::common::
3 | 2 | 2 | 30µs | 959µs | do (xsub) | DBI::db::
1 | 1 | 1 | 15µs | 366µs | connect (xsub) | DBI::dr::
1 | 1 | 1 | 9µs | 9µs | CORE:binmode (opcode) | main::
3 | 1 | 1 | 9µs | 9µs | rows (xsub) | DBI::st::
1 | 1 | 1 | 9µs | 9µs | BEGIN@188 | Hailo::Tokenizer::Words::
5 | 1 | 1 | 9µs | 9µs | _generate_constructor (xsub) | Mouse::Meta::Method::Constructor::XS::
1 | 1 | 1 | 8µs | 8µs | disconnect_all (xsub) | DBI::dr::
5 | 1 | 1 | 7µs | 7µs | _generate_destructor (xsub) | Mouse::Meta::Method::Destructor::XS::
1 | 1 | 1 | 7µs | 7µs | sqlite_collation_needed (xsub) | DBI::db::
1 | 1 | 1 | 6µs | 6µs | (bool (xsub) | version::
1 | 1 | 1 | 6µs | 6µs | (cmp (xsub) | version::
1 | 1 | 1 | 5µs | 5µs | connected (xsub) | DBI::db::
1 | 1 | 1 | 4µs | 4µs | sqlite_create_function (xsub) | DBI::db::
0 | 0 | 0 | 0s | 0s | RUNTIME | main::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
0 | 89 | 7.85s | Profile data that couldn't be associated with a specific line: # spent 3.92s making 4 calls to Mouse::Object::DESTROY, avg 979ms/call
# spent 3.92s making 1 call to Hailo::DEMOLISH
# spent 11.4ms making 54 calls to DBI::common::DESTROY, avg 211µs/call
# spent 92µs making 1 call to DBI::END
# spent 50µs making 27 calls to DBD::_mem::common::DESTROY, avg 2µs/call
# spent 9µs making 1 call to Hailo::Tokenizer::Words::BEGIN@188
# spent 4µs making 1 call to Mouse::Util::END | ||
1 | 1 | 12.1ms | #!/usr/bin/env perl | ||
2 | |||||
3 | 2 | 1.11ms | 2 | 1.38ms | # spent 1.36ms (1.22+143µs) within main::BEGIN@3 which was called:
# once (1.22ms+143µs) by main::RUNTIME at line 3 # spent 1.36ms making 1 call to main::BEGIN@3
# spent 18µs making 1 call to strict::import |
4 | 2 | 3.79ms | 2 | 3.97ms | # spent 3.95ms (3.90+47µs) within main::BEGIN@4 which was called:
# once (3.90ms+47µs) by main::RUNTIME at line 4 # spent 3.95ms making 1 call to main::BEGIN@4
# spent 25µs making 1 call to warnings::import |
5 | 4 | 653µs | 3 | 1.55ms | use 5.010; # spent 762µs making 1 call to main::BEGIN@5
# spent 705µs making 1 call to main::BEGIN@5.1
# spent 79µs making 1 call to feature::import |
6 | 2 | 399µs | 1 | 76.0ms | # spent 76.0ms (2.16+73.9) within main::BEGIN@6 which was called:
# once (2.16ms+73.9ms) by main::RUNTIME at line 6 # spent 76.0ms making 1 call to main::BEGIN@6 |
7 | 1 | 16µs | 1 | 9µs | binmode *STDOUT, ':utf8'; # spent 9µs making 1 call to main::CORE:binmode |
8 | |||||
9 | 1 | 235µs | 34 | 798µs | my $h = Hailo->new( # spent 488µs making 1 call to Mouse::Object::new
# spent 224µs making 1 call to Mouse::Meta::Class::_calculate_all_attributes
# spent 20µs making 13 calls to Mouse::Meta::TypeConstraint::_compiled_type_constraint, avg 2µs/call
# spent 18µs making 1 call to Hailo::__ANON__[Hailo.pm:71]
# spent 16µs making 1 call to Mouse::Meta::Class::is_anon_class
# spent 15µs making 11 calls to Mouse::Meta::Attribute::default, avg 1µs/call
# spent 11µs making 3 calls to Hailo::__ANON__[Hailo.pm:117], avg 4µs/call
# spent 2µs making 1 call to Mouse::Meta::Class::strict_constructor
# spent 2µs making 1 call to Mouse::Meta::Class::is_immutable
# spent 1µs making 1 call to Mouse::Meta::Attribute::trigger |
10 | brain_resource => 'bench.sqlite', | ||||
11 | storage_args => { | ||||
12 | in_memory => 1, | ||||
13 | }, | ||||
14 | ); | ||||
15 | |||||
16 | 1 | 29µs | for (1..30000) { | ||
17 | 30000 | 190ms | 30000 | 132s | $h->reply(); # spent 132s making 30000 calls to Hailo::reply, avg 4.40ms/call |
18 | } | ||||
19 | |||||
- - | |||||
# spent 1.31ms within DBD::SQLite::st::_prepare which was called 31 times, avg 42µs/call:
# 31 times (1.31ms+0s) by DBD::SQLite::db::prepare at line 180 of DBD/SQLite.pm, avg 42µs/call | |||||
# spent 61µs within DBD::_mem::common::DESTROY which was called 32 times, avg 2µs/call:
# 27 times (50µs+0s) by main::NULL at line 0, avg 2µs/call
# 3 times (6µs+0s) by DBD::SQLite::db::do at line 191 of DBD/SQLite.pm, avg 2µs/call
# once (2µs+0s) by Hailo::Storage::_engage_initialized_check_and_set_order at line 105 of Hailo/Storage.pm
# once (2µs+0s) by Hailo::Storage::_engage_initialized_check_and_set_tokenizer at line 108 of Hailo/Storage.pm | |||||
# spent 11.4ms within DBI::common::DESTROY which was called 64 times, avg 179µs/call:
# 54 times (11.4ms+0s) by main::NULL at line 0, avg 211µs/call
# 6 times (21µs+0s) by DBD::SQLite::db::do at line 191 of DBD/SQLite.pm, avg 3µs/call
# 2 times (8µs+0s) by Hailo::Storage::_engage_initialized_check_and_set_tokenizer at line 108 of Hailo/Storage.pm, avg 4µs/call
# 2 times (7µs+0s) by Hailo::Storage::_engage_initialized_check_and_set_order at line 105 of Hailo/Storage.pm, avg 4µs/call | |||||
# spent 36µs within DBI::common::FETCH which was called 10 times, avg 4µs/call:
# 4 times (13µs+0s) by DBI::__ANON__[/home/hinrik/perl5/perlbrew/perls/perl-5.13.5/lib/site_perl/5.13.5/x86_64-linux/DBI.pm:731] at line 720 of DBI.pm, avg 3µs/call
# 3 times (14µs+0s) by DBD::SQLite::db::do at line 193 of DBD/SQLite.pm, avg 5µs/call
# 3 times (9µs+0s) by DBD::SQLite::db::do at line 196 of DBD/SQLite.pm, avg 3µs/call | |||||
# spent 32µs within DBI::common::STORE which was called 8 times, avg 4µs/call:
# 4 times (13µs+0s) by DBI::__ANON__[/home/hinrik/perl5/perlbrew/perls/perl-5.13.5/lib/site_perl/5.13.5/x86_64-linux/DBI.pm:731] at line 720 of DBI.pm, avg 3µs/call
# 3 times (14µs+0s) by DBI::__ANON__[/home/hinrik/perl5/perlbrew/perls/perl-5.13.5/lib/site_perl/5.13.5/x86_64-linux/DBI.pm:731] at line 717 of DBI.pm, avg 5µs/call
# once (5µs+0s) by DBI::connect at line 735 of DBI.pm | |||||
# spent 5µs within DBI::db::connected which was called:
# once (5µs+0s) by DBI::__ANON__[/home/hinrik/perl5/perlbrew/perls/perl-5.13.5/lib/site_perl/5.13.5/x86_64-linux/DBI.pm:731] at line 726 of DBI.pm | |||||
# spent 959µs (30+928) within DBI::db::do which was called 3 times, avg 320µs/call:
# 2 times (13µs+357µs) by Hailo::Storage::SQLite::_set_pragmas at line 115 of Hailo/Storage/SQLite.pm, avg 185µs/call
# once (17µs+572µs) by Hailo::Storage::initialized at line 248 of Hailo/Storage.pm | |||||
# spent 3.22ms (250µs+2.97) within DBI::db::prepare which was called 31 times, avg 104µs/call:
# 26 times (203µs+2.15ms) by Hailo::Storage::Schema::sth at line 158 of Hailo/Storage/Schema.pm, avg 91µs/call
# 3 times (27µs+646µs) by DBD::SQLite::db::do at line 192 of DBD/SQLite.pm, avg 224µs/call
# once (11µs+89µs) by Hailo::Storage::_engage_initialized_check_and_set_order at line 143 of Hailo/Storage.pm
# once (10µs+82µs) by Hailo::Storage::_engage_initialized_check_and_set_tokenizer at line 174 of Hailo/Storage.pm | |||||
# spent 379ms within DBI::db::sqlite_backup_from_file which was called:
# once (379ms+0s) by Hailo::Storage::SQLite::__ANON__[/home/hinrik/perl5/perlbrew/perls/perl-5.13.5/lib/site_perl/5.13.5/Hailo/Storage/SQLite.pm:65] at line 60 of Hailo/Storage/SQLite.pm | |||||
# spent 3.92s within DBI::db::sqlite_backup_to_file which was called:
# once (3.92s+0s) by Hailo::Storage::SQLite::save at line 127 of Hailo/Storage/SQLite.pm | |||||
# spent 7µs within DBI::db::sqlite_collation_needed which was called:
# once (7µs+0s) by DBD::SQLite::dr::connect at line 128 of DBD/SQLite.pm | |||||
# spent 4µs within DBI::db::sqlite_create_function which was called:
# once (4µs+0s) by DBD::SQLite::dr::connect at line 129 of DBD/SQLite.pm | |||||
# spent 55µs within DBI::db::sqlite_register_fts3_perl_tokenizer which was called:
# once (55µs+0s) by DBD::SQLite::dr::connect at line 130 of DBD/SQLite.pm | |||||
# spent 366µs (15+351) within DBI::dr::connect which was called:
# once (15µs+351µs) by DBI::__ANON__[/home/hinrik/perl5/perlbrew/perls/perl-5.13.5/lib/site_perl/5.13.5/x86_64-linux/DBI.pm:731] at line 665 of DBI.pm | |||||
# spent 8µs within DBI::dr::disconnect_all which was called:
# once (8µs+0s) by DBI::disconnect_all at line 743 of DBI.pm | |||||
# spent 13.0s within DBI::st::execute which was called 1374513 times, avg 9µs/call:
# 479512 times (5.11s+0s) by Hailo::Engine::Default::_pos_token at line 264 of Hailo/Engine/Default.pm, avg 11µs/call
# 445416 times (3.24s+0s) by Hailo::Engine::Default::_token_info at line 96 of Hailo/Engine/Default.pm, avg 7µs/call
# 419579 times (4.19s+0s) by Hailo::Engine::Default::_expr_id at line 196 of Hailo/Engine/Default.pm, avg 10µs/call
# 30000 times (406ms+0s) by Hailo::Engine::Default::_random_expr at line 241 of Hailo/Engine/Default.pm, avg 14µs/call
# 3 times (24µs+0s) by DBD::SQLite::db::do at line 193 of DBD/SQLite.pm, avg 8µs/call
# once (24µs+0s) by Hailo::Storage::_engage at line 110 of Hailo/Storage.pm
# once (24µs+0s) by Hailo::Storage::_engage_initialized_check_and_set_order at line 144 of Hailo/Storage.pm
# once (15µs+0s) by Hailo::Storage::_engage_initialized_check_and_set_tokenizer at line 175 of Hailo/Storage.pm | |||||
# spent 31.8s within DBI::st::fetchall_arrayref which was called 479512 times, avg 66µs/call:
# 479512 times (31.8s+0s) by Hailo::Engine::Default::_pos_token at line 265 of Hailo/Engine/Default.pm, avg 66µs/call | |||||
# spent 3.52s within DBI::st::fetchrow_array which was called 864998 times, avg 4µs/call:
# 445416 times (1.71s+0s) by Hailo::Engine::Default::_token_info at line 97 of Hailo/Engine/Default.pm, avg 4µs/call
# 419579 times (1.81s+0s) by Hailo::Engine::Default::_expr_id at line 197 of Hailo/Engine/Default.pm, avg 4µs/call
# once (19µs+0s) by Hailo::Storage::_engage_initialized_check_and_set_order at line 145 of Hailo/Storage.pm
# once (11µs+0s) by Hailo::Storage::_engage at line 111 of Hailo/Storage.pm
# once (8µs+0s) by Hailo::Storage::_engage_initialized_check_and_set_tokenizer at line 176 of Hailo/Storage.pm | |||||
# spent 143ms within DBI::st::fetchrow_arrayref which was called 30000 times, avg 5µs/call:
# 30000 times (143ms+0s) by Hailo::Engine::Default::_random_expr at line 242 of Hailo/Engine/Default.pm, avg 5µs/call | |||||
# spent 9µs within DBI::st::rows which was called 3 times, avg 3µs/call:
# 3 times (9µs+0s) by DBD::SQLite::db::do at line 194 of DBD/SQLite.pm, avg 3µs/call | |||||
# spent 64µs within Internals::SvREADONLY which was called 22 times, avg 3µs/call:
# 22 times (64µs+0s) by constant::import at line 126 of constant.pm, avg 3µs/call | |||||
# spent 1.16ms (853µs+306µs) within Mouse::Meta::Method::Accessor::XS::_generate_accessor which was called 18 times, avg 64µs/call:
# 18 times (853µs+306µs) by Mouse::Meta::Attribute::install_accessors at line 257 of Mouse/Meta/Attribute.pm, avg 64µs/call | |||||
# spent 68µs (55+13) within Mouse::Meta::Method::Accessor::XS::_generate_clearer which was called 9 times, avg 8µs/call:
# 9 times (55µs+13µs) by Mouse::Meta::Attribute::install_accessors at line 257 of Mouse/Meta/Attribute.pm, avg 8µs/call | |||||
# spent 78µs (64+13) within Mouse::Meta::Method::Accessor::XS::_generate_predicate which was called 9 times, avg 9µs/call:
# 9 times (64µs+13µs) by Mouse::Meta::Attribute::install_accessors at line 257 of Mouse/Meta/Attribute.pm, avg 9µs/call | |||||
# spent 1.38ms (812µs+569µs) within Mouse::Meta::Method::Accessor::XS::_generate_reader which was called 18 times, avg 77µs/call:
# 18 times (812µs+569µs) by Mouse::Meta::Attribute::install_accessors at line 257 of Mouse/Meta/Attribute.pm, avg 77µs/call | |||||
# spent 9µs within Mouse::Meta::Method::Constructor::XS::_generate_constructor which was called 5 times, avg 2µs/call:
# 5 times (9µs+0s) by Mouse::Meta::Class::make_immutable at line 290 of Mouse/Meta/Class.pm, avg 2µs/call | |||||
# spent 7µs within Mouse::Meta::Method::Destructor::XS::_generate_destructor which was called 5 times, avg 1µs/call:
# 5 times (7µs+0s) by Mouse::Meta::Class::make_immutable at line 296 of Mouse/Meta/Class.pm, avg 1µs/call | |||||
# spent 103µs within UNIVERSAL::VERSION which was called 8 times, avg 13µs/call:
# once (16µs+0s) by namespace::clean::BEGIN@17 at line 17 of namespace/clean.pm
# once (15µs+0s) by B::Hooks::EndOfScope::BEGIN@14 at line 14 of B/Hooks/EndOfScope.pm
# once (13µs+0s) by Data::OptList::BEGIN@8 at line 8 of Data/OptList.pm
# once (13µs+0s) by namespace::clean::BEGIN@14 at line 14 of namespace/clean.pm
# once (12µs+0s) by namespace::clean::BEGIN@16 at line 16 of namespace/clean.pm
# once (12µs+0s) by namespace::clean::BEGIN@15 at line 15 of namespace/clean.pm
# once (11µs+0s) by Sub::Exporter::BEGIN@9 at line 9 of Sub/Exporter.pm
# once (11µs+0s) by DBD::SQLite::BEGIN@5 at line 5 of DBD/SQLite.pm | |||||
# spent 91µs within UNIVERSAL::can which was called 27 times, avg 3µs/call:
# 10 times (36µs+0s) by Mouse::Meta::Role::Application::check_required_methods at line 99 of Mouse/Meta/Role/Application.pm, avg 4µs/call
# 5 times (17µs+0s) by Mouse::Exporter::build_import_methods at line 108 of Mouse/Exporter.pm, avg 3µs/call
# 5 times (14µs+0s) by Mouse::Meta::Class::verify_superclass at line 82 of Mouse/Meta/Class.pm, avg 3µs/call
# 4 times (14µs+0s) by Mouse::Meta::Class::_install_modifier at line 320 of Mouse/Meta/Class.pm, avg 3µs/call
# 2 times (7µs+0s) by Mouse::Meta::Class::add_override_method_modifier at line 409 of Mouse/Meta/Class.pm, avg 3µs/call
# once (3µs+0s) by Sub::Exporter::default_generator at line 848 of Sub/Exporter.pm | |||||
# spent 73µs within UNIVERSAL::isa which was called 30 times, avg 2µs/call:
# 9 times (23µs+0s) by DBI::setup_driver at line 838 of DBI.pm, avg 3µs/call
# 9 times (19µs+0s) by DBI::setup_driver at line 841 of DBI.pm, avg 2µs/call
# 4 times (13µs+0s) by Any::Moose::_backer_of at line 105 of Any/Moose.pm, avg 3µs/call
# 4 times (6µs+0s) by Any::Moose::_backer_of at line 106 of Any/Moose.pm, avg 2µs/call
# 3 times (8µs+0s) by base::import at line 81 of base.pm, avg 3µs/call
# once (2µs+0s) by Mouse::Meta::Class::verify_superclass at line 91 of Mouse/Meta/Class.pm | |||||
# spent 9µs within main::CORE:binmode which was called:
# once (9µs+0s) by main::RUNTIME at line 7 | |||||
# spent 6µs within version::(bool which was called:
# once (6µs+0s) by Tie::RefHash::BEGIN@99 at line 50 of Config.pm | |||||
# spent 6µs within version::(cmp which was called:
# once (6µs+0s) by Tie::RefHash::BEGIN@99 at line 53 of Config.pm |