Search code examples
tcpmpimvapich2

How to tell MVAPICH2 to use tcp?


My application produces wrong results, if I use infiniband for the communication between two nodes (using MVAPICH2 as the MPI-implementation).

OpenMPI offers the possibility to specify the network with

$ mpirun --mca btl tcp,self ...

is there anything similar for MVAPICH2?


Solution

  • The MVAPICH2 documentation has a spot directly for this. Quoting from their page:

    4.9 Configuring a build for TCP/IP-Nemesis

    The use of TCP/IP with Nemesis channel requires the following configuration:

    $ ./configure --with-device=ch3:nemesis
    

    Both static and shared libraries are built by default. In order to build with static libraries only, configure as follows:

    $ ./configure --with-device=ch3:nemesis --disable-shared
    

    To enable use of the TotalView debugger, the library needs to be configured in the following manner:

    $ ./configure --with-device=ch3:nemesis  --enable-g=dbg --enable-debuginfo
    

    Additional instructions for configuring with TCP/IP-Nemesis can be found in the MPICH documentation available at: http://www.mcs.anl.gov/research/projects/mpich2/documentation/index.php?s=docs