Le 28/02/2011 21:35, Jeff Squyres a écrit :
> On Feb 28, 2011, at 3:31 PM, Brice Goglin wrote:
>>>>> That would seem to imply that I should always hwloc_set_area_membind() if I want it to persist beyond any potential future swapping.
>> The kernel only looks at the current virtual memory area policy. If you
>> didn't call set_area_membind, the default policy is used. It doesn't
>> care about the location of the old page before swap-out.
> I'm not sure exactly what you mean here -- if I call hwloc_set_area_membind() to bind an area to numa node X, and then area pages get swapped out, then swapped back in, will be guaranteed to be swapped back in somewhere on numa node X? (I don't care if they're exactly the same physical page)
Yes. set_area_membind() will make things work as you wish.
"No set_area_membind()" lets pages go on random NUMA nodes (but still
*preferably* near the process that first-touches them or swaps them back
in). That's what I call "default policy".