Hi Brice,

but in the manual is not written that get_cpubind() returns the logical OR of the binding of all threads... I ever understand that returns the bind of the calloer, where the caller can be process or thread..

I'm mixing bind of process and threads, and I've noted that if the process and thread are on the same NUMA node, works well, also on different cores.

If the NUMA node of process is different of NUMA node of threads, there is a problem.



2011/9/12 Brice Goglin <Brice.Goglin@inria.fr>
Le 12/09/2011 13:29, Gabriele Fatigati a écrit :
Hi Birce,

I'm so  confused..

I'm binding MPI processes with set_cpu_bind and it works well. The problem is when I  try to bind process and threads.

It seem that thread process influence bind of main thread.

And from hwloc manual:


hwloc_set_cpubind()

Bind current process or thread on cpus given in bitmap set.

Why you are saying tha process bind is not possible? I'm using it and it work well!

It worked because you never mixed it with single thread binding. If you bind process X to coreA and then thread Y of process X to coreB, what you should now see with get_cpubind is that process X is now bound to cores A+B, thread Y to B, and all other threads to A.

Brice


_______________________________________________
hwloc-users mailing list
hwloc-users@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