[Xapian-tickets] [Xapian] #326: Searches with chert are slow, due to slow doclen access

Xapian nobody at xapian.org
Thu Feb 5 18:13:27 GMT 2009


#326: Searches with chert are slow, due to slow doclen access
---------------------------+------------------------------------------------
 Reporter:  richard        |        Owner:  richard  
     Type:  defect         |       Status:  assigned 
 Priority:  normal         |    Milestone:  1.1.0    
Component:  Backend-Chert  |      Version:  SVN trunk
 Severity:  normal         |   Resolution:           
 Keywords:                 |    Blockedby:           
 Platform:  All            |     Blocking:           
---------------------------+------------------------------------------------

Comment(by richard):

 Going back to the original profiling, with full size doclen chunks, 55% of
 CPU is spent in unpack_uint().  I've tried optimising this with a version
 specialised for uint32, with some success: the patch is in
 optimise_unpack_uint.patch.  With this patch, the compiler inlines the
 calls to unpack_uint(), so it's hard to directly measure the difference,
 but search times go from 12.58 seconds to 8.54 seconds, so it's clearly
 beneficial.  callgrind output with this patch is available at
 http://tartarus.org/richard/xapian_perf_analysis/callgrind.out.xapian_search_chert_optimised_unpack_uint_1

 This output shows that the main caller of unpack_uint goes from 4.29
 billion cycles without the patch, to 1.96 billion with it - more than
 doubling its speed.

-- 
Ticket URL: <http://trac.xapian.org/ticket/326#comment:3>
Xapian <http://xapian.org/>
Xapian



More information about the Xapian-tickets mailing list