Я хочу получить сообщение об ошибке и нормально выйти, если -np
установлен в ноль в командной строке. Есть какой-либо способ сделать это? Такое впечатление, что программа перестает работать, даже не запустившись.
mpiexec: запуск программы без процессов
Ответы (1)
Нулевое количество процессов действительно означает, что он вообще не запускает никаких процессов. Как вы можете получить какой-либо результат, если у вас нет процесса для его создания? Нет процесса - это просто нет процесса. Ничего не работает. Например, если вы вообще не запускаете mpiexec.
Я не понимаю, какое сообщение об ошибке вы ожидаете увидеть. Возможно, вы действительно хотите 1 процесс?
Я только что протестировал mpiexec, поставляемый с OpenMPI на моем компьютере, и он запускает 1 процесс, если вы запрашиваете -np 0
. Другие реализации могут вести себя иначе.
person
Vladimir F
schedule
25.09.2015
Я просто хотел это ради того, чтобы быть удобным для пользователя. Я не хочу, чтобы другие прослушивали это намеренно. С нулевыми процессами он блокирует командную строку, и единственный вариант, который у меня есть, это убить его. Я использую обычный mpi. Редактировать: с контролем c я получаю сообщение: (mpiexec 440): mpiexec: не удалось получить носок от менеджера
- person Manos Ntoulias; 26.09.2015
Вы должны действительно описать, какую библиотеку MPI вы используете, какую программу вы пытаетесь запустить и что именно происходит и что вы хотите, чтобы произошло. Например, вы используете MPICH или OpenMPI или что-то еще? На какой операционной системе? Даже если вы заставите его делать то, что вы хотите в одном случае, он будет непредсказуемым в другом.
- person Vladimir F; 26.09.2015
Ничего себе, mpich ужасно обрабатывает '0', с кучей ошибок Hydra и segfault. я открою билет
- person Rob Latham; 01.10.2015