Difference between revisions of "OpenMPI"

From HCL
Jump to: navigation, search
(Debugging applications on Multiprocessors/Multicores)
(Debugging applications on Multiprocessors/Multicores)
Line 14: Line 14:
 
== Debugging applications on Multiprocessors/Multicores ==
 
== Debugging applications on Multiprocessors/Multicores ==
  
* [http://www.open-mpi.org/faq/?category=debugging#serial-debuggers Serial debugger (eg:gdb)]
+
* [http://www.open-mpi.org/faq/?category=debugging#serial-debuggers Serial Debugger (Gdb)]
 
** 1. Attach to individual MPI processes after they are running.<br />  For example, launch your MPI application as normal with mpirun. Then login to the node(s) where your application is running and use the --pid option to gdb to attach to your application.
 
** 1. Attach to individual MPI processes after they are running.<br />  For example, launch your MPI application as normal with mpirun. Then login to the node(s) where your application is running and use the --pid option to gdb to attach to your application.
** 2. Use mpirun to launch xterms (or equivalent) with serial debuggers.<br />  shell$ mpirun -np 4 xterm -e gdb my_mpi_application
+
** 2. Use mpirun to launch xterms (or equivalent) with serial debuggers.
 +
      shell$ mpirun -np 4 xterm -e gdb my_mpi_application
 +
 
 +
* [http://www.open-mpi.org/faq/?category=debugging#parallel-debuggers Parallel Debugers]
 +
** [http://www.open-mpi.org/faq/?category=running#run-with-tv TotalView]
 +
** [http://www.open-mpi.org/faq/?category=running#run-with-ddt DDT]

Revision as of 10:14, 12 January 2011

http://www.open-mpi.org/faq/

MCA parameter files

If you want to permanently use some MCA parameter settings, you can create a file $HOME/.openmpi/mca-params.conf, e.g.:

cat $HOME/.openmpi/mca-params.conf
btl_tcp_if_exclude = lo,eth1

Running applications on Multiprocessors/Multicores

Process can be bound to specific sockets and cores on nodes by choosing right options of mpirun.

Debugging applications on Multiprocessors/Multicores

  • Serial Debugger (Gdb)
    • 1. Attach to individual MPI processes after they are running.
      For example, launch your MPI application as normal with mpirun. Then login to the node(s) where your application is running and use the --pid option to gdb to attach to your application.
    • 2. Use mpirun to launch xterms (or equivalent) with serial debuggers.
     shell$ mpirun -np 4 xterm -e gdb my_mpi_application