On Tue, 16 Jun 2015, Jesper Dangaard Brouer wrote:
> It is very important that everybody realizes that the save+restore
> variant is very expensive, this is key:
>
> CPU: i7-4790K CPU @ 4.00GHz
> * local_irq_{disable,enable}: 7 cycles(tsc) - 1.821 ns
> * local_irq_{save,restore} : 37 cycles(tsc) - 9.443 ns
>
> Even if EVERY object need to call slowpath/__slab_free() it will be
> faster than calling the fallback. Because I've demonstrated the call
> this_cpu_cmpxchg_double() costs 9 cycles.
But the cmpxchg also stores a value. You need to add the cost of the store
to the cycles.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html