MPI_Bcast иногда висит - PullRequest
       34

MPI_Bcast иногда висит

1 голос
/ 27 марта 2020

У меня есть следующий блок кода, который запускает MPI_Bcat. Странно, иногда этот процесс иногда зависает, когда я запускаю его, но не другие. Отладочная информация показывает, что все процессы достигли строки 129 (все процессы с 0 по n-1 напечатаны в bcast). Но они так и не достигли строки 132.

128         if (n_procs > 1) {
129             debug("[%d] bcast start\n", dgrid->rank);
130             //  broadcast to other workers to stop their process
131             MPI_Bcast(finished, 1, MPI_INT, root, MPI_COMM_WORLD);
132             debug("[%d] bcast end\n", dgrid->rank);
133         }

Что может быть причиной этой проблемы? Я пытался найти решение, но все кажется другим. Может ли это быть проблемой системного уровня или это просто мой код?

Процесс root (0) часто является последним процессом, который достигает строки 129, судя по выводу терминала.

Спасибо заранее.

...