Ben,
in my case (two sockets, 6 cores per socket, 2 threads per core) and
with Open MPI master
$ cat rf
rank 0=n0 slot=0
rank 1=n0 slot=12
rank 2=n0 slot=6
rank 3=n0 slot=18
$ mpirun -np 4 --rankfile rf --mca rmaps_rank_file_physical 1 --bind-to
hwthread --report-bindings true
[n0:38430] MCW rank 0 bound to socket 0[core 0[hwt 0]]:
[B./../../../../..][../../../../../..]
[n0:38430] MCW rank 1 bound to socket 0[core 0[hwt 1]]:
[.B/../../../../..][../../../../../..]
[n0:38430] MCW rank 2 bound to socket 1[core 6[hwt 0]]:
[../../../../../..][B./../../../../..]
[n0:38430] MCW rank 3 bound to socket 1[core 6[hwt 1]]:
[../../../../../..][.B/../../../../..]
Cheers,
Gilles
On 8/16/2016 12:40 PM, Ben Menadue wrote:
Hi,
I'm trying to map by hwthread but only partially populating sockets. For
example, I'm looking to create arrangements like this:
Rank 0: [B./../../../../../../..][../../../../../../../..]
Rank 1: [.B/../../../../../../..][../../../../../../../..]
Rank 2: [../../../../../../../..][B./../../../../../../..]
Rank 3: [../../../../../../../..][.B/../../../../../../..]
Problem is, I can't work out a --map-by that will give this to me, short of
binding two to each core and using a wrapper around the binary to further
bind each to its hwthread. I thought of using a rankfile, but can't work out
how to specify hwthreads in that.
Any suggestions? Or is such a wrapper the only way to do it for now?
Yes, it's very strange, and almost certainly won't perform very well, but
I'd like to include it for completeness - I'm comparing several systems,
including KNL (where SMT is important to get good performance in most
cases).
Thanks,
Ben
_______________________________________________
users mailing list
users@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/users
_______________________________________________
users mailing list
users@lists.open-mpi.org
https://rfd.newmexicoconsortium.org/mailman/listinfo/users