Re: [PATCH] SLUB use cmpxchg_local

Christoph Lameter
2007-08-21T23:35:41Z

On Tue, 21 Aug 2007, Mathieu Desnoyers wrote:

> * cmpxchg_local Slub test
> kmalloc(8) = 83 cycles kfree = 363 cycles
> kmalloc(16) = 85 cycles kfree = 372 cycles
> kmalloc(32) = 92 cycles kfree = 377 cycles
> kmalloc(64) = 115 cycles kfree = 397 cycles
> kmalloc(128) = 179 cycles kfree = 438 cycles

So for consecutive allocs of small slabs up to 128 bytes this effectively
doubles the speed of kmalloc.

> kmalloc(256) = 314 cycles kfree = 564 cycles
> kmalloc(512) = 398 cycles kfree = 615 cycles
> kmalloc(1024) = 573 cycles kfree = 745 cycles

Less of a benefit.

> kmalloc(2048) = 629 cycles kfree = 816 cycles

Allmost as before.

> kmalloc(4096) = 473 cycles kfree = 548 cycles
> kmalloc(8192) = 659 cycles kfree = 745 cycles
> kmalloc(16384) = 724 cycles kfree = 843 cycles

Page allocator pass through measurements.