ms mpi error: невозможно выделить блок запуска

Я создал простую консольную программу в VS 2015, используя MS MPI.

#include <stdio.h>
#include <mpi.h>
#include <stdlib.h>int main(int argc, char **argv)
{

int rank=0, size=0;

MPI_Init(&argc, &argv); /* starts MPI */
MPI_Comm_rank(MPI_COMM_WORLD, &rank);   /* get current process id */
MPI_Comm_size(MPI_COMM_WORLD, &size);
if (rank == 0)
{
char helloStr[] = "Hello World";
//  MPI_Send(helloStr, _countof(helloStr), MPI_CHAR, 1, 0, MPI_COMM_WORLD);
}
else if (rank == 1)
{
char helloStr[12];
MPI_Recv(helloStr, _countof(helloStr), MPI_CHAR, 0, 0, MPI_COMM_WORLD, MPI_STATUS_IGNORE);
printf("Rank 1 received string %s from Rank 0\n", helloStr);
}
printf("hello from proccess rank %d from size %d\n",rank,size);
MPI_Finalize();
return 0;
}

Эта программа компилируется и выполняется. Но если использовать> mpiexec -n 2 myprog.exe, я получаю сообщение об ошибке: невозможно выделить блок запуска.

4

Решение

Поскольку вы используете VS2015, я полагаю, причина в том, что ваше имя пользователя содержит символы не ASCII.

Попробуйте запустить mpiexec по пути, который содержит только символы ASCII.

2

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

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

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