Open MPI logo

Hardware Locality Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |  

This web mail archive is frozen.

This page is part of a frozen web archive of this mailing list.

You can still navigate around this archive, but know that no new mails have been added to it since July of 2016.

Click here to be taken to the new web archives of this list; it includes all the mails that are in this frozen archive plus all new mails that have been sent to the list since it was migrated to the new archives.

Subject: Re: [hwloc-devel] Docs updates
From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2011-01-11 17:04:41

On Jan 6, 2011, at 4:57 PM, Brice Goglin wrote:

> Is HWLOC_MEMBIND_MIXED defined somewhere?

(sorry for the latency; I got distracted by other things)

Sorry -- Samuel and I talked about this one in IM. I assumed that Samuel would be adding it. :-)

Even though we don't currently need it anywhere, we need to provide the *possibility* for this corner case.

> I am not sure about "on next touch ... move and rebind" in the NEXTTOUCH
> description.
>> From what I see, on solaris, it's only supported when we bind to the
> entire machine. So there's no binding, only moving there.
> Linux doesn't support NEXTTOUCH yet. I think most implementations I have
> seen would change the binding immediately and only move the page
> (according to the binding) on next-touch.
> In short, my feeling is that it's more "bind but only lazily move pages
> on next touch" (compared to MIGRATE = "bind and move everything now",
> and BIND = "bind but don't move already faulted pages").

Hmm; I thought I said that, given the "On next touch of each page..." phrase:

  HWLOC_MEMBIND_NEXTTOUCH = 5 /**< \brief On next touch of
                                         * each page in the existing
                                         * allocated memory, migrate
                                         * (i.e., move and re-bind) it
                                         * to the local NUMA node of
                                         * the thread where the memory
                                         * reference occurred.
                                         * \hideinitializer */

So how's this:

As each page bound with this policy is touched, it is moved from its current location to the local NUMA node of the thread where the memory reference occurred (if it needs to be moved at all).

Jeff Squyres
For corporate legal information go to: