This video demonstrates how to debug an MPI program (written in C++ using MPL) with Valgrind, TMPI, and GDB. It's assumed that you're generally familiar with debugging C++.
See https://sites.cs.ucsb.edu/~gilbert/cs... for an explanation of how the halo exchange works and why it's necessary.
General C++ debugging: https://byuhpc.github.io/sci-comp-cou...
MPI: https://byuhpc.github.io/sci-comp-cou...
MPL: https://github.com/rabauke/mpl
Valgrind: https://valgrind.org/docs/manual/quic...
GDB: https://www.bitdegree.org/learn/gdb-d...
TMPI: https://github.com/Azrael3000/tmpi