From: Robin Holt <holt@sgi.com>
To: Andi Kleen <ak@muc.de>
Cc: Marcelo Tosatti <marcelo.tosatti@cyclades.com>,
Ray Bryant <raybry@sgi.com>, Ray Bryant <raybry@austin.rr.com>,
linux-mm <linux-mm@kvack.org>,
linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [RFC 2.6.11-rc2-mm2 0/7] mm: manual page migration -- overview
Date: Mon, 14 Feb 2005 10:38:44 -0600 [thread overview]
Message-ID: <20050214163844.GB8576@lnx-holt.americas.sgi.com> (raw)
In-Reply-To: <20050212212914.GA51971@muc.de>
On Sat, Feb 12, 2005 at 10:29:14PM +0100, Andi Kleen wrote:
> On Sat, Feb 12, 2005 at 01:54:26PM -0200, Marcelo Tosatti wrote:
> > On Sat, Feb 12, 2005 at 12:17:25PM +0100, Andi Kleen wrote:
> > > Ray Bryant <raybry@sgi.com> writes:
> > > > set of pages associated with a particular process need to be moved.
> > > > The kernel interface that we are proposing is the following:
> > > >
> > > > page_migrate(pid, va_start, va_end, count, old_nodes, new_nodes);
> > >
> > > [Only commenting on the interface, haven't read your patches at all]
> > >
> > > This is basically mbind() with MPOL_F_STRICT, except that it has a pid
> > > argument. I assume that's for the benefit of your batch scheduler.
> >
> > As far as I understand mbind() is used to set policies to given memory
> > regions, not move memory regions?
>
> There is a MPOL_F_STRICT flag. Currently it fails when the memory
> is not on the right node(s) and the flag is set, but it could as well move.
>
> In fact Steve Longerbeam already did a patch to move in this case,
> but it hasn't been merged yet for some reasons.
>
>
> > > mmap in parallel. The only way I can think of to do this would be to
> > > check for changes in maps after a full move and loop, but then you risk
> > > livelock.
> >
> > True.
> >
> > There is no problem, however, if all threads beloging to the process are stopped,
> > as Ray mentions.
> >
> > So, there wont be memory mapping changes happening at the same time.
>
> Ok. But it's still quite ugly to read /proc/*/maps for this.
>
> >
> > > And you cannot also just specify va_start=0, va_end=~0UL because that
> > > would make the node arrays grow infinitely.
> > >
> > > Also is there a good use case why the batch scheduler should only
> > > move individual areas in a process around, not the full process?
> >
> > Quoting him:
> >
> > "In addition to its use by batch schedulers, we also envision that
> > this facility could be used by a program to re-arrange the allocation
> > of its own pages on various nodes of the NUMA system, most likely
> > to optimize performance of the application during different phases
> > of its computation."
> >
> > Seems doable.
>
> That is what mbind() already supports, just someone needs to hook up
> the page moving code with MPOL_F_STRICT.
But how do you use mbind() to change the memory placement for an anonymous
private mapping used by a vendor provided executable with mbind()?
Robin
--
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:"aart@kvack.org"> aart@kvack.org </a>
next prev parent reply other threads:[~2005-02-14 16:38 UTC|newest]
Thread overview: 103+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-02-12 3:25 Ray Bryant
2005-02-12 3:25 ` [RFC 2.6.11-rc2-mm2 1/7] mm: manual page migration -- cleanup 1 Ray Bryant
2005-02-12 3:25 ` [RFC 2.6.11-rc2-mm2 2/7] mm: manual page migration -- cleanup 2 Ray Bryant
2005-02-12 3:25 ` [RFC 2.6.11-rc2-mm2 3/7] mm: manual page migration -- cleanup 3 Ray Bryant
2005-02-12 3:26 ` [RFC 2.6.11-rc2-mm2 4/7] mm: manual page migration -- cleanup 4 Ray Bryant
2005-02-12 3:26 ` [RFC 2.6.11-rc2-mm2 5/7] mm: manual page migration -- cleanup 5 Ray Bryant
2005-02-12 3:26 ` [RFC 2.6.11-rc2-mm2 6/7] mm: manual page migration -- add node_map arg to try_to_migrate_pages() Ray Bryant
2005-02-12 3:26 ` [RFC 2.6.11-rc2-mm2 7/7] mm: manual page migration -- sys_page_migrate Ray Bryant
2005-02-12 8:08 ` Paul Jackson
2005-02-12 12:34 ` Arjan van de Ven
2005-02-12 14:48 ` Andi Kleen
2005-02-12 20:51 ` Paul Jackson
2005-02-12 21:04 ` Dave Hansen
2005-02-12 21:44 ` Paul Jackson
2005-02-14 13:52 ` Robin Holt
2005-02-14 18:50 ` Dave Hansen
2005-02-14 22:01 ` Robin Holt
2005-02-14 22:22 ` Dave Hansen
2005-02-15 10:50 ` Robin Holt
2005-02-15 15:38 ` Paul Jackson
2005-02-15 18:39 ` Dave Hansen
2005-02-15 18:54 ` Ray Bryant
2005-02-15 15:49 ` Paul Jackson
2005-02-15 16:21 ` Robin Holt
2005-02-15 16:35 ` Paul Jackson
2005-02-15 18:59 ` Robin Holt
2005-02-15 20:54 ` Dave Hansen
2005-02-15 21:58 ` Peter Chubb
2005-02-15 22:10 ` Paul Jackson
2005-02-15 22:51 ` Robin Holt
2005-02-15 23:00 ` Paul Jackson
2005-02-15 23:21 ` Ray Bryant
2005-02-15 23:51 ` Martin J. Bligh
2005-02-16 0:38 ` Ray Bryant
2005-02-16 0:44 ` Andi Kleen
2005-02-16 0:54 ` Martin J. Bligh
2005-02-16 10:02 ` Andi Kleen
2005-02-16 15:21 ` Martin J. Bligh
2005-02-16 15:49 ` Paul Jackson
2005-02-16 16:08 ` Andi Kleen
2005-02-16 16:55 ` Martin J. Bligh
2005-02-16 23:35 ` Ray Bryant
2005-02-16 0:50 ` Martin J. Bligh
2005-02-15 15:40 ` Paul Jackson
2005-02-12 11:17 ` [RFC 2.6.11-rc2-mm2 0/7] mm: manual page migration -- overview Andi Kleen
2005-02-12 12:12 ` Robin Holt
2005-02-14 19:18 ` Andi Kleen
2005-02-15 1:02 ` Steve Longerbeam
2005-02-12 15:54 ` Marcelo Tosatti
2005-02-12 16:18 ` Marcelo Tosatti
2005-02-12 21:29 ` Andi Kleen
2005-02-14 16:38 ` Robin Holt [this message]
2005-02-14 19:15 ` Andi Kleen
2005-02-14 23:49 ` Ray Bryant
2005-02-15 3:16 ` Paul Jackson
2005-02-15 9:14 ` Ray Bryant
2005-02-15 15:21 ` Paul Jackson
2005-02-15 0:29 ` Ray Bryant
2005-02-15 11:05 ` Robin Holt
2005-02-15 17:44 ` Ray Bryant
2005-02-15 11:53 ` Andi Kleen
2005-02-15 12:15 ` Robin Holt
2005-02-15 15:07 ` Paul Jackson
2005-02-15 15:11 ` Paul Jackson
2005-02-15 18:16 ` Ray Bryant
2005-02-15 18:24 ` Andi Kleen
2005-02-15 12:14 ` [RFC 2.6.11-rc2-mm2 0/7] mm: manual page migration -- overview II Andi Kleen
2005-02-15 18:38 ` Ray Bryant
2005-02-15 21:48 ` Andi Kleen
2005-02-15 22:37 ` Paul Jackson
2005-02-16 3:44 ` Ray Bryant
2005-02-17 23:54 ` Andi Kleen
2005-02-18 8:38 ` Ray Bryant
2005-02-18 13:02 ` Andi Kleen
2005-02-18 16:18 ` Paul Jackson
2005-02-18 16:20 ` Paul Jackson
2005-02-18 16:22 ` Paul Jackson
2005-02-18 16:25 ` Paul Jackson
2005-02-19 1:01 ` Ray Bryant
2005-02-20 21:49 ` Andi Kleen
2005-02-20 22:30 ` Paul Jackson
2005-02-20 22:35 ` Andi Kleen
2005-02-21 1:50 ` Paul Jackson
2005-02-21 7:39 ` Ray Bryant
2005-02-21 7:29 ` Ray Bryant
2005-02-21 9:57 ` Andi Kleen
2005-02-21 12:02 ` Paul Jackson
2005-02-21 8:42 ` Ray Bryant
2005-02-21 12:10 ` Andi Kleen
2005-02-21 17:12 ` Ray Bryant
2005-02-22 18:03 ` Andi Kleen
2005-02-23 3:33 ` Ray Bryant
2005-02-22 6:40 ` Ray Bryant
2005-02-22 18:01 ` Andi Kleen
2005-02-22 18:45 ` Ray Bryant
2005-02-22 18:49 ` Andi Kleen
2005-02-26 18:22 ` Ray Bryant
2005-02-22 22:04 ` Ray Bryant
2005-02-22 6:44 ` Ray Bryant
2005-02-21 4:20 ` Ray Bryant
2005-02-18 16:58 ` Ray Bryant
2005-02-18 17:02 ` Ray Bryant
2005-02-18 17:11 ` Ray Bryant
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=20050214163844.GB8576@lnx-holt.americas.sgi.com \
--to=holt@sgi.com \
--cc=ak@muc.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=marcelo.tosatti@cyclades.com \
--cc=raybry@austin.rr.com \
--cc=raybry@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox