Open MPI considers hosts differently than network links.
So you should only list the actual hostname in the hostfile, with
slots equal to the number of processors (4 in your case, I think?).
Once the MPI processes are launched, they each look around on the host
that they're running and find network paths to each of their peers.
If they are multiple paths between pairs of peers, Open MPI will round-
robin stripe messages across each of the links. We don't really have
an easy setting for each peer pair only using 1 link. Indeed, since
connectivity is bidirectional, the traffic patterns become less
obvious if you want MPI_COMM_WORLD rank X to only use link Y -- what
does that mean to the other 4 MPI processes on the other host (with
whom you have assumedly assigned their own individual links as well)?
On May 26, 2009, at 12:24 AM, shan axida wrote:
> Hi everyone,
> I want to ask how to use multiple links (multiple NICs) with OpenMPI.
> For example, how can I assign a link to each process, if there are 4
> and 4 processors on each node in our cluster?
> Is this a correct way?
> host1-eth0 slots=1
> host1-eth1 slots=1
> host1-eth2 slots=1
> host1-eth3 slots=1
> host2-eth0 slots=1
> host2-eth1 slots=1
> host2-eth2 slots=1
> host2-eth3 slots=1
> ... ...
> ... ...
> host16-eth0 slots=1
> host16-eth1 slots=1
> host16-eth2 slots=1
> host16-eth3 slots=1
> users mailing list