# 12. Debugging Open MPI Parallel Applications

Debugging a serial applications includes solving problems like logic errors, uninitialized variables, storage overlays and timing problems.

Debugging a parallel application can be further complicated by problems that can include additional race conditions and aysynchronous events, as well as understanding execution of multiple application processes running simultaneously.

This section of the documentation describes some techniques that can be useful for parallel debugging. This section also describes some tools that can be useful as well as some Open MPI runtime options that can aid debugging.

- 12.1. Parallel Debugging Tools
- 12.2. Open MPI Runtime Debugging Options
- 12.3. Using Serial Debuggers to Debug Open MPI Applications
- 12.4. Using Parallel Debuggers to Debug Open MPI Applications
- 12.5. Application Output Lost with Abnormal Termination
- 12.6. Using Memchecker
- 12.7. Using Valgrind to Find Open MPI Application Errors
- 12.8. Using MPIR-based tools with Open MPI