Thinking more about it, I don't know if it's a good idea. The alternatives for the value of a nodeset containing the whole memory when there are no NUMA nodes are: 1) full nodeset (current behavior). The behavior is thus different in non-NUMA and NUMA cases. It makes make check a bit more tricky, but this may not matter in real applications unless they really play a lot with nodesets (compare them, ...). 2) Only mark first bit of the nodeset. That's what libnuma does. Convenient in some cases, maybe not in others. 3) Mark nothing since there are actually no NUMA nodes in the machine.
The main difference between 1/2 and 3 is that the latter is really a set of existing nodes, while the formers are a set of physical nodes OR the whole memory if the machine isn't NUMA. Opinions? Brice Le 05/10/2010 10:03, bgog...@osl.iu.edu a écrit : > Author: bgoglin > Date: 2010-10-05 04:03:06 EDT (Tue, 05 Oct 2010) > New Revision: 2553 > URL: https://svn.open-mpi.org/trac/hwloc/changeset/2553 > > Log: > Specify in the API that we use a full nodeset when manipulating the whole > memory of a machine without any NUMA node > Text files modified: > trunk/include/hwloc.h | 4 ++++ > 1 files changed, 4 insertions(+), 0 deletions(-) > > Modified: trunk/include/hwloc.h > ============================================================================== > --- trunk/include/hwloc.h (original) > +++ trunk/include/hwloc.h 2010-10-05 04:03:06 EDT (Tue, 05 Oct 2010) > @@ -81,6 +81,10 @@ > /** \brief A node set is a bitmap whose bits are set according to NUMA > memory node physical OS indexes. > * > * It may be consulted and modified with the bitmap API as any > ::hwloc_bitmap_t (see hwloc/bitmap.h). > + * > + * If there are no NUMA nodes in the system (when the whole memory is > considered > + * as a single memory bank), the nodeset may be either empty (no memory > selected) > + * or full (whole memory selected). > */ > typedef hwloc_bitmap_t hwloc_nodeset_t; > /** \brief A non-modifiable ::hwloc_nodeset_t. > _______________________________________________ > hwloc-svn mailing list > hwloc-...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/hwloc-svn >