MPI_Win_allocate () не возвращает

Когда я запускаю следующий код с mpirun -n 2 ./out это работает без проблем, но с mpirun -n 3 ./out MPI_Win_allocate() не возвращается. Я проверил это, печатая на экран до и после MPI_Win_allocate(), Кроме того, если я закомментирую MPI_Bcast() код работает. В чем проблема?

РЕДАКТИРОВАТЬ: Изменены функции повышения до стандартных, чтобы упростить проблему.

#include <mpi.h>

int main()
{
MPI_Init(NULL, NULL);

int nmesh;
MPI_Bcast(&nmesh, 1, MPI_INT, 0, MPI_COMM_WORLD);

MPI_Win win;
int* narrival;
MPI_Win_allocate(1*sizeof(int), sizeof(int), MPI_INFO_NULL, MPI_COMM_WORLD, &narrival, &win);
MPI_Win_free(&win);

MPI_Finalize();

return 0;
}

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]