Open MPI logo

Getting Help

  |   Home   |   Support   |   FAQ   |  

If you have a bug report and/or patch for Open MPI, you should probably subscribe to the Open MPI developer's list and post it there. Open MPI uses Trac for its bug tracking (see the "Bug Tracking" link in the left-hand navigation), but only developers are allowed to open new tickets (mainly as an artifact of our SVN+Trac authentication system; it's never been a big enough issue for us to figure out how to issue non-developer/Trac-only accounts).


If you have a problem or question, it is highly recommended that you execute the following steps in order. Many people have similar problems with configuration and initial setup of Open MPI -- it is possible that your question has already been answered.

  1. Check the Open MPI FAQ. We generally take the approach that if the same question comes up multiple times, we put it on the FAQ.

  2. Check the mailing list archives. Use the "search" features to check old posts and see if others have asked the same question and had it answered.

  3. If you do not find a solution to your problem in the above resources, send the following information to the Open MPI user's mailing list (see the mailing lists page for more information) -- please compress the files (e.g., with bzip2) before sending them!

    Note: The mailing lists have a 250kb limit on messages to prevent from sending enormous, uncompressed datatsets. If your attachment is larger than this, please post it on the web somewhere for people to download. Thanks.

    • Remember: the more information you include in your report, the better. E-mails simply stating, "It doesn't work!" are not helpful; we need to know as much information about your environment as possible in order to provide meaningful assistance. The best way to get help is to provide a "recipie" for reproducing the problem. This will allow the Open MPI developers to see the error for themselves, and therefore be able to fix it.
    • Use a descriptive "subject" line in your email! Some Open MPI question-answering people decide whether to read a mail based on its subject line (e.g., to see if it's a question that they can answer). So please plese please use a good subject line that succinctly describes your problem.
    • For run-time problems:
      1. Check the FAQ first. Really. This can save you a lot of time; many common problems and solutions are listed there.
      2. The version of Open MPI that you're using.
      3. The config.log file from the top-level Open MPI directory, if available (please compress, e.g., with bzip2!).
      4. The output of the "ompi_info --all" command from the node where you're invoking mpirun.
      5. If you have questions or problems about process affinity / binding, send the output from running the "lstopo -v" command from a recent version of hwloc. The detailed text output is preferable to a graphical output.
      6. If running on more than one node -- especially if you're having problems launching Open MPI processes -- also include the output of the "ompi_info -v ompi full --parsable" command from each node on which you're trying to run.

        1. If you are able to launch MPI processes, you can use mpirun to gather this information. For example, if the file my_hostfile.txt contains the hostnames of the machines on which you are trying to run Open MPI processes:

          shell$ mpirun --bynode --hostfile my_hostfile.txt --tag-output ompi_info -v ompi full --parsable

        2. If you cannot launch MPI processes, use some other mechanism -- such as ssh (or rsh) -- to gather this information. For example, if the file my_hostfile.txt contains the hostnames of the machines on which you are trying to run Open MPI processes:

          C-style shell (e.g., csh) Bourne-style shell (e.g., sh, bash)

          shell% foreach h (`cat my_hostfile.txt`)
          foreach? echo === $h
          foreach? ssh $h ompi_info -v ompi full --parsable
          foreach? end

          shell$ for h in `cat my_hostfile.txt`
          > do
          > echo === $h
          > ssh $h ompi_info -v ompi full --parsable
          > done

      7. A detailed description of what is failing. The more details that you provide, the better. E-mails saying "My application doesn't work!" will inevitably be answered with requests for more information about exactly what doesn't work; so please include as much information detailed in your initial e-mail as possible. We strongly recommend that you include the following information:
        • The exact command used to run your application.
        • Any relevant MCA parameters that were set (or unset) when you ran (from either the command line, environment, parameter file, etc.).
        • The value of the PATH and LD_LIBRARY_PATH environment variables (did you set them correctly to point to all relevant executables, the Open MPI libraries, and any required support libraries, such as libraries required for high-speed networks such as InfiniBand and/or Myrinet?).
      8. Please include information about your network:
        • For Myrinet-based networks, include the information listed in this FAQ entry.
        • For InfiniBand-based networks, include the information listed in this FAQ entry.
        • For TCP-based networks, include the output of the ifconfig command on all relevant nodes. Note that some Linux distributions do not put ifconfig in the default PATH of normal users; look for it in /sbin/ifconfig or /usr/sbin/ifconfig.

    • For compile problems:
      1. The version of Open MPI that you're using.
      2. All output (both compilation output and run time output, including all error messages)
      3. Output from when you ran "./configure" to configure Open MPI (please compress, e.g., with bzip2!)
      4. The config.log file from the top-level Open MPI directory (please compress, e.g., with bzip2!)
      5. Output from when you ran "make V=1" to build Open MPI (please compress, e.g., with bzip2!)
      6. Output from when you ran "make install" to install Open MPI (please compress, e.g., with bzip2!)

    To capture the output of the configure and make steps you can use the script command or the following technique if using a csh style shell:

    shell% ./configure {options} |& tee config.out
    shell% make all              |& tee make.out
    shell% make install          |& tee make-install.out

    or if using a Bourne style shell:

    shell$ ./configure {options} 2>&1 | tee config.out
    shell$ make all 2>&1              | tee make.out
    shell$ make install 2>&1          | tee make-install.out

    To compress all the files listed above, we recommend first redirecting the files listed above to a unique directory:

    C-style shell (e.g., csh) Bourne-style shell (e.g., sh, bash)

    shell% mkdir $HOME/ompi-output
    shell% cd /path/to/ompi-1.8.2
    shell% ./configure |& tee $HOME/ompi-output/configure.out
    #...lots of output...
    shell% cp config.log opal/include/opal_config.h $HOME/ompi-output
    shell% make all |& tee $HOME/ompi-output/make.out
    #...lots of output...
    shell% make install |& tee $HOME/ompi-output/make-install.out
    #...lots of output...

    shell$ mkdir $HOME/ompi-output
    shell$ cd /path/to/ompi-1.8.2
    shell$ ./configure 2>&1 | tee $HOME/ompi-output/configure.out
    #...lots of output...
    shell$ cp config.log opal/include/opal_config.h $HOME/ompi-output
    shell$ make all 2>&1 | tee $HOME/ompi-output/make.out
    #...lots of output...
    shell$ make install 2>&1 | tee $HOME/ompi-output/make-install.out
    #...lots of output...

    Then create a compressed tarball of that directory to send to the mailing list. If you have GNU Tar, you can do this in one step. If you do not have GNU Tar, you might have to use two steps:

    GNU Tar Non-GNU Tar

    shell% cd $HOME
    shell% tar jcvf ompi-output.tar.bz2 ompi-output
    #...lots of output...
    shell% 

    shell% cd $HOME
    shell% tar cvf ompi-output.tar ompi-output
    #...lots of output...
    shell% bzip2 ompi-output.tar
    shell% 

    Then send the resulting ompi-output.tar.bz2 file to the mailing list.

    NOTE: The mailing lists do have size limits on attachments. If your post is rejected because the attachment is too large, try compressing at a higher level. If that does not work, then try posting your file on the internet somewhere and sending a link to it on the list.

Make today an Open MPI day!