Boost logo

Boost-Build :

From: Alex Besogonov (cyberax_at_[hidden])
Date: 2006-05-17 11:52:17


Vladimir Prus wrote:
>> I ended up writing my own implementation. It uses refcounting, custom
>> allocation, provides iterators and works a little bit faster than list.h
> Did you profile this?
Yes, I constantly profile my code with Rational Quantify. That does
wonders for performance

>> >> 2. A good hash_map implementation. Currently I'm using stdext::hash_map
>> >> on MSVC and std::map on other compilers. It would be better to have
>> >> in-tree hash_map implementation.
>> > I think that Boost.Jam::hash.h is pretty good one ;-)
>> Not really, it's not very fast
> Hmm... there were some smarts, so I'm a bit surprised to hear that.
BJam's hashmap is a straightforward canonic hashmap. Google's hashmap
has some clever tricks (minimizing cache misses, better collision
resolution, etc) so sometimes it works MUCH faster.

BTW, Google has a pure C version of their hashtable. It might be
possible to plug it into the existing BJam code and gain some
performance benefits.

>> > I'd really want to keep dependencies to the minimum.
>> We can just include them into BJamC++ source tree.
> Well, if the size of that code is reasonable (i.e. it's not half of boost
> headers), that would be fine.
It's about 60 kilobytes.

-- 
With respect,
             Alex Besogonov (cyberax_at_[hidden])

Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk