Open MPI logo

Hardware Locality Development Mailing List Archives

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

Subject: [hwloc-devel] hwloc_alloc_membind
From: Karl Napf (karl.b.napf_at_[hidden])
Date: 2012-02-24 07:04:29


I've got a problem and a question regarding hwloc_alloc_membind (I'm
using hwloc V 1.4):

1. I want to allocate memory near a particular CPU by the call

hwloc_alloc_membind(topology, len, cpuset, HWLOC_MEMBIND_BIND,

I tried this on two Linux machines (single-core, Kernel 2.6.35 and
48-core NUMA, Kernel 3.0.0), but on both machines the call fails (it
works without HWLOC_MEMBIND_STRICT). Any ideas what's going wrong?
What surprises me is that the result of the call to
hwloc_fix_membind_cpuset in line 534 of bind.c is negated, even though
hwloc_fix_membind_cpuset returns 0 on success. Might this be a bug?

2. In another use case I want to allocate memory using the first-touch
policy (HWLOC_MEMBIND_FIRSTTOUCH). Does the cpuset passed to
hwloc_alloc_membind have any meaning in this case, since the memory is
not immediately bound to a node? What cpuset should be passed?

Thank you very much in advance for your help.

Kind regards