MPI_Improbe 함수
비 차단 방식으로 메시지를 검색합니다. 중간 프로브/수신 작업에 관계없이 일치하는 특정 메시지를 수신하는 메커니즘을 제공합니다. 일치하는 메시지는 수신 큐에서 큐에서 해제되므로 애플리케이션은 비차단 일치 프로브 작업에서 반환된 정보에 따라 메시지를 받는 방법을 결정할 수 있습니다. 일치된 메시지는 MPI_Mrecv 또는 MPI_Imrecv 함수를 사용하여 수신됩니다.
구문
int MPIAPI MPI_Improbe(
_In_ int source,
_In_ int tag,
_In_ MPI_Comm comm,
_Out_ Int *flag,
_Out_ MPI_Message *message,
_Out_ MPI_Status *status
);
매개 변수
source [in]
원본 순위 또는 MPI_ANY_SOURCE.태그 [in]
메시지 태그 또는 MPI_ANY_TAG.comm [in]
MPI 통신기 핸들입니다.플래그 [out]
반환 시 지정된 원본, 태그 및 명령 이 일치하는지 여부를 나타내는 정수에 대한 포인터를 포함합니다. 0이 아닌 값은 매개 변수가 일치했음을 나타냅니다.메시지 [out]
반환할 때 일치하는 메시지에 대한 포인터를 포함합니다.상태 [out]
반환할 때 메시지에 대한 정보가 저장되는 MPI_Status 구조체에 대한 포인터를 포함합니다.
반환 값
성공에 대한 MPI_SUCCESS 반환합니다. 그렇지 않으면 반환 값이 오류 코드입니다.
Fortran에서 반환 값은 IERROR 매개 변수에 저장됩니다.
Fortran
MPI_IMPROBE(SOURCE, TAG, COMM, FLAG, MESSAGE, STATUS, IERROR)
INTEGER SOURCE, TAG, COMM, FLAG, MESSAGE, STATUS(MPI_STATUS_SIZE), IERROR
설명
이 함수는 수신할 수 있고 인수 원본, 태그 및 comm에서 지정한 패턴과 일치하는 메시지가 있는 경우플래그 true를 반환 = 합니다. 호출은 프로그램의 동일한 지점에서 실행된 MPI_Recv 대한 호출에서 받은 것과 동일한 메시지와 일치하며 MPI_Recv 반환된 것과 동일한 값을 상태 반환합니다. 또한 메시지에서 일치하는 메시지에 대한 핸들을 반환합니다. 그렇지 않으면 호출은 플래그 = false를 반환하고 상태 및 메시지를 정의되지 않은 상태로 둡니다.
요구 사항
제품 |
Microsoft MPI v6 |
헤더 |
Mpi.h; Mpif.h |
라이브러리 |
Msmpi.lib |
DLL |
Msmpi.dll |