Open MPI logo

Hardware Locality Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Hardware Locality Development mailing list

Subject: Re: [hwloc-devel] Memory affinity
From: Brice Goglin (Brice.Goglin_at_[hidden])
Date: 2011-02-28 12:21:42

Le 28/02/2011 17:51, Jeff Squyres a écrit :
> Someone just made a fairly disturbing statement to me in an Open MPI bug ticket: if you bind some memory to a particular NUMA node, and that memory later gets paged out, then it loses its memory binding information -- meaning that it can effectively get paged back in at any physical location. Possibly even on a different NUMA node. (he said this in the context of the Linux kernel)
> 1. I have no reason to doubt this person, but was wondering if someone could confirm this (for Linux).
> 2. If it is true for Linux, can it also happen on other OSs? Or do other OSs track memory binding information when pages are swapped out?

I don't think that's true. I have read the relevant kernel code quite
often (and I just checked again in 2.6.18 and latest git), it seems
"clear" to me that pages are allocated according to the memory
binding/policy during at least first touch, copy-on-write and swapping-back.

I think NUMA stuff is well maintained in Linux nowadays. It had bugs in
the past, but it's so important on today's machines that I don't think
such an obvious bug would remain unfixed.