Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2003-01-30 10:16:11


"Peter Dimov" <pdimov_at_[hidden]> writes:

> From: "David Abrahams" <dave_at_[hidden]>
>>
>> Would you indulge me and try the benchmark again with the enclosed
>> shared_count patch applied and #undef BOOST_SP_USE_STD_ALLOCATOR? I
>> don't really know what's going on under the covers in the SGI
>> allocator; this is basically just the same hack I threw at the problem
>> years ago.
>
> I've taken the liberty to convert the patch into detail/quick_allocator.hpp.
> #define BOOST_SP_USE_QUICK_ALLOCATOR to make shared_ptr use it.
> shared_ptr_alloc_test.cpp has been updated, too. You can now compare
> quick_allocator vs SGI std::allocator yourself. :-)

I'm not all set up to run those tests and measure the times, which is
why I was hoping Philippe would check it out.

> quick_allocator doesn't compile on VC6 or Borland 5.5.1, though. I haven't
> investigated too deeply.

You must have changed the code I sent then. Works fine with VC6 for
me; borland has the usual problems with ICEs and scope qualification.

>> My patch doesn't pretend to work for a threaded implementation, so
>> only the no-threads test applies.
>
> I added a lightweight_mutex lock here and there, but haven't made any
> extensive multithreaded tests.

This was just a quick hack; I'm surprised you thought it was worthwhile
modifying your sources to accomodate it despite the lack of *any* test
data... or did you try it?

-- 
                       David Abrahams
   dave_at_[hidden] * http://www.boost-consulting.com
Boost support, enhancements, training, and commercial distribution

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk