그럼, 내가MPI_Recv - 카운트를 결정하는 방법?
for(temp=0; temp<20; temp++)
i[temp] = temp;
MPI_Send(i, 15, MPI_INT, 1, 1, MPI_COMM_WORLD);
이 나는 순위 0 2 개 프로세스, 순위 0 순위 과정에서 1
int i[20], j[20], temp, size;
과 MPI 프로그램이 있다고 가정하자의 다음 순위 1 과정을 가정 해 봅시다 않습니다
// At this point, size is declared, but not assigned any value.
MPI_Recv(j,size, MPI_INT, 0, 1, MPI_COMM_WORLD):
cout << "I have received " << size << " elements" ;
제 질문은 위의 문장에서 "크기"를 선언해야합니까? 또는 MPI_Recv가 15 개 요소를 받고 있음을 어떻게 든 "알고"있으며 자동으로 크기를 15로 설정합니까? 크기가 정의되어 있지 않으면 코드는 어떻게됩니까?
기본적으로 내 질문은 다른 순위의 프로세서에 다른 수의 요소를 보내고 모든 메시지의 순위는 0입니다. 먼저 크기를 보내야하는지 알기를 원합니다. 그 많은 요소를 받거나 배열을 보내면 프로세스가 자동으로 크기를 선택합니다. MPI_Recv
에 대한 문서에서