From: Ingo Molnar <mingo@elte.hu>
To: Paul Jackson <pj@sgi.com>
Cc: akpm@osdl.org, dgc@sgi.com, steiner@sgi.com, Simon.Derr@bull.net,
ak@suse.de, linux-kernel@vger.kernel.org, clameter@sgi.com
Subject: Re: [PATCH 1/5] cpuset memory spread basic implementation
Date: Mon, 6 Feb 2006 10:37:01 +0100 [thread overview]
Message-ID: <20060206093701.GA16357@elte.hu> (raw)
In-Reply-To: <20060206012726.e3c7a537.pj@sgi.com>
* Paul Jackson <pj@sgi.com> wrote:
> Ingo asked:
> > what type of objects need to be spread (currently)? It seems that your
> > current focus is on filesystem related objects:
>
> In addition to the filesystem related objects called out in this
> current patch set, we also have some xfs directory and inode caches.
> An xfs patch is winding its way toward lkml that will enhance the xfs
> cache creation calls a little, so that we can pick off the particular
> slab caches we need to be able to spread, while leaving other xfs slab
> caches with the default node-local policy.
>
> > does any userspace mapped memory need to be spread
>
> I don't think so, but I am not entirely confident of my answer
> tonight. I would expect the applications I care about to place mapped
> pages by being careful to make the first access (load or store) of
> that page from a cpu on the node where they wanted that page placed.
>
> So, yes, either mostly filesystem related objects, or all such.
>
> I'm not sure which.
if that's the case, then i think the best way to express this would be
to categorize file objects into two groups: "global" (spread-out) and
"local". Since filesystem space is already categorized per-project, this
is also practical for the admin to do.
i.e. mountpoints/directories/files would get a 'locality of reference'
attribute, and whenever the VFS allocates memory related to those files,
it will do so based on the attribute. (The attribute is inherited deeper
in the hierarchy - i.e. setting a 'global' attribute for a mountpoint
makes all files within that filesystem spread-out.)
this is much cleaner i think, and easy/intuitive to configure. This
would have performance advantages over your current approach as well:
e.g. /tmp would always stay "local", in all cpusets - while with your
current patch they are spread out. Bigger applications (like databases)
would set this attribute themselves - but sysadmins would do it too, on
shared boxes.
Ingo
next prev parent reply other threads:[~2006-02-06 9:38 UTC|newest]
Thread overview: 102+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-02-04 7:19 [PATCH 1/5] cpuset memory spread basic implementation Paul Jackson
2006-02-04 7:19 ` [PATCH 2/5] cpuset memory spread page cache implementation and hooks Paul Jackson
2006-02-04 23:49 ` Andrew Morton
2006-02-05 1:42 ` Paul Jackson
2006-02-05 1:54 ` Andrew Morton
2006-02-05 3:28 ` Christoph Lameter
2006-02-05 5:06 ` Andrew Morton
2006-02-05 6:08 ` Paul Jackson
2006-02-05 6:15 ` Andrew Morton
2006-02-05 6:28 ` Paul Jackson
2006-02-06 0:20 ` Paul Jackson
2006-02-06 5:51 ` Paul Jackson
2006-02-06 7:14 ` Pekka J Enberg
2006-02-06 7:42 ` Pekka J Enberg
2006-02-06 7:51 ` Pekka J Enberg
2006-02-06 17:32 ` Pekka Enberg
2006-02-04 7:19 ` [PATCH 3/5] cpuset memory spread slab cache implementation Paul Jackson
2006-02-04 23:49 ` Andrew Morton
2006-02-05 3:37 ` Christoph Lameter
2006-02-04 7:19 ` [PATCH 4/5] cpuset memory spread slab cache optimizations Paul Jackson
2006-02-04 23:50 ` Andrew Morton
2006-02-05 3:18 ` Paul Jackson
2006-02-04 23:50 ` Andrew Morton
2006-02-05 4:10 ` Paul Jackson
2006-02-04 7:19 ` [PATCH 5/5] cpuset memory spread slab cache hooks Paul Jackson
2006-02-06 4:37 ` Andrew Morton
2006-02-04 23:49 ` [PATCH 1/5] cpuset memory spread basic implementation Andrew Morton
2006-02-05 3:35 ` Christoph Lameter
2006-02-06 4:33 ` Andrew Morton
2006-02-06 5:50 ` Paul Jackson
2006-02-06 6:02 ` Andrew Morton
2006-02-06 6:17 ` Ingo Molnar
2006-02-06 7:22 ` Paul Jackson
2006-02-06 7:43 ` Ingo Molnar
2006-02-06 8:19 ` Paul Jackson
2006-02-06 8:22 ` Ingo Molnar
2006-02-06 8:40 ` Ingo Molnar
2006-02-06 9:03 ` Paul Jackson
2006-02-06 9:09 ` Ingo Molnar
2006-02-06 9:27 ` Paul Jackson
2006-02-06 9:37 ` Ingo Molnar [this message]
2006-02-06 20:22 ` Paul Jackson
2006-02-06 8:47 ` Paul Jackson
2006-02-06 8:51 ` Ingo Molnar
2006-02-06 9:09 ` Paul Jackson
2006-02-06 10:09 ` Andi Kleen
2006-02-06 10:11 ` Ingo Molnar
2006-02-06 10:16 ` Andi Kleen
2006-02-06 10:23 ` Ingo Molnar
2006-02-06 10:35 ` Andi Kleen
2006-02-06 14:42 ` Paul Jackson
2006-02-06 14:35 ` Paul Jackson
2006-02-06 16:48 ` Christoph Lameter
2006-02-06 17:11 ` Andi Kleen
2006-02-06 18:21 ` Christoph Lameter
2006-02-06 18:36 ` Andi Kleen
2006-02-06 18:43 ` Christoph Lameter
2006-02-06 18:48 ` Andi Kleen
2006-02-06 19:19 ` Christoph Lameter
2006-02-06 20:27 ` Paul Jackson
2006-02-06 18:43 ` Ingo Molnar
2006-02-06 20:01 ` Paul Jackson
2006-02-06 20:05 ` Ingo Molnar
2006-02-06 20:27 ` Christoph Lameter
2006-02-06 20:41 ` Ingo Molnar
2006-02-06 20:49 ` Christoph Lameter
2006-02-06 21:07 ` Ingo Molnar
2006-02-06 22:10 ` Christoph Lameter
2006-02-06 23:29 ` Ingo Molnar
2006-02-06 23:45 ` Paul Jackson
2006-02-07 0:19 ` Ingo Molnar
2006-02-07 1:17 ` David Chinner
2006-02-07 9:31 ` Andi Kleen
2006-02-07 11:53 ` Ingo Molnar
2006-02-07 12:14 ` Andi Kleen
2006-02-07 12:30 ` Ingo Molnar
2006-02-07 12:43 ` Andi Kleen
2006-02-07 12:58 ` Ingo Molnar
2006-02-07 13:14 ` Andi Kleen
2006-02-07 14:11 ` Ingo Molnar
2006-02-07 14:23 ` Andi Kleen
2006-02-07 17:11 ` Christoph Lameter
2006-02-07 17:29 ` Andi Kleen
2006-02-07 17:39 ` Christoph Lameter
2006-02-07 17:10 ` Christoph Lameter
2006-02-07 17:28 ` Andi Kleen
2006-02-07 17:42 ` Christoph Lameter
2006-02-07 17:51 ` Andi Kleen
2006-02-07 17:06 ` Christoph Lameter
2006-02-07 17:26 ` Andi Kleen
2006-02-04 23:50 ` Andrew Morton
2006-02-04 23:57 ` David S. Miller
2006-02-06 4:37 ` Andrew Morton
2006-02-06 6:02 ` Ingo Molnar
2006-02-06 6:56 ` Paul Jackson
2006-02-06 7:08 ` Andrew Morton
2006-02-06 7:39 ` Ingo Molnar
2006-02-06 8:22 ` Paul Jackson
2006-02-06 8:35 ` Paul Jackson
2006-02-06 9:32 ` Paul Jackson
2006-02-06 9:57 ` Andrew Morton
2006-02-06 9:18 ` Simon Derr
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=20060206093701.GA16357@elte.hu \
--to=mingo@elte.hu \
--cc=Simon.Derr@bull.net \
--cc=ak@suse.de \
--cc=akpm@osdl.org \
--cc=clameter@sgi.com \
--cc=dgc@sgi.com \
--cc=linux-kernel@vger.kernel.org \
--cc=pj@sgi.com \
--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.