Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Mar 2006 08:54:59 +0100
From:      bert hubert <bert.hubert@netherlabs.nl>
To:        Jason Evans <jasone@FreeBSD.org>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: unsatisfying c++/boost::multi_index_container::erase performance on	at least FreeBSD 6.0
Message-ID:  <20060317075459.GA24298@outpost.ds9a.nl>
In-Reply-To: <441A150A.6000003@FreeBSD.org>
References:  <20060316224912.GA14905@outpost.ds9a.nl> <441A150A.6000003@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Mar 16, 2006 at 05:46:50PM -0800, Jason Evans wrote:

> I ran cache-test on -current using phkmalloc and a couple of different 
> versions of jemalloc.  jemalloc does not appear to have the same issue 
> for this test.  It isn't obvious to me why phkmalloc is performing so 
> poorly, but I think you can assume that this is a malloc performance 
> problem.

Thanks Jason, this has helped narrow down the problem significantly. From
this I understand that to work around this problem, I have some options:

1) tweak my code to not allocate such a large amount of small objects
2) move away from malloc/free based c++ allocators
3) recompile libc with jemalloc

I'm really hoping for 4) where I can LD_PRELOAD only jemalloc, would that
be possible? Or does libc include parts of malloc/free itself inlined?

I'd hate to force PowerDNS users to recompile their libc for me :-)

Thanks!

-- 
http://www.PowerDNS.com      Open source, database driven DNS Software 
http://netherlabs.nl              Open and Closed source services



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060317075459.GA24298>