Quantcast
Channel: Clusters and HPC Technology
Viewing all articles
Browse latest Browse all 927

Mapping ranks consecutively on nodes

$
0
0

Hi,

   Running Intel MPI 4.1.3

   Contrary to the user guide, which states for the default round-robin mapping,

To change this default behavior, set the number of processes per host by using the -perhost option, and set the total number of processes by using the -n option. See Local Options for details. The first <# of processes> indicated by the -perhost option is executed on the first host; the next <# of processes> is executed on the next host, and so on.

, when I try to run on 2 nodes and I_MPI_DEBUG=4, I see

[cchang@n0290]$ mpirun -n 4 -perhost 2 ./hello_MPIMP_multinode
[0] MPI startup(): Rank    Pid      Node name  Pin cpu
[0] MPI startup(): 0       54622    n0290      {0,1,2,3,4,5,6,7,8,9,10,11}
[0] MPI startup(): 1       53310    n0289      {0,1,2,3,4,5,6,7,8,9,10,11}
[0] MPI startup(): 2       54623    n0290      {12,13,14,15,16,17,18,19,20,21,22,23}
[0] MPI startup(): 3       53311    n0289      {12,13,14,15,16,17,18,19,20,21,22,23}
Hello world: rank 0 of 4, thread 0 of 1 on n0290
Hello world: rank 2 of 4, thread 0 of 1 on n0290
Hello world: rank 1 of 4, thread 0 of 1 on n0289
Hello world: rank 3 of 4, thread 0 of 1 on n0289

Both the I_MPI_DEBUG and the actual test program output confirm that round-robin scheduling is being done.

I can't seem to change this with any combination of -perhost #, or -grr #. I can create a machinefile that specifies the number of ranks per node and it will map as desired, but I'm guessing I should be able to do this simply from the mpirun command. How is this done?

Thanks; Chris


Viewing all articles
Browse latest Browse all 927

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>