Re: [Q] Default SLAB allocator

From: Eric Dumazet
Date: Wed Oct 17 2012 - 15:13:31 EST


On Wed, 2012-10-17 at 11:45 -0700, Tim Bird wrote:

> 8G is a small web server? The RAM budget for Linux on one of
> Sony's cameras was 10M. We're not merely not in the same ballpark -
> you're in a ballpark and I'm trimming bonsai trees... :-)
>

Even laptops in 2012 have +4GB of ram.

(Maybe not Sony laptops, I have to double check ?)

Yes, servers do have more ram than laptops.

(Maybe not Sony servers, I have to double check ?)

> > # grep Slab /proc/meminfo
> > Slab: 351592 kB
> >
> > # egrep "kmalloc-32|kmalloc-16|kmalloc-8" /proc/slabinfo
> > kmalloc-32 11332 12544 32 128 1 : tunables 0 0 0 : slabdata 98 98 0
> > kmalloc-16 5888 5888 16 256 1 : tunables 0 0 0 : slabdata 23 23 0
> > kmalloc-8 76563 82432 8 512 1 : tunables 0 0 0 : slabdata 161 161 0
> >
> > Really, some waste on these small objects is pure noise on SMP hosts.
> In this example, it appears that if all kmalloc-8's were pushed into 32-byte slabs,
> we'd lose about 1.8 meg due to pure slab overhead. This would not be noise
> on my system.


I said :

<quote>
I would remove small kmalloc-XX caches, as sharing a cache line
is sometime dangerous for performance, because of false sharing.

They make sense only for very small hosts
</quote>

I think your 10M cameras are very tiny hosts.

Using SLUB on them might not be the best choice.

First time I ran linux, years ago, it was on 486SX machines with 8M of
memory (or maybe less, I dont remember exactly). But I no longer use
this class of machines with recent kernels.

# size vmlinux
text data bss dec hex filename
10290631 1278976 1896448 13466055 cd79c7 vmlinux


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/