Open MPI logo

Hardware Locality Users' Mailing List Archives

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

Subject: [hwloc-users] on using hwloc_get_area_membind_nodeset
From: Alfredo Buttari (alfredo.buttari_at_[hidden])
Date: 2011-07-05 14:13:08


Hi all,
if I understand correctly this routine can tell on which NUMA node(s)
a specific memory area resides, is this correct?
Will this routine work on any memory area allocated with any
allocation routine other than those provided by hwloc?

Can anybody provide a simple example of usage of this routine?

I tried something simple like this

    hwloc_topology_t topology;
    int *a;
    hwloc_membind_policy_t *policy;
    hwloc_nodeset_t nodeset;

    hwloc_topology_init(&topology);
    hwloc_topology_load(topology);

    a = (int *) malloc(1000*sizeof(int));
    nodeset = hwloc_bitmap_alloc();
    ret = hwloc_get_area_membind_nodeset( topology, a,
1000*sizeof(int), nodeset, policy, HWLOC_MEMBIND_STRICT);
    printf("---> %d\n",ret);

    hwloc_topology_destroy(topology);

but I'm always getting a -1 in ret. What's wrong?

Thanks in advance

Alfredo