Mm, there is something wrong. I'm using two thread, the first one is bound on HWLOC_OBJ_PU number 2, the second one on HWLOC_OBJ_PU number 10,
and hwloc_get_last_cpu_location() give me the same CPU index for each thread.. ( machine is not SMT). But from linux "top" command I see CPU 2 and 10 working, so bind has worked well. 2011/8/10 Samuel Thibault <samuel.thiba...@inria.fr> > Gabriele Fatigati, le Wed 10 Aug 2011 15:41:19 +0200, a écrit : > > hwloc_cpuset_t set = hwloc_bitmap_alloc(); > > > > int return_value = hwloc_get_last_cpu_location(topology, set, > > HWLOC_CPUBIND_THREAD); > > > > printf( " bitmap_string: %s \n", bitmap_string[0]); > > > > give me: > > > > 0x00000800 > > > > converted in binary: > > > > 100000000000 > > > > So, CPU 0 I suppose, > > Do you mean linear 0 or physical 0? > > cpusets are always physical, 0x800 means CPU with physical number 11. > > Samuel > _______________________________________________ > hwloc-users mailing list > hwloc-us...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/hwloc-users > -- Ing. Gabriele Fatigati HPC specialist SuperComputing Applications and Innovation Department Via Magnanelli 6/3, Casalecchio di Reno (BO) Italy www.cineca.it Tel: +39 051 6171722 g.fatigati [AT] cineca.it