Boost logo

Boost :

Subject: Re: [boost] [Root Pointer] Benchmark
From: Phil Bouchard (philippeb8_at_[hidden])
Date: 2016-03-14 07:21:40


On 03/13/2016 08:11 PM, Phil Bouchard wrote:
> So I renamed block_ptr<> to root_ptr<> and the code is accessible from
> here:
> https://github.com/philippeb8/root_ptr
>
> I am sorry but I made a mistake in the benchmark again. root_ptr<>
> wasn't using the fast allocator. Now it does and the new benchmark is:
>
> unique_ptr (new): 42.3736
> unique_ptr (make_unique): 59.6104
> shared_ptr (new): 69.9175
> shared_ptr (make_shared): 46.9994
> shared_ptr (allocate_shared_noinit): 31.0648
> root_ptr (new): 30.5549

I just re-added the unification of proxies so now root_ptr<>s can be
unified:

https://github.com/philippeb8/root_ptr/blob/master/example/root_ptr_test1.cpp#L63

It is pretty much bullet-proof now functionality wise. But I still need
to clean up the code.

Now I have a question: in my code I use a series of const_casts and
mutable qualifiers. Does that automatically removes its eligibility for
eventual inclusion into Boost?

https://github.com/philippeb8/root_ptr/blob/master/include/boost/smart_ptr/root_ptr.hpp#L67

Regards,
-Phil


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