Brice Goglin, le Mon 19 Nov 2012 21:09:33 +0100, a écrit :
> hwloc_bitmap_t bitmap = hwloc_bitmap_alloc();
> hwloc_bitmap_set_only(bitmap, i);
> hwloc_set_thread_cpubind(topology, m_threads[i], bitmap, 0);
> hwloc_bitmap_free(bitmap);

Or perhaps 

hwloc_set_thread_cpubind(topology, m_threads[i],
        hwloc_get_obj_by_type(topology, HWLOC_OBJ_CORE, i),
        0);

if you want to get core number in logical order rather than physical
order (or use HWLOC_OBJ_PU if that's the hardware threads you want to
get).

> To get the number of processors with hwloc, use something like:
>   hwloc_get_nbobjs_by_type(topology, HWLOC_OBJ_CORE);
> or
>   hwloc_get_nbobjs_by_type(topology, HWLOC_OBJ_PU);
> Then it depends if you want real cores (the former or hardware threads (the
> latter).

Samuel

Reply via email to