Re: manual page migration -- issue list

Ray Bryant
2005-02-16T03:56:49Z

Paul Jackson wrote:
> A couple comments in response to Andi's earlier post on the
> related lkml thread ...
>
> Andi wrote:
>
>>Sorry, but the only real difference between your API and mbind is that
>>yours has a pid argument.
>
>
> One other difference shouts out at me. I am unsure of my reading of
> Andi's post, so I can't tell if (1) it was so obvious Andi didn't
> bother mentioning it, or (2) he doesn't see it as a difference.
>
> That difference is this.
>
> The various numa mechanisms, such as mbind, set_mempolicy and cpusets,
> as well as the simple first touch that MPI jobs rely on, are all about
> setting a policy for where future allocations should go.
>
> This page migration mechanism is all about changing the placement of
> physical pages of ram that are currently allocated.
>
> At any point in time, numa policy guides future allocations, and page
> migration redoes past allocations.
>

Very nicely said, thanks. And the concern I have been trying to raise with
Andi is:

How does that page migration mechanism redo a past allocation using
a memory policy if the orginal allocation was not done with a memory
policy, but instead done via first touch?

>
> Andi wrote:
>
>>My thinking is the simplest way to handle that is to have a call that just
>>migrates everything.
>
>
> I might have ended up at the same place, not sure, when I just suggested
> in my previous post:
>
> pj wrote:
>
>>As a straw man, let me push the factored migration call to the
>>extreme, and propose a call:
>>
>> sys_page_migrate(pid, oldnode, newnode)
>>
>>that moves any physical page in the address space of pid that is
>>currently located on oldnode to newnode.
>
>
>

--
-----------------------------------------------
Ray Bryant
512-453-9679 (work) 512-507-7807 (cell)
raybry@sgi.com raybry@austin.rr.com
The box said: "Requires Windows 98 or better",
so I installed Linux.
-----------------------------------------------