我寫了簡單的程序,與MPI和它調用MPI_Wait
後崩潰:MPI_WAIT崩潰簡單的程序
MPI_Init(&argc, &argv);
MPI_Comm_size(MPI_COMM_WORLD, &size);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
MPI_Request request;
double test = 0;
if (rank == 0) {
MPI_Isend(&test, 1, MPI_DOUBLE, 1, 2, MPI_COMM_WORLD, &request);
} else {
MPI_Irecv(&test, 1, MPI_DOUBLE, 0, 2, MPI_COMM_WORLD, &request);
MPI_Wait(&request, NULL);
}
我忽略了代碼可多次,但不明白爲什麼程序崩潰。
我正在使用Visual Studio 2010.
[什麼是您的調試器告訴你(http://i.stack.imgur.com/bXdkf.jpg)? – wally
@flatmouse「test.exe觸發了一個斷點」。 'Kernelbase.dll'中的Stackstrace在未知過程中結束。 –
試着將'MPI_Status'作爲非空值 – Ajay