[Xapian-discuss] FLAG_WILDCARD, add_database and performance
Olly Betts
olly at survex.com
Tue Aug 5 15:42:23 BST 2008
On Mon, Aug 04, 2008 at 02:50:33PM +0200, Oliver Flimm wrote:
> 1915840 80.4207 libc-2.3.6.so libc-2.3.6.so
> _int_malloc
> 1915840 99.9993 libc-2.3.6.so libc-2.3.6.so
> _int_malloc [self]
Thanks. That's not totally helpful (due to lack of debugging symbols in
your libxapian), but something seems to be calling malloc() or similar a
lot, which gives me a few clues, and I found a class which would benefit
from a rewrite.
Can you try this patch? It's against SVN trunk, but will probably apply
to 1.0.7. If not and you can't get it to apply, let me know and I'll
fix it up, but I need to go to bed right now.
http://oligarchy.co.uk/xapian/patches/multiallterms.patch
This passes the testsuite, but I wouldn't recommend it for production
use without further testing.
I suspect this will help quite a bit, but that more may be possible, so
when you rebuild Xapian, make sure that debugging information is being
generated ("-g" in CXXFLAGS, which is the default) and that you don't
strip the library. Then if you need to rerun oprofile we can see where
in libxapian is making all these calls to libc. Or whatever the new
bottleneck is.
Cheers,
Olly
More information about the Xapian-discuss
mailing list