Brice Goglin, le Wed 22 Sep 2010 10:38:38 +0200, a écrit :
> * Some OS bind the process too when you bind memory.
Not for all kinds of memory bindings. For now, nothing that has been
commited does that, it's only the remaining TODOs. The bindings in
question are policy binding, i.e. not binding some given area or
explicitly allocating some given size.
> + Add a flag such as HWLOC_MEMBIND_EVEN_IF_FAR_FROM_PROCESS
The length of the word tells me that won't be convenient :)
> so that the user can explicitly refuse memory binding if it may break
> process binding
> + Drop hwloc_set_membind on these OSes and add a
> hwloc_set_cpumembind() to bind both
That's the solution I prefer most as it directly maps to existing OS
> + Make both process and memory binding do nothing if the STRICT flag
> is given. But I'd rather not play too much with this flag.
Yes. We should not put too vague semantic on this.
> + Drop support for memory binding on these OS.
Not all support, just setting the policy.
> + Drop these OS.
> * cpuset and nodeset structures are the same, they are both manipulated
> with hwloc_cpuset_foo functions. So maybe rename into hwloc_set_t and
> hwloc_set_foo functions. With #define and aliases to not break API/ABIs.
I'd say so.