All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andi Kleen <ak@suse.de>
To: Christoph Lameter <clameter@engr.sgi.com>
Cc: steiner@sgi.com, linux-mm@kvack.org, alokk@calsoftinc.com
Subject: Re: [RFC] Make the slab allocator observe NUMA policies
Date: Mon, 14 Nov 2005 19:44:33 +0100	[thread overview]
Message-ID: <200511141944.33478.ak@suse.de> (raw)
In-Reply-To: <Pine.LNX.4.62.0511141002050.353@schroedinger.engr.sgi.com>

On Monday 14 November 2005 19:05, Christoph Lameter wrote:
> On Sun, 13 Nov 2005, Andi Kleen wrote:
> 
> > On Friday 11 November 2005 18:40, Christoph Lameter wrote:
> > 
> > > Hmm. Thats not easy to do since the slab allocator is managing the pages 
> > > in terms of the nodes where they are located. The whole thing is geared to 
> > > first inspect the lists for one node and then expand if no page is 
> > > available.
> > 
> > Yes, that's fine - as long as it doesn't allocate too many 
> > pages at one go (which it doesn't) then the interleaving should
> > even the allocations out at page level.
> 
> The slab allocator may allocate pages higher orders which need to 
> be physically continuous. 

> Any idea how to push this to the page allocation within the slab without 
> rearchitecting the thing?

I believe that's only a small fraction of the allocations, for where
the slabs are big enough to be an significant part of the page.

Proof: VM breaks down with higher orders. If slab would use them
all the time it would break down too. It doesn't. Q.E.D ;-)

Also looking at the objsize colum in /proc/slabinfo most slabs are
significantly smaller than a page and the higher kmalloc slabs don't have 
too many objects, so slab shouldn't do this too often.

You're right they're a problem, but perhaps they can be just ignored
(like if they are <20% of the allocations the inbalance resulting
from them might not be too bad)

Another way (as a backup option) would be to RR them as higher order pages, 
but that would need new special code.

-Andi

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2005-11-14 18:44 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-11-10 22:04 [RFC] Make the slab allocator observe NUMA policies Christoph Lameter
2005-11-11  3:06 ` Andi Kleen
2005-11-11 17:40   ` Christoph Lameter
2005-11-13 11:22     ` Andi Kleen
2005-11-14 18:05       ` Christoph Lameter
2005-11-14 18:44         ` Andi Kleen [this message]
2005-11-14 19:08           ` Christoph Lameter
2005-11-15  3:34             ` Andi Kleen
2005-11-15 16:43               ` Christoph Lameter
2005-11-15 16:51                 ` Andi Kleen
2005-11-15 16:55                   ` Christoph Lameter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200511141944.33478.ak@suse.de \
    --to=ak@suse.de \
    --cc=alokk@calsoftinc.com \
    --cc=clameter@engr.sgi.com \
    --cc=linux-mm@kvack.org \
    --cc=steiner@sgi.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.