lkml.org 
[lkml]   [2005]   [Dec]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH RT 00/02] SLOB optimizations

* Eric Dumazet <dada1@cosmosbay.com> wrote:

> >while it could possibly be cleaned up a bit, it's one of the
> >best-optimized subsystems Linux has. Most of the "unnecessary
> >complexity" in SLAB is related to a performance or a debugging feature.
> >Many times i have looked at the SLAB code in a disassembler, right next
> >to profile output from some hot workload, and have concluded: 'I couldnt
> >do this any better even with hand-coded assembly'.
>
> Well, I miss a version of kmem_cache_alloc()/kmem_cache_free() that
> wont play with IRQ masking.

sure, but adding this sure wont reduce complexity ;)

> The local_irq_save()/local_irq_restore() pair is quite expensive and
> could be avoided for several caches that are exclusively used in
> process context.

in any case, on sane platforms (i386, x86_64) an irq-disable is
well-optimized in hardware, and is just as fast as a preempt_disable().

Combined with the fact that CLI/STI has no register side-effects, it can
even be faster/cheaper, on x86 at least.

Ingo
-
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-12-21 08:47    [W:0.175 / U:0.304 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site