Olly Betts <olly at survex.com> wrote:> On Fri, Aug 21, 2020 at 09:06:59AM +0000, Eric Wong wrote:
> > Going back to the "prioritizing aggregated DBs" thread from
> > February 2020, I've got 390 Xapian shards for 130 public inboxes
> > I want to search against(*). There's more on the horizon
(we're
> > expecting tens of thousands of public inboxes).
>
> Was that "(*)" meant to have a matching footnote?
Oops, yes, it's a mirror of all the inboxes on https://lore.kernel.org/
> > After bumping RLIMIT_NOFILE and running ->add_database a bunch,
> > the actual queries seem to be taking ~30s (not good :x).
> >
> > Now I'm thinking, MultiDatabase isn't the right way to go
about
> > this...
>
> I'm not aware of anyone who's tried to use that many shards before,
so
> it might be you're just hitting something easy to address. Anything to
> do with shards should be at worst O(n) in the number of shards (and
it's
> often O(1)), but perhaps there's something silly happening which
doesn't
> matter with a more modest number of shards.
Ah, I figured it was a known issue.
> If you run the search command under "time", how does the CPU time
> (user+sys) compare to real? If they're much less, then it's
spending
> a lot of time waiting for I/O, which in this case means loading files
> from disk.
94% CPU time with 99 shards on an SSD.
(I've already nuked the 390 shards)
Combined sizes of the shards are ~95G and they're roughly
equal in size.
They're sharded by NNTP article number ($NUM % $SHARDS), and
with Xapian docid being equivalent to the NNTP article number.
Not sure if the docid assignment and per-shard gaps has anything
to do with the slowdowns. Works great with 2..8 shards...
> If most (or at least a significant amount) is CPU time then it would
> be useful to profile to see if there are any low-hanging fruit. I've
> been mostly using the profiler in gperftools lately if you want to
> try this and don't know what to use.
Haven't tried gperftools, but I'm somewhat familiar with Linux `perf`.
Just installed the -dbgsym packages from Debian, attached is
"perf record ... && perf report" output.
> It would also be interesting to compare with xapian git master (if
> you're not using that already - you don't seem to mention a
version).
> The handling of shards has changed in some possibly significant ways.
Oops, left that out :x. I'm using packages from Debian buster
and the Search::Xapian XS bindings.
I tried building from git some time ago but might've had
something screwed up with my C++ toolchain :x I'll try to give
it another shot sometime this week.
> > Perhaps creating a new, all-encompassing Xapian index with a
> > reasonable shard count would be wise, at least for the normal
> > WWW frontend?
>
> There are some inherent overheads to dealing with lots of shards.
> If you open them all for every search, there's the overhead of that.
> There's also going to be more space overhead from the table structure
> on average, which means disk cache will be under more pressure.
Understood; and I'm leaning towards an all-encompassing index
since it would allow deduplication of cross-posted messages,
too. Xapian is by far the biggest user of disk space for
public-inbox when positions are used, so deduplicating
cross-posts will come in handy.
> If you have a persistent search process and ample RAM, then it may be
> feasible to scale up to tens of thousands of shards.
>
> > Managing removals of entire inboxes from an all-encompassing
> > Xapian DB would get much trickier.
>
> If each inbox is indexed by its own boolean term you can delete all
> the documents indexed by a specified term with one API call
> (Xapian::WritableDatabase::delete_document(term)). It may take a
> while for a large inbox, but it's more slow than tricky.
There's actually a good amount of cross-posting on kernel
mailing lists, so I think a combined index should be able to
deduplicate and reduce storage requirements.
I'd rather pay the cost in deletions and reference tracking
than the cost of doing deduplication at query time, though.
Thanks!
-------------- next part --------------
# To display the perf.data header info, please use --header/--header-only
options.
#
#
# Total Lost Samples: 0
#
# Samples: 10K of event 'cycles:u'
# Event count (approx.): 2928685969
#
# Overhead Command Shared Object Symbol
# ........ ............... ...................
....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
#
10.20% script/public-i libc-2.28.so [.] __memcmp_sse4_1
6.75% script/public-i libxapian.so.30.8.0 [.]
Glass::compare<Glass::LeafItem, Glass::BItem>
6.49% script/public-i libxapian.so.30.8.0 [.]
find_in_branch_<Glass::LeafItem>
4.31% script/public-i libxapian.so.30.8.0 [.]
GlassTable::block_to_cursor
3.92% script/public-i libxapian.so.30.8.0 [.]
GlassTable::get_exact_entry
3.19% script/public-i libc-2.28.so [.] __memcpy_ssse3
2.65% script/public-i libpthread-2.28.so [.] __libc_pread64
2.27% script/public-i [unknown] [k] 0xffffffff81800000
2.18% /mnt/btr/public perl [.] Perl_yyparse
2.11% /mnt/btr/public perl [.] Perl_yylex
1.92% script/public-i libxapian.so.30.8.0 [.]
GlassPostList::move_forward_in_chunk_to_at_least
1.76% script/public-i libxapian.so.30.8.0 [.]
GlassPostListTable::get_freqs
1.71% script/public-i libxapian.so.30.8.0 [.] GlassTable::find_in_leaf
1.62% script/public-i libxapian.so.30.8.0 [.]
Xapian::BM25Weight::get_maxpart
1.55% script/public-i libxapian.so.30.8.0 [.]
Glass::compare<Glass::LeafItem, Glass::LeafItem>
1.44% script/public-i libc-2.28.so [.] malloc
1.32% script/public-i libxapian.so.30.8.0 [.] io_read_block
1.24% script/public-i libxapian.so.30.8.0 [.] GlassTable::read_block
1.14% perl perl [.] Perl_yyparse
1.09% script/public-i libxapian.so.30.8.0 [.] GlassTable::find
0.95% /mnt/btr/public libc-2.28.so [.] _int_malloc
0.90% script/public-i libxapian.so.30.8.0 [.]
Xapian::Database::get_wdf_upper_bound
0.88% script/public-i libc-2.28.so [.] _int_malloc
0.88% /mnt/btr/public perl [.] Perl_leave_scope
0.84% script/public-i libxapian.so.30.8.0 [.]
LeafPostList::recalc_maxweight
0.70% script/public-i libxapian.so.30.8.0 [.]
GlassDatabase::get_wdf_upper_bound
0.58% /mnt/btr/public perl [.] Perl_gv_fetchpvn_flags
0.54% script/public-i libxapian.so.30.8.0 [.]
Xapian::Database::get_doclength_lower_bound
0.52% /mnt/btr/public perl [.] S_finalize_op
0.50% /mnt/btr/public perl [.] S_pad_findlex
0.48% /mnt/btr/public perl [.] Perl_hv_common
0.46% /mnt/btr/public libc-2.28.so [.] __memcpy_ssse3
0.46% /mnt/btr/public perl [.] Perl_Slab_Alloc
0.44% script/public-i libxapian.so.30.8.0 [.]
OrPostList::recalc_maxweight
0.43% perl perl [.] Perl_yylex
0.43% script/public-i libc-2.28.so [.] _int_free
0.43% /mnt/btr/public perl [.] Perl_rpeep
0.39% perl perl [.] S_pad_findlex
0.39% script/public-i [unknown] [k] 0xffffffff81800eb0
0.36% /mnt/btr/public perl [.] Perl_sv_clear
0.33% script/public-i libstdc++.so.6.0.25 [.]
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >::_M_append
0.31% /mnt/btr/public perl [.] S_optimize_op
0.30% /mnt/btr/public libc-2.28.so [.] _int_free
0.30% /mnt/btr/public perl [.] Perl_sv_upgrade
0.30% perl libc-2.28.so [.] _int_malloc
0.29% script/public-i libxapian.so.30.8.0 [.] GlassTable::read_tag
0.28% /mnt/btr/public perl [.] Perl_op_linklist.part.16
0.28% script/public-i libxapian.so.30.8.0 [.]
MultiAndPostList::recalc_maxweight
0.27% /mnt/btr/public perl [.] Perl_op_clear
0.27% /mnt/btr/public perl [.] S_share_hek_flags
0.27% script/public-i libxapian.so.30.8.0 [.]
GlassPostList::read_number_of_entries
0.26% script/public-i libstdc++.so.6.0.25 [.]
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >::_M_mutate
0.26% script/public-i libxapian.so.30.8.0 [.]
GlassDatabase::get_total_length
0.25% perl perl [.] S_finalize_op
0.25% /mnt/btr/public perl [.] Perl_scalar
0.25% perl perl [.] Perl_hv_common
0.24% perl perl [.] Perl_rpeep
0.24% script/public-i libxapian.so.30.8.0 [.] memcmp at plt
0.24% script/public-i libxapian.so.30.8.0 [.] Xapian::Weight::init_
0.23% /mnt/btr/public ld-2.28.so [.] do_lookup_x
0.22% script/public-i libxapian.so.30.8.0 [.] read_start_of_chunk
0.22% /mnt/btr/public perl [.]
sbox32_hash_with_state.constprop.8
0.22% /mnt/btr/public perl [.] S_scan_str
0.22% /mnt/btr/public perl [.] Perl_op_sibling_splice
0.21% /mnt/btr/public libc-2.28.so [.] malloc
0.21% /mnt/btr/public libc-2.28.so [.] __memchr_sse2
0.21% /mnt/btr/public perl [.] Perl_pad_alloc
0.21% perl perl [.] Perl_Slab_Alloc
0.20% script/public-i libxapian.so.30.8.0 [.]
OrPostList::get_termfreq_est
0.19% /mnt/btr/public perl [.] Perl_op_lvalue_flags
0.19% script/public-i libc-2.28.so [.] cfree at GLIBC_2.2.5
0.19% /mnt/btr/public libc-2.28.so [.] __libc_calloc
0.19% /mnt/btr/public perl [.] Perl_pad_leavemy
0.18% /mnt/btr/public perl [.] Perl_op_free
0.18% script/public-i libstdc++.so.6.0.25 [.]
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >::resize
0.18% /mnt/btr/public [unknown] [k] 0xffffffff81800eb0
0.18% /mnt/btr/public perl [.] S_study_chunk.constprop.33
0.18% perl perl [.] Perl_sv_upgrade
0.18% /mnt/btr/public Glob.so [.] glob_ophook
0.18% perl perl [.] Perl_leave_scope
0.18% /mnt/btr/public perl [.] S_scan_word
0.18% perl perl [.] Perl_gv_fetchpvn_flags
0.18% perl perl [.] Perl_sv_setsv_flags
0.16% script/public-i libc-2.28.so [.] __memmove_ssse3
0.16% /mnt/btr/public libc-2.28.so [.] __memcmp_sse4_1
0.16% /mnt/btr/public libc-2.28.so [.] malloc_consolidate
0.15% /mnt/btr/public perl [.] Perl_sv_setsv_flags
0.15% /mnt/btr/public libc-2.28.so [.] cfree at GLIBC_2.2.5
0.15% /mnt/btr/public perl [.] S_maybe_multiconcat
0.15% /mnt/btr/public perl [.] Perl_lex_next_chunk
0.15% /mnt/btr/public perl [.] Perl_sv_gets
0.15% perl perl [.]
sbox32_hash_with_state.constprop.8
0.15% /mnt/btr/public perl [.] Perl_av_fetch
0.15% script/public-i libc-2.28.so [.] __memchr_sse2
0.15% perl libc-2.28.so [.] malloc
0.14% script/public-i libxapian.so.30.8.0 [.] OrPostList::check
0.13% script/public-i libm-2.28.so [.] __ieee754_log_fma4
0.13% script/public-i perl [.] Perl_hv_common
0.13% script/public-i perl [.] Perl_pp_entersub
0.13% perl perl [.] Perl_sv_clear
0.13% perl libc-2.28.so [.] _int_free
0.12% /mnt/btr/public perl [.] Perl_lex_read_space
0.12% /mnt/btr/public libc-2.28.so [.] _int_realloc
0.12% /mnt/btr/public perl [.] Perl_padnamelist_store
0.12% /mnt/btr/public libc-2.28.so [.]
__memset_sse2_unaligned_erms
0.12% /mnt/btr/public perl [.] S_regclass
0.12% /mnt/btr/public perl [.] Perl_mro_method_changed_in
0.12% script/public-i libstdc++.so.6.0.25 [.]
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >::find
0.12% /mnt/btr/public perl [.] Perl_av_store
0.12% /mnt/btr/public perl [.] Perl_pp_padsv
0.12% script/public-i perl [.] Perl_sv_upgrade
0.12% /mnt/btr/public libc-2.28.so [.] __memmove_ssse3
0.12% /mnt/btr/public perl [.] Perl_pp_aassign
0.12% /mnt/btr/public perl [.] S_regtry
0.12% /mnt/btr/public perl [.] S_skipspace_flags
0.11% perl libc-2.28.so [.] cfree at GLIBC_2.2.5
0.11% perl perl [.] S_share_hek_flags
0.11% perl libc-2.28.so [.] __memcpy_ssse3
0.11% script/public-i libxapian.so.30.8.0 [.]
MergePostList::recalc_maxweight
0.11% script/public-i libxapian.so.30.8.0 [.]
GlassPostList::move_to_chunk_containing
0.11% script/public-i libxapian.so.30.8.0 [.]
Glass::ValueChunkReader::skip_to
0.11% perl perl [.] S_maybe_multiconcat
0.10% script/public-i libxapian.so.30.8.0 [.]
LocalSubMatch::open_post_list
0.10% perl libc-2.28.so [.] realloc
0.10% script/public-i libstdc++.so.6.0.25 [.]
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >::_M_create
0.10% /mnt/btr/public perl [.] Perl_pad_add_name_pvn
0.09% /mnt/btr/public perl [.] Perl_sv_free2
0.09% /mnt/btr/public perl [.] Perl_pp_entersub
0.09% /mnt/btr/public perl [.] Perl_newLISTOP
0.09% script/public-i perl [.] Perl_sv_clear
0.09% /mnt/btr/public perl [.] Perl_safesysmalloc
0.09% /mnt/btr/public perl [.] Perl_doref
0.09% /mnt/btr/public perl [.] Perl_keyword
0.09% /mnt/btr/public libc-2.28.so [.] __strrchr_sse2
0.09% /mnt/btr/public perl [.]
Perl__invlist_intersection_maybe_complement_2nd
0.09% /mnt/btr/public perl [.] Perl_intro_my
0.09% /mnt/btr/public perl [.] Perl_sv_vcatpvfn_flags
0.09% /mnt/btr/public perl [.] Perl_pp_and
0.09% /mnt/btr/public perl [.] Perl_ck_fun
0.09% /mnt/btr/public perl [.] Perl_scan_num
0.09% /mnt/btr/public libc-2.28.so [.] __memset_sse2_unaligned
0.09% /mnt/btr/public perl [.] S_fold_constants
0.09% /mnt/btr/public perl [.] Perl_safesysfree
0.09% /mnt/btr/public libc-2.28.so [.] realloc
0.09% perl perl [.] S_optimize_op
0.09% script/public-i libxapian.so.30.8.0 [.]
Xapian::Query::Internal::postlist_sub_or_like
0.09% /mnt/btr/public perl [.] Perl_op_convert_list
0.08% perl libc-2.28.so [.] __libc_calloc
0.08% perl libc-2.28.so [.] malloc_consolidate
0.08% perl perl [.] Perl_op_lvalue_flags
0.08% perl perl [.] S_scan_str
0.08% script/public-i libc-2.28.so [.] malloc_consolidate
0.08% script/public-i libstdc++.so.6.0.25 [.]
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >::_M_replace
0.08% perl libc-2.28.so [.]
__memset_sse2_unaligned_erms
0.08% perl libc-2.28.so [.] __memmove_ssse3
0.08% perl perl [.] Perl_scalarvoid
0.07% script/public-i libxapian.so.30.8.0 [.] GlassCursor::GlassCursor
0.07% perl perl [.] Perl_av_extend_guts
0.07% perl perl [.] Perl_regnext
0.07% script/public-i libstdc++.so.6.0.25 [.] operator new
0.07% perl libc-2.28.so [.] __memchr_sse2
0.07% script/public-i perl [.] Perl_hfree_next_entry
0.07% perl libc-2.28.so [.] __memcmp_sse4_1
0.07% perl perl [.] Perl_pp_multideref
0.07% script/public-i libz.so.1.2.11 [.] inflate
0.06% perl perl [.] Perl_pad_alloc
0.06% script/public-i perl [.] Perl_leave_scope
0.06% perl perl [.] Perl_newSVOP
0.06% /mnt/btr/public libc-2.28.so [.] __GI___strlen_sse2
0.06% /mnt/btr/public perl [.] Perl_pad_findmy_pvn
0.06% /mnt/btr/public perl [.] S_make_trie.isra.28
0.06% /mnt/btr/public perl [.] S_sv_uncow
0.06% script/public-i libz.so.1.2.11 [.] 0x00000000000034ae
0.06% /mnt/btr/public ld-2.28.so [.] strcmp
0.06% /mnt/btr/public perl [.] Perl_pp_method_named
0.06% /mnt/btr/public perl [.] S_scan_ident
0.06% /mnt/btr/public perl [.] Perl_block_start
0.06% script/public-i perl [.] S_share_hek_flags
0.06% /mnt/btr/public perl [.] S_new_logop
0.06% /mnt/btr/public perl [.] Perl_sv_setpvn
0.06% /mnt/btr/public perl [.] Perl_newSTATEOP
0.06% /mnt/btr/public perl [.] Perl_newATTRSUB_x
0.06% perl perl [.] S_regtry
0.06% /mnt/btr/public perl [.] Perl_pp_multideref
0.06% perl perl [.] Perl_pad_findmy_pvn
0.06% /mnt/btr/public perl [.] Perl_create_eval_scope
0.06% /mnt/btr/public perl [.] Perl_newUNOP
0.06% /mnt/btr/public perl [.] S_scalarseq
0.06% /mnt/btr/public perl [.] S_sublex_start
0.06% perl libc-2.28.so [.] __memset_sse2_unaligned
0.06% /mnt/btr/public perl [.] Perl_pp_unstack
0.06% perl perl [.] Perl_newWHILEOP
0.06% /mnt/btr/public perl [.] S_aassign_scan
0.06% /mnt/btr/public perl [.] Perl_regexec_flags
0.06% /mnt/btr/public perl [.] Perl_pp_const
0.06% /mnt/btr/public perl [.] Perl_newUNOP_AUX
0.06% /mnt/btr/public perl [.] Perl_sv_grow
0.06% script/public-i perl [.]
sbox32_hash_with_state.constprop.8
0.06% /mnt/btr/public perl [.] Perl_free_tmps
0.06% script/public-i perl [.] Perl_pp_multideref
0.06% /mnt/btr/public perl [.] Perl_newSV
0.06% /mnt/btr/public perl [.] Perl_pp_or
0.06% /mnt/btr/public ld-2.28.so [.] _dl_lookup_symbol_x
0.06% /mnt/btr/public perl [.] PerlIO_isutf8
0.06% script/public-i perl [.] Perl_gv_fetchpvn_flags
0.06% script/public-i libxapian.so.30.8.0 [.]
std::__push_heap<__gnu_cxx::__normal_iterator<Xapian::PostingIterator::Internal**,
std::vector<Xapian::PostingIterator::Internal*,
std::allocator<Xapian::PostingIterator::Internal*> > >, long,
Xapian::PostingIterator::Internal*,
__gnu_cxx::__ops::_Iter_comp_val<Xapian::Internal::ComparePostListTermFreqAscending>
>
0.06% /mnt/btr/public libc-2.28.so [.] __strchr_sse2
0.06% script/public-i perl [.] Perl_call_sv
0.06% /mnt/btr/public perl [.] Perl_pp_nextstate
0.06% perl perl [.] Perl_ck_stringify
0.06% /mnt/btr/public ld-2.28.so [.] _dl_relocate_object
0.06% /mnt/btr/public perl [.] Perl_runops_standard
0.06% script/public-i perl [.] Perl_pp_pushmark
0.06% /mnt/btr/public perl [.] Perl_re_op_compile
0.06% script/public-i libxapian.so.30.8.0 [.]
Xapian::Internal::QueryTerm::gather_terms
0.06% /mnt/btr/public perl [.] S_hsplit
0.06% /mnt/btr/public perl [.] Perl_pp_lc
0.06% script/public-i libxapian.so.30.8.0 [.]
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >::_M_append at plt
0.06% /mnt/btr/public perl [.] Perl_save_clearsv
0.05% script/public-i libstdc++.so.6.0.25 [.] operator delete
0.05% script/public-i libxapian.so.30.8.0 [.]
msetcmp_by_value_then_relevance<true, true>
0.05% perl [unknown] [k] 0xffffffff81800eb0
0.05% perl perl [.] Perl_op_free
0.05% script/public-i libxapian.so.30.8.0 [.] GlassCursor::~GlassCursor
0.05% perl perl [.] S_aassign_scan
0.05% perl perl [.] Perl_lex_read_space
0.05% script/public-i perl [.] Perl_pp_padsv
0.05% script/public-i libxapian.so.30.8.0 [.] GlassValueList::check
0.05% script/public-i libxapian.so.30.8.0 [.] GlassCursor::find_entry
0.05% script/public-i Xapian.so [.]
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >::_M_construct<char*>
0.05% script/public-i libxapian.so.30.8.0 [.]
std::__adjust_heap<__gnu_cxx::__normal_iterator<Xapian::PostingIterator::Internal**,
std::vector<Xapian::PostingIterator::Internal*,
std::allocator<Xapian::PostingIterator::Internal*> > >, long,
Xapian::PostingIterator::Internal*,
__gnu_cxx::__ops::_Iter_comp_iter<Xapian::Internal::ComparePostListTermFreqAscending>
>
0.05% script/public-i libxapian.so.30.8.0 [.] GlassTable::next_default
0.05% script/public-i libxapian.so.30.8.0 [.] Xapian::BM25Weight::init
0.04% script/public-i libxapian.so.30.8.0 [.]
GlassPostList::get_termfreq
0.04% perl perl [.] S_scalarseq
0.04% perl perl [.] Perl_op_linklist.part.16
0.04% script/public-i libc-2.28.so [.]
__memset_sse2_unaligned_erms
0.04% script/public-i libxapian.so.30.8.0 [.] GlassPostList::init
0.04% script/public-i libxapian.so.30.8.0 [.] MultiMatch::get_mset
0.04% perl perl [.] Perl_op_sibling_splice
0.04% perl libpthread-2.28.so [.] __pthread_mutex_lock
0.04% perl perl [.] Perl_op_convert_list
0.04% git libc-2.28.so [.] __access
0.04% script/public-i libxapian.so.30.8.0 [.] GlassTable::form_key
0.04% script/public-i libstdc++.so.6.0.25 [.] free at plt
0.04% perl perl [.] S_skipspace_flags
0.04% perl perl [.] S_regclass
0.03% script/public-i libxapian.so.30.8.0 [.]
Xapian::Internal::QueryBranch::do_or_like
0.03% perl perl [.] Perl_newSTATEOP
0.03% script/public-i libc-2.28.so [.]
__fcntl64_nocancel_adjusted
0.03% script/public-i perl [.] Perl_pp_ne
0.03% script/public-i perl [.] Perl_sv_isobject
0.03% perl perl [.] S_scan_word
0.03% perl perl [.] S_fold_constants
0.03% script/public-i perl [.] Perl_pp_aassign
0.03% script/public-i libstdc++.so.6.0.25 [.]
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >::_M_assign
0.03% script/public-i perl [.] Perl_pp_nextstate
0.03% script/public-i perl [.] S_find_byclass
0.03% script/public-i perl [.] Perl_pp_return
0.03% script/public-i perl [.] S_expect_number
0.03% script/public-i libxapian.so.30.8.0 [.] read_start_of_first_chunk
0.03% script/public-i perl [.] Perl_leave_adjust_stacks
0.03% perl perl [.] S_hsplit
0.03% script/public-i libc-2.28.so [.] _int_realloc
0.03% script/public-i perl [.] Perl_newSV
0.03% script/public-i perl [.] Perl_pp_split
0.03% script/public-i perl [.] Perl_safesysmalloc
0.03% /mnt/btr/public perl [.] Perl_newSVpvn_flags
0.03% script/public-i perl [.] S_hv_free_ent_ret.isra.3
0.03% /mnt/btr/public perl [.] Perl_start_subparse
0.03% script/public-i libz.so.1.2.11 [.] 0x000000000000e7af
0.03% /mnt/btr/public perl [.] S_concat_pat
0.03% /mnt/btr/public perl [.] Perl_ck_method
0.03% perl perl [.] Perl_pp_require
0.03% /mnt/btr/public perl [.] Perl_localize
0.03% /mnt/btr/public perl [.] Perl_cv_undef_flags
0.03% /mnt/btr/public perl [.] Perl_newBINOP
0.03% /mnt/btr/public perl [.] Perl_list
0.03% /mnt/btr/public perl [.] Perl_ck_index
0.03% script/public-i libxapian.so.30.8.0 [.]
GlassPostList::GlassPostList
0.03% perl perl [.] Perl_doref
0.03% /mnt/btr/public perl [.] Perl_gv_name_set
0.03% /mnt/btr/public perl [.] Perl_ck_return
0.03% script/public-i perl [.] Perl_pp_gv
0.03% /mnt/btr/public perl [.]
sbox32_hash_with_state.constprop.3
0.03% /mnt/btr/public perl [.] S_regbranch
0.03% /mnt/btr/public perl [.] Perl_package
0.03% perl perl [.] Perl_gv_check
0.03% perl libc-2.28.so [.] __nss_database_lookup
0.03% perl perl [.] Perl_gv_setref
0.03% /mnt/btr/public perl [.] Perl_pad_new
0.03% perl perl [.] Perl_sv_free2
0.03% /mnt/btr/public perl [.] Perl_PerlIO_flush
0.03% /mnt/btr/public ld-2.28.so [.] _dl_map_object
0.03% /mnt/btr/public perl [.] Perl_sv_add_backref
0.03% /mnt/btr/public perl [.] Perl_pad_tidy
0.03% /mnt/btr/public perl [.] Perl_scalarvoid
0.03% /mnt/btr/public perl [.] S_maybe_multideref
0.03% /mnt/btr/public perl [.] Perl_newSV_type
0.03% /mnt/btr/public perl [.] Perl_allocmy
0.03% /mnt/btr/public perl [.] Perl_op_null.part.15
0.03% /mnt/btr/public perl [.] Perl_op_append_list
0.03% script/public-i perl [.] Perl_pp_const
0.03% /mnt/btr/public perl [.] S_move_proto_attr
0.03% perl perl [.] S_my_kid
0.03% perl perl [.] Perl_newSV_type
0.03% /mnt/btr/public Spawn_e856.so [.] __errno_location at plt
0.03% /mnt/btr/public perl [.] S_sublex_done
0.03% /mnt/btr/public perl [.] Perl__new_invlist
0.03% script/public-i SQLite.so [.] sqlite_bind_ph
0.03% /mnt/btr/public perl [.] S_doeval_compile
0.03% perl perl [.] Perl_ckwarn
0.03% /mnt/btr/public perl [.] Perl_newSVOP
0.03% /mnt/btr/public perl [.] Perl_scan_version
0.03% /mnt/btr/public perl [.] Perl_PerlIO_tell
0.03% perl perl [.] Perl_keyword
0.03% /mnt/btr/public perl [.] Perl_sv_catsv_flags
0.03% script/public-i libsqlite3.so.0.8.6 [.] 0x0000000000045442
0.03% /mnt/btr/public perl [.] Perl_mg_clear
0.03% /mnt/btr/public perl [.]
stadtx_hash_with_state.constprop.7
0.03% perl perl [.] Perl_save_hints
0.03% /mnt/btr/public perl [.] Perl_save_hints
0.03% /mnt/btr/public perl [.] S_assignment_type
0.03% perl perl [.] Perl_pp_multiconcat
0.03% /mnt/btr/public perl [.] Perl_push_scope
0.03% /mnt/btr/public perl [.] S_find_byclass
0.03% perl perl [.] Perl_mro_meta_init
0.03% /mnt/btr/public perl [.] Perl_mg_magical
0.03% /mnt/btr/public perl [.] S_scan_pat
0.03% perl libc-2.28.so [.] vfprintf
0.03% /mnt/btr/public perl [.] Perl_save_bool
0.03% /mnt/btr/public perl [.] Perl_sv_newmortal
0.03% /mnt/btr/public perl [.] Perl_share_hek
0.03% /mnt/btr/public perl [.] Perl_pp_iter
0.03% /mnt/btr/public perl [.] S_curse
0.03% perl perl [.] Perl_sv_catpvn_flags
0.03% perl libc-2.28.so [.] __GI___strlen_sse2
0.03% perl perl [.] Perl_newLISTOP
0.03% script/public-i perl [.] Perl_rpeep
0.03% perl perl [.] Perl_newHVhv
0.03% /mnt/btr/public perl [.] Perl_ck_svconst
0.03% perl perl [.] Perl_init_named_cv
0.03% perl perl [.] Perl_free_tmps
0.03% /mnt/btr/public perl [.] S_force_list
0.03% /mnt/btr/public perl [.] S_reginclass
0.03% /mnt/btr/public perl [.] Perl_rv2cv_op_cv
0.03% /mnt/btr/public perl [.] S_incline
0.03% script/public-i perl [.] Perl_pp_add
0.03% perl perl [.] Perl_newASSIGNOP
0.03% script/public-i perl [.] Perl_create_eval_scope
0.03% perl perl [.] S_regatom
0.03% /mnt/btr/public perl [.] Perl_safesysrealloc
0.03% /mnt/btr/public perl [.] Perl_pp_sassign
0.03% /mnt/btr/public perl [.] Perl_pp_goto
0.03% perl perl [.] Perl_ck_subr
0.03% /mnt/btr/public perl [.] Perl_pp_leaveloop
0.03% /mnt/btr/public perl [.] Perl_save_pushptr
0.03% /mnt/btr/public perl [.] Perl_ck_spair
0.03% perl perl [.] Perl_scan_num
0.03% /mnt/btr/public perl [.] Perl_bytes_from_utf8_loc
0.03% /mnt/btr/public perl [.] Perl_pv_pretty
0.03% /mnt/btr/public perl [.] Perl_hv_iternext_flags
0.03% perl perl [.]
sbox32_hash_with_state.constprop.3
0.03% /mnt/btr/public perl [.] Perl_ck_subr
0.03% perl perl [.] S_maybe_multideref
0.03% /mnt/btr/public libc-2.28.so [.] __memcpy_chk_ssse3
0.03% /mnt/btr/public perl [.] S_my_kid
0.03% /mnt/btr/public perl [.] Perl_av_extend_guts
0.03% /mnt/btr/public perl [.] Perl_pp_pushmark
0.03% /mnt/btr/public perl [.] Perl_pp_leave
0.03% perl ld-2.28.so [.] _dl_relocate_object
0.03% /mnt/btr/public perl [.] Perl_prescan_version
0.03% script/public-i libz.so.1.2.11 [.] 0x0000000000003573
0.03% /mnt/btr/public perl [.] Perl_pad_swipe
0.03% script/public-i perl [.] Perl_newAVREF
0.03% /mnt/btr/public perl [.] Perl_pp_entereval
0.03% /mnt/btr/public perl [.] Perl_grok_hex
0.03% /mnt/btr/public libpthread-2.28.so [.] __pthread_getspecific
0.03% /mnt/btr/public perl [.] Perl_pp_uc
0.03% perl perl [.] Perl_runops_standard
0.03% script/public-i libxapian.so.30.8.0 [.]
Glass::RootInfo::unserialise
0.03% /mnt/btr/public perl [.] Perl_ck_length
0.03% script/public-i HiRes.so [.]
XS_Time__HiRes_clock_gettime
0.03% script/public-i perl [.]
stadtx_hash_with_state.constprop.7
0.03% script/public-i libsqlite3.so.0.8.6 [.] 0x00000000000995fe
0.03% /mnt/btr/public libpthread-2.28.so [.] __pthread_mutex_lock
0.03% perl perl [.] Perl_hv_iternext_flags
0.03% script/public-i XS.so [.] 0x0000000000005531
0.03% perl perl [.] Perl_scalar
0.03% /mnt/btr/public perl [.] Perl_do_kv
0.03% /mnt/btr/public perl [.] PerlIO_openn
0.03% script/public-i libxapian.so.30.8.0 [.]
Xapian::BM25Weight::get_sumpart
0.03% /mnt/btr/public libc-2.28.so [.] vfprintf
0.03% script/public-i perl [.] Perl_yyparse
0.03% script/public-i perl [.] Perl_pad_alloc
0.03% /mnt/btr/public perl [.]
S_cleanup_regmatch_info_aux
0.03% script/public-i libsqlite3.so.0.8.6 [.] sqlite3_step
0.03% perl perl [.] Perl_newOP
0.03% script/public-i libz.so.1.2.11 [.] 0x000000000000353b
0.03% script/public-i libz.so.1.2.11 [.] 0x000000000000f562
0.03% script/public-i libxapian.so.30.8.0 [.] GlassPostList::get_docid
0.03% script/public-i perl [.] Perl_sv_len
0.03% script/public-i libxapian.so.30.8.0 [.]
Xapian::Weight::Internal::accumulate_stats
0.03% /mnt/btr/public perl [.] Perl_sv_catpvn_flags
0.03% /mnt/btr/public perl [.] memmove at plt
0.03% /mnt/btr/public perl [.] S_unshare_hek_or_pvn
0.03% /mnt/btr/public perl [.] Perl_pp_ref
0.03% script/public-i libxapian.so.30.8.0 [.] GlassPostList::at_end
0.02% script/public-i libxapian.so.30.8.0 [.] LeafPostList::get_weight
0.02% script/public-i libxapian.so.30.8.0 [.]
Xapian::Internal::intrusive_ptr<GlassDatabase const>::~intrusive_ptr
0.02% script/public-i libxapian.so.30.8.0 [.] GlassPostList::skip_to
0.02% script/public-i libxapian.so.30.8.0 [.]
GlassPostList::open_nearby_postlist
0.02% script/public-i libxapian.so.30.8.0 [.]
OrPostList::get_termfreq_min
0.02% perl perl [.] S_study_chunk.constprop.33
0.02% perl ld-2.28.so [.] _dl_map_object_from_fd
0.02% perl perl [.] Perl_op_clear
0.02% script/public-i libxapian.so.30.8.0 [.]
Xapian::Internal::OrContext::postlist
0.02% perl perl [.] S_more_sv
0.02% perl perl [.] Perl_pp_iter
0.02% perl perl [.] Perl_ck_rvconst
0.02% perl perl [.] Perl_newBINOP
0.02% perl perl [.] Perl_av_fetch
0.02% script/public-i libxapian.so.30.8.0 [.] Xapian::BM25Weight::clone
0.02% perl perl [.] Perl_lex_next_chunk
0.02% perl perl [.] Perl_av_store
0.02% script/public-i libxapian.so.30.8.0 [.] GlassCursor::read_tag
0.02% script/public-i ld-2.28.so [.] _dl_lookup_symbol_x
0.02% perl perl [.] S_scan_ident
0.02% script/public-i libxapian.so.30.8.0 [.] pread at plt
0.02% script/public-i libxapian.so.30.8.0 [.]
GlassDatabase::get_doclength_lower_bound
0.02% script/public-i libstdc++.so.6.0.25 [.] memcpy at plt
0.02% script/public-i libxapian.so.30.8.0 [.]
LeafPostList::set_termweight
0.02% script/public-i libc-2.28.so [.] sysmalloc
0.02% perl perl [.] Perl_sv_setpvn
0.02% perl perl [.] Perl_hv_common_key_len
0.02% script/public-i ld-2.28.so [.] do_lookup_x
0.02% perl perl [.] Perl_ck_require
0.02% perl perl [.] S_new_logop
0.01% perl perl [.] Perl_save_pushptr
0.01% perl perl [.] Perl_pop_scope
0.01% perl perl [.] Perl_pp_aassign
0.01% script/public-i libxapian.so.30.8.0 [.]
std::_Rb_tree<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> >,
std::pair<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > const, TermFreqs>,
std::_Select1st<std::pair<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const,
TermFreqs> >, std::less<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > >,
std::allocator<std::pair<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const,
TermFreqs> > >::find
0.01% script/public-i libstdc++.so.6.0.25 [.] memchr at plt
0.01% perl perl [.] Perl_padnamelist_free
0.01% perl perl [.] Perl_regexec_flags
0.01% perl perl [.] Perl_pad_leavemy
0.01% perl perl [.] memset at plt
0.01% perl perl [.] Perl_regfree_internal
0.01% perl perl [.] Perl_safesyscalloc
0.01% script/public-i libxapian.so.30.8.0 [.] memmove at plt
0.01% script/public-i perl [.] Perl_gv_stashpv
0.01% script/public-i libstdc++.so.6.0.25 [.] operator new at plt
0.01% perl perl [.] Perl_pp_entersub
0.01% script/public-i libxapian.so.30.8.0 [.]
std::__introsort_loop<__gnu_cxx::__normal_iterator<std::pair<unsigned
int, std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >*, std::vector<std::pair<unsigned int,
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >, std::allocator<std::pair<unsigned
int, std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > > > > >, long,
__gnu_cxx::__ops::_Iter_comp_iter<Xapian::Query::get_unique_terms_begin()
const::{lambda(std::pair<unsigned int, std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > > const&,
std::pair<unsigned int, std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > >
const&)#1}> >
0.01% script/public-i libxapian.so.30.8.0 [.]
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >::find at plt
0.01% script/public-i libxapian.so.30.8.0 [.]
Xapian::Query::Internal::postlist_sub_and_like
0.01% script/public-i libxapian.so.30.8.0 [.]
Xapian::Internal::QueryAndLike::postlist_sub_and_like
0.01% script/public-i libxapian.so.30.8.0 [.]
LeafPostList::get_termfreq_est
0.01% perl perl [.] PerlIO_isutf8
0.01% perl perl [.] S_reginsert.constprop.31
0.01% perl perl [.] Perl_ck_svconst
0.01% perl perl [.] Perl_sv_usepvn_flags
0.01% perl perl [.] Perl_sv_gets
0.01% perl perl [.] S_scalarboolean
0.01% perl perl [.] Perl_safesysfree
0.01% perl perl [.] Perl_sv_vcatpvfn_flags
0.01% perl perl [.] Perl_newPADNAMEpvn
0.01% perl perl [.] Perl_av_extend
0.01% perl libpthread-2.28.so [.] __close
0.01% perl perl [.] S_lop
0.01% perl perl [.] Perl_newATTRSUB_x
0.01% perl perl [.] Perl_padnamelist_store
0.01% perl perl [.] S_tokeq
0.01% perl libc-2.28.so [.] _int_realloc
0.01% perl libc-2.28.so [.] __strchr_sse2
0.01% perl perl [.] Perl_list
0.01% perl perl [.] S_pushav
0.01% perl perl [.] S_sublex_start
0.01% script/public-i libxapian.so.30.8.0 [.] Xapian::Weight::init_
0.01% perl perl [.] Perl_mro_method_changed_in
0.01% perl perl [.] S_reg
0.01% perl perl [.] Perl_grok_numeric_radix
0.01% perl perl [.] Perl_utilize
0.01% perl perl [.] Perl_gv_override
0.01% perl perl [.] S_check_type_and_open
0.01% perl perl [.] Perl_pp_push
0.01% perl perl [.] Perl_newSV
0.01% script/public-i libxapian.so.30.8.0 [.]
Xapian::Internal::QueryBranch::gather_terms
0.01% perl perl [.] Perl_grok_hex
0.01% script/public-i libxapian.so.30.8.0 [.]
std::__unguarded_linear_insert<__gnu_cxx::__normal_iterator<std::pair<unsigned
int, std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >*, std::vector<std::pair<unsigned int,
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >, std::allocator<std::pair<unsigned
int, std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > > > > >,
__gnu_cxx::__ops::_Val_comp_iter<Xapian::Query::get_unique_terms_begin()
const::{lambda(std::pair<unsigned int, std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > > const&,
std::pair<unsigned int, std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > >
const&)#1}> >
0.01% perl perl [.] realloc at plt
0.01% script/public-i libxapian.so.30.8.0 [.] GlassTable::basic_open
0.01% perl perl [.] Perl_sv_add_backref
0.01% script/public-i libxapian.so.30.8.0 [.]
Xapian::Database::add_database
0.01% script/public-i libc-2.28.so [.] __sigsetjmp
0.01% git [unknown] [k] 0xffffffff81800eb0
0.01% git ld-2.28.so [.] _dl_relocate_object
0.01% git libc-2.28.so [.] malloc_init_state
0.01% git ld-2.28.so [.] _dl_fixup
0.01% script/public-i [unknown] [k] 0xffffffff81801870
0.01% git libc-2.28.so [.] _IO_file_doallocate
0.01% script/public-i libxapian.so.30.8.0 [.]
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >::resize at plt
0.01% script/public-i libc-2.28.so [.]
systrim.isra.1.constprop.10
0.01% script/public-i libstdc++.so.6.0.25 [.]
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >::_M_create at plt
0.01% script/public-i libc-2.28.so [.] __sbrk
0.01% script/public-i libxapian.so.30.8.0 [.]
Xapian::Internal::QueryTerm::postlist
0.01% git git [.] do_config_from
0.01% script/public-i libxapian.so.30.8.0 [.]
std::__make_heap<__gnu_cxx::__normal_iterator<Xapian::PostingIterator::Internal**,
std::vector<Xapian::PostingIterator::Internal*,
std::allocator<Xapian::PostingIterator::Internal*> > >,
__gnu_cxx::__ops::_Iter_comp_iter<Xapian::Internal::ComparePostListTermFreqAscending>
>
0.01% perl perl [.] Perl_cop_fetch_label
0.01% script/public-i libc-2.28.so [.] __brk
0.01% script/public-i libc-2.28.so [.] __default_morecore
0.01% script/public-i libxapian.so.30.8.0 [.] operator delete at plt
0.01% script/public-i libm-2.28.so [.] __log
0.01% script/public-i libxapian.so.30.8.0 [.]
std::__adjust_heap<Xapian::PostingIterator::Internal**, long,
Xapian::PostingIterator::Internal*,
__gnu_cxx::__ops::_Iter_comp_iter<MultiAndPostList::ComparePostListTermFreqAscending>
>
0.01% script/public-i libxapian.so.30.8.0 [.]
LocalSubMatch::get_postlist
0.01% script/public-i libxapian.so.30.8.0 [.]
GlassPostList::GlassPostList
0.00% perl libc-2.28.so [.] __GI___geteuid
0.00% perl libpthread-2.28.so [.] __pthread_rwlock_unlock
0.00% perl perl [.] perl_construct
0.00% perl libc-2.28.so [.] _dl_addr
0.00% perl ld-2.28.so [.] _dl_check_map_versions
0.00% git ld-2.28.so [.] _dl_start
0.00% perl ld-2.28.so [.] _dl_load_cache_lookup
0.00% perl ld-2.28.so [.] dl_main
0.00% perl ld-2.28.so [.] _dl_start
0.00% script/public-i libpthread-2.28.so [.] __pthread_getspecific
0.00% /mnt/btr/public Spawn_e856.so [.] pi_fork_exec
0.00% script/public-i libc-2.28.so [.] __libc_vfork
0.00% /mnt/btr/public libc-2.28.so [.] __libc_vfork
0.00% perl ld-2.28.so [.] _start
#
# (Tip: Compare performance results with: perf diff [<old file> <new
file>])
#