On 03/05/2016 10:30 AM, Phil Bouchard wrote:
The code is much cleaner "but" since it allocates more proxies, despite using the fast pool allocator, that still slows down the overall performance:
make: auto_ptr: 26164754 ns shared_ptr: 27554248 ns block_ptr: 144391600 ns
new: auto_ptr: 22210062 ns shared_ptr: 46869206 ns block_ptr: 138204822 ns
I am able to speed it up to this point but the code is starting to be complex (by embedding the block_proxy into the block_base). make: auto_ptr: 28222750 ns shared_ptr: 29540799 ns block_ptr: 72347968 ns new: auto_ptr: 23409250 ns shared_ptr: 52830258 ns block_ptr: 66239225 ns So I will not commit the changes for the moment.