У меня есть программа, которая использует mpi.Для отладки я могу использовать mpirun -np 2 xterm -e gdb myprog
.
Однако xterm на моей машине глючит.Я хочу попробовать gnome-терминал, но я не знаю, что печатать.Я пробовал:
1) mpirun -np 2 gnome-terminal -- gdb myprog
2) mpirun -np 2 gnome-terminal -- "gdb myprog"
3) mpirun -np 2 gnome-terminal -- bash -c "gdb myprog"
4) mpirun -np 2 gnome-terminal -- bash -c "gdb myprog; exec bash"
Но ни один из них, похоже, не работает;1), 3), 4) говорят после run
в GDB:
Похоже, MPI_INIT не удалось по какой-то причине;Ваш параллельный процесс может прерваться.Есть много причин, по которым параллельный процесс может завершиться с ошибкой во время MPI_INIT;некоторые из которых связаны с конфигурацией или проблемами среды.Эта ошибка, кажется, внутренняя ошибка;Вот некоторая дополнительная информация (которая может иметь отношение только к разработчику Open MPI):
ompi_mpi_init: ompi_rte_init failed
-> Returned "(null)" (-43) вместо "Success""(0)
-------------------------------------------------------------------------
*** Произошла ошибка в MPI_Init
*** на коммуникаторе NULL
*** MPI_ERRORS_ARE_FATAL (процессы в этом коммуникаторе теперь прервутся,
*** и, возможно, ваша работа MPI)
[oleg-VirtualBox: 4169] Локальный прерывание до успешного завершения MPI_INIT, но я не могу объединить сообщения об ошибках и не может гарантировать, что все другие процессы были уничтожены!
[Выход из Inferior 1 (процесс 4169) завершилсяс кодом 01]
В 2) терминал говорит:
Произошла ошибка при создании дочернего процесса для этого терминала
Не удалось выполнить дочерний процесспроцесс «приложение gdb» (нет такого файла или каталога)
Кстати, я использую Ubuntu 18.04.02 LTS.
Что я делаю не так?
РЕДАКТИРОВАТЬ: Как выясняется, это не Xterm, который глючит, это GDB с -вариант туи.Если ваша программа что-то печатает, окно GDB начнет отображать вещи неправильно, независимо от того, в каком терминале.