다음을 통해 공유


MPI_Waitsome 함수

몇 가지 미해결 작업 중 일부를 완료합니다.

구문

int MPIAPI MPI_Waitsome(
        int                                         incount,
        _Inout_count_(incount) MPI_Request          array_of_requests,
  _Out_ int                                         *outcount,
        _Out_cap_post_count_(incount,*outcount) int *array_of_indices,
        _Out_cap_post_count_(incount,*outcount)     *array_of_statuses
);

매개 변수

  • incount
    array_of_requests 매개 변수의 항목 수입니다.

  • array_of_requests
    미해결 작업의 MPI_Request 핸들 배열입니다.

  • outcount [out]
    완료된 요청 수입니다.

  • array_of_indices
    완료된 작업의 array_of_requests 인덱스 배열입니다. array_of_requests C에서 0부터, Fortran의 0에서 인덱싱됩니다.

  • array_of_statuses
    완료되거나 MPI_STATUSES_IGNORE 작업에 대한 상태 개체의 배열입니다.

반환 값

성공에 대한 MPI_SUCCESS 반환합니다. 그렇지 않으면 반환 값이 오류 코드입니다.

Fortran에서 반환 값은 IERROR 매개 변수에 저장됩니다.

Fortran

    MPI_WAITSOME(INCOUNT, ARRAY_OF_REQUESTS, OUTCOUNT, ARRAY_OF_INDICES, ARRAY_OF_STATUSES, IERROR)
        INTEGER INCOUNT, ARRAY_OF_REQUESTS(*), OUTCOUNT, ARRAY_OF_INDICES(*),
        ARRAY_OF_STATUSES(MPI_STATUS_SIZE,*), IERROR

설명

인덱스의 배열은 범위 0에서 incount까지입니다. C의 경우 1, 포트란의 경우 1부터 인카운트까지입니다.

NULL 요청은 무시됩니다. 모든 요청이 NULL이면 루틴은 outcountMPI_UNDEFINED 설정된 상태에서 를 반환합니다.

array_of_requests 요청 핸들을 두 번 이상 나열할 수 있지만 이러한 작업은 잘못된 것으로 간주되어 프로그램이 실수로 종료되거나 잘못된 결과를 생성할 수 있습니다.

MPI_Waitsome Unix 'select' 또는 'poll' 호출과 매우 유사한 인터페이스를 제공하며, 높은 수준의 구현에서는 MPI_Waitsome 호출될 때 완료된 모든 요청을 나타냅니다. 그러나 MPI_Waitsome 하나 이상의 요청이 완료되었음을 보장합니다. 완료된 모든 요청이 반환되거나 array_of_indices 항목의 순서가 증가한다는 보장은 없습니다. 또한 MPI_Waitsome 실행되는 동안 완료된 요청은 메시지 완료 시기에 따라 반환되거나 반환되지 않을 수 있습니다.

요구 사항

제품

HPC Pack 2012 MS-MPI 재배포 가능 패키지, HPC Pack 2008 R2 MS-MPI 재배포 가능 패키지, HPC Pack 2008 MS-MPI 재배포 가능 패키지 또는 HPC Pack 2008 클라이언트 유틸리티

헤더

Mpi.h; Mpif.h

라이브러리

Msmpi.lib

DLL

Msmpi.dll

추가 정보

MPI 지점 및 지점 함수