George,

about the process binding part

On 4/13/2016 7:32 AM, George Bosilca wrote:
Also my processes, despite the fact that I asked for 1 per node, are not bound 
to the first core. Shouldn’t we release the process binding when we know there 
is a single process per node (as in the above case) ?
did you expect the tasks are bound to the first *core* on each node ?

i would expect the tasks are bound to the first *socket* on each node.

(since we do not know how many (OpenMP or other) threads will be used by the application, --bind-to socket is a good policy imho. in this case (one task per node), no binding at all would mean the task can migrate from one socket to the other, and/or OpenMP threads are bound accross sockets. That would trigger some NUMA effects (better bandwidth if memory is locally accessed, but worst performance
is memory is allocated only on one socket).
so imho, --bind-to socket is still my preferred policy, even if there is only one MPI task per node.

Cheers,

Gilles

Reply via email to