Я использую MPICH2. Когда я запускаю процессы с помощью mpiexec, сбой одного процесса приведет к сбою всех других процессов. Как этого избежать?MPICH2, отказ одного процесса приведет к сбою всех других процессов.
3
A
ответ
4
В MPICH имеется флаг -disable-auto-cleanup
, который предотвратит автоматическую очистку всех процессов при сбое одного процесса.
Однако MPI сам по себе не поддерживает поддержку отказоустойчивости, и это то, что Рабочая группа по отказоустойчивости работает над добавлением в будущую версию стандарта MPI.
В настоящем время, лучший, что вы можете сделать, это изменить по умолчанию MPI обработчика ошибки от MPI_ERRORS_ARE_FATAL
, что вызывает все процессы, чтобы прервать, к чему-то другому, как MPI_ERRORS_RETURN
который будет возвращать код ошибки приложения и дайте ему сделать что-то остальное. Тем не менее, вы вряд ли сможете общаться после сбоя, особенно если вы пытаетесь использовать коллективную связь.
Смежные вопросы
- 1. Список всех дочерних процессов процесса
- 2. Использование одного процесса для сигнализации нескольких других процессов «одновременно»
- 3. Запретить доступ к файлу для всех других процессов?
- 4. Несколько дочерних процессов из одного родительского процесса
- 5. Объявление массива как статического не приведет к сбою программы
- 6. Почему этот макрос определяет, что goto приведет к сбою программы?
- 7. Настройка log4j.rootLogger = OFF в конфигурации одного класса, приведет к сбою журнала в другом классе
- 8. MPICH2: API для имени компьютера процесса получения
- 9. В таблице страниц содержится запись для всех страниц одного процесса или страниц всех процессов в ОЗУ
- 10. Доступ к элементам из других процессов
- 11. Имеют ли потоки доступ к стеку других потоков одного процесса?
- 12. приведет ли этот код к успешному созданию двух дочерних процессов из родительских процессов?
- 13. Как можно получить доступ к памяти других процессов?
- 14. C: Прекращение процесса улова для других системных процессов
- 15. Отказ подписывать документ удаляет его для других
- 16. Передача аргументов демона из других процессов
- 17. Работает ли база данных операций SQLite только для других процессов или для потоков одного процесса?
- 18. монитора ребенок процессов процесса
- 19. Почему C# ProcessStartInfoRedirectStandardOutput приводит к сбою процесса xcopy.
- 20. Что произойдет, если я удалю разделяемую память других процессов?
- 21. Замена отклоненного приложения iphone приведет к запуску нового процесса обзора?
- 22. Разоблачение функции других процессов
- 23. Редактирование памяти других процессов
- 24. Исключения NHibernate Нарушение других процессов
- 25. R конвертировать данные в коэффициент приведет к повреждению всех других столбцов data.frame
- 26. Поиск вершины, удаление которой приведет к отключению двух других
- 27. множественный отказ процесса - поиск последней функции
- 28. Дождитесь завершения всех дочерних процессов запущенного процесса C#
- 29. Python 2.7 - Linux - Бесконечный цикл, отказ от процессора для других потоков/процессов
- 30. Как GetGuiResources для всех системных процессов?
Не избегайте этого! Это желаемое поведение в 99,9% случаев. Зачем вам иначе? – Gilles
Мы хотим реализовать восстановление после сбоя: один сбой процесса, который мы просто перезапускаем. – dodolong
Ну, вы не можете, так как MPI не поддерживает его. Отказоустойчивость была темой исследований в сообществе MPI на протяжении десятилетий и, как ожидается, приземлится в MPI 3.0, чего нет. Возможно, для MPI 4.0 ... – Gilles