>>105685755
Atomic instructions are like 6 ns each on Intel CPUs. Half of that on AMDs.
>>105686737
>Why isn't the control block prefixed to the T object?
It can be if you create object using make_shared. But shared pointers are supposed to support taking ownership of externally created objects too.