Messages in this thread | | | Date | Mon, 9 Jul 2007 14:04:24 +0300 | From | "Pekka Enberg" <> | Subject | Re: [patch 09/10] Remove the SLOB allocator for 2.6.23 |
| |
Hi Nick,
On 7/9/07, Nick Piggin <nickpiggin@yahoo.com.au> wrote: > SLOB contains several significant O(1) and also O(n) memory savings that > are so far impossible-by-design for SLUB. They are: slab external > fragmentation is significantly reduced; kmalloc internal fragmentation is > significantly reduced; order of magnitude smaller kmem_cache data type; > order of magnitude less code...
I assume with "slab external fragmentation" you mean allocating a whole page for a slab when there are not enough objects to fill the whole thing thus wasting memory? We could try to combat that by packing multiple variable-sized slabs within a single page. Also, adding some non-power-of-two kmalloc caches might help with internal fragmentation.
In any case, SLUB needs some serious tuning for smaller machines before we can get rid of SLOB. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |