Обратите внимание, что функция, существующая с MPI 1.x дней, заключается в том, что вы можете установить обработчик ошибок: например,
http://www.mpi -forum.org / docs / mpi-11-html / node148.html
Как отмечает Марк, большинство из нас просто используют MPI_ERRORS_ARE_FATAL (это значение по умолчанию), потому что наши алгоритмы очень тяжелые и не могут быть легко восстановлены (кроме как с помощью контрольных точек,что большинство из нас делает в любом случае).
Но это не обязательно так;Вы можете заставить функции MPI возвращать сообщения об ошибках и пытаться восстановить их как можно лучше.
Существует несколько отказоустойчивых пакетов MPI - http://icl.cs.utk.edu/ftmpi/ (что является старыми только реализует функциональность MPI 1.2).Совсем недавно http://osl.iu.edu/research/ft/cifts/ - это один из подходов, который был добавлен в OpenMPI в качестве отдельного проекта, и есть также пакет контрольной точки / перезапуска на уровне ОС, BLCR, который может представлять интерес.
На форуме MPI-3 обсуждается стандартный отказоустойчивый API в MPI, поэтому скорость таких проектов ускоряется.