At 06:23 AM 1/30/2003, Peter Dimov wrote:
>From: "David B. Held" <[EMAIL PROTECTED]>
>> "Philippe A. Bouchard" <[EMAIL PROTECTED]> wrote in message
>> b19hhg$i2m$[EMAIL PROTECTED]">news:b19hhg$i2m$[EMAIL PROTECTED]...
>> > [...]
>> > list shifted_ptr<T> took  7.1966276647 seconds to reconstruct 2000
>times.
>> > [...]
>> > list shared_ptr<T> took 14.0157271000 seconds to reconstruct 2000 times.
>>
>> Looks like your lead is getting eroded by the day. ;)  And that's just
>> with a quick hack.  You better be worried about a serious small
>> object allocator.
>
>To be fair, a factor of two improvement cannot just be shrugged off. But one
>point to keep in mind is that
>
>shared_ptr<X> px(new X);
>
>performs two allocations. We can optimize the count allocation until we're
>blue in the face but in a real project the whole expression will probably
>remain a bottleneck; so it's likely that X will acquire a class-specific
>operator new. And a X with a class-specific new can no longer be used with
>shifted_ptr.

I read a paper yesterday from the latest OOPSLA proceedings 
that argued that a class-specific new is almost never a win
compared to a high-quality general purpose allocator like
LEA.

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to