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. _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost