lkml.org 
[lkml]   [2004]   [Apr]   [20]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateTue, 20 Apr 2004 00:24:23 -0700
FromAndrew Morton <>
SubjectRe: slab-alignment-rework.patch in -mc
Manfred Spraul <manfred@colorfullife.com> wrote:
>
> > No best-guess must
>  >be made automatically by the slab code, rounding it to 16 bytes.
>  >
>  If you pass 0 as align to kmem_cache_create, then it's rounded to L2 
>  size. It's questionable if that's really the best thing - on 
>  uniprocessor, 16-byte might result is better performance - there is no 
>  risk of false sharing.

Just about every time we've cared to investigate slab alignment, we've
ended up removing SLAB_HWCACHE_ALIGN.  It seems inappropriate that _any_ of
the inode caches have this set, for example.

And this patch appears to have taken the effective size of the buffer_head
from 48 bytes up to 64, which hurts.

So I do think that we should either make "align=0" translate to "pack them
densely" or do the big sweep across all kmem_cache_create() callsites.

If the latter, while we're there, let's remove SLAB_HWCACHE_ALIGN where it
isn't obviously appropriate.  I'd imagine that being able to fit more inodes
into memory is a net win over the occasional sharing effect, for example.
-
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/

\
 
 \ /
  Last update: 2005-03-22 13:02    [from the cache]
©2003-2008